Vmstat: Difference between revisions
From Yocto Project
Jump to navigationJump to search
No edit summary |
|||
(8 intermediate revisions by 2 users not shown) | |||
Line 2: | Line 2: | ||
The following results were obtained based on data collected using <tt>vmstat</tt>, a tool that reports a system's virtual memory statistics. | The following results were obtained based on data collected using <tt>vmstat</tt>, a tool that reports a system's virtual memory statistics. | ||
These plots were produced using the scripts located on the [https://github.com/lsandoval/bb-perf bb-perf] repository. | |||
=System Characteristics= | |||
===Distro=== | |||
CentOS Linux release 7.3.1611 (Core) | |||
Linux version 3.10.0-514.6.1.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-11) (GCC) ) #1 SMP Wed Jan 18 13:06:36 UTC 2017 | |||
===RAM=== | |||
MemTotal: 131814472 kB | |||
MemFree: 70067576 kB | |||
MemAvailable: 127241460 kB | |||
===Processor=== | |||
Architecture: x86_64 | |||
CPU op-mode(s): 32-bit, 64-bit | |||
Byte Order: Little Endian | |||
CPU(s): 48 | |||
On-line CPU(s) list: 0-47 | |||
Thread(s) per core: 2 | |||
Core(s) per socket: 12 | |||
Socket(s): 2 | |||
NUMA node(s): 2 | |||
Vendor ID: GenuineIntel | |||
CPU family: 6 | |||
Model: 62 | |||
Model name: Intel(R) Xeon(R) CPU E5-2697 v2 @ 2.70GHz | |||
Stepping: 4 | |||
CPU MHz: 1263.621 | |||
=Vmstat Output= | =Vmstat Output= | ||
Line 26: | Line 36: | ||
r: The number of runnable processes (running or waiting for run time). | r: The number of runnable processes (running or waiting for run time). | ||
b: The number of processes in uninterruptible sleep. | b: The number of processes in uninterruptible sleep. | ||
[[File:Vmstat-procs-minimal.png | [[File:Vmstat-procs-minimal.png|center|800px]] | ||
== Memory Usage== | == Memory Usage== | ||
Memory | Memory | ||
Line 33: | Line 43: | ||
buff: the amount of memory used as buffers. | buff: the amount of memory used as buffers. | ||
cache: the amount of memory used as cache. | cache: the amount of memory used as cache. | ||
[[File:Vmstat-memory-minimal.png | [[File:Vmstat-memory-minimal.png|center|800px]] | ||
== IO Activity== | == IO Activity== | ||
IO | IO | ||
bi: Blocks received from a block device (blocks/s). | bi: Blocks received from a block device (blocks/s). | ||
bo: Blocks sent to a block device (blocks/s). | bo: Blocks sent to a block device (blocks/s). | ||
[[File:Vmstat-io-minimal.png | [[File:Vmstat-io-minimal.png|center|800px]] | ||
== System Operations== | == System Operations== | ||
System | System | ||
in: The number of interrupts per second, including the clock. | in: The number of interrupts per second, including the clock. | ||
cs: The number of context switches per second. | cs: The number of context switches per second. | ||
[[File:Vmstat-system-minimal.png | [[File:Vmstat-system-minimal.png|center|800px]] | ||
== CPU Resources== | == CPU Resources== | ||
CPU | CPU | ||
Line 52: | Line 62: | ||
wa: Time spent waiting for IO. Prior to Linux 2.5.41, included in idle. | wa: Time spent waiting for IO. Prior to Linux 2.5.41, included in idle. | ||
st: Time stolen from a virtual machine. Prior to Linux 2.6.11, unknown. | st: Time stolen from a virtual machine. Prior to Linux 2.6.11, unknown. | ||
[[File:Vmstat-cpu-minimal.png | [[File:Vmstat-cpu-minimal.png|center|1000px]] | ||
= | =Reproducibility= | ||
The overall behavior of each plot is the same when the monitoring script <tt>(vmstat.sh)</tt> is ran several times in the same machine; however, there are two cases where the plots mismatched with each other. | |||
== | == IO Activity == | ||
=== | The IO Activity plots are rather similar, but the Reading activity has different ranges as it is shown below. | ||
<gallery class="center" widths = "500" heights = "400"> | |||
Image:Vmstat-io-minimal.png|Results obtained running the script for the first time | |||
Image:Vmstat-io-minimal-2.png|Results obtained running the script for the second time | |||
</gallery> | |||
== CPU Resources == | |||
=== | Although the behavior is quite similar between the plots, the CPU waiting time curve has different ranges as it is shown below. | ||
<gallery class="center" widths = "900" heights = "400"> | |||
Image:Vmstat-cpu-minimal.png|Results obtained running the script for the first time | |||
Image:Vmstat-cpu.png|Results obtained running the script for the second time | |||
</gallery> |
Latest revision as of 21:59, 14 March 2017
System monitoring with vmstat
The following results were obtained based on data collected using vmstat, a tool that reports a system's virtual memory statistics.
These plots were produced using the scripts located on the bb-perf repository.
System Characteristics
Distro
CentOS Linux release 7.3.1611 (Core) Linux version 3.10.0-514.6.1.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-11) (GCC) ) #1 SMP Wed Jan 18 13:06:36 UTC 2017
RAM
MemTotal: 131814472 kB MemFree: 70067576 kB MemAvailable: 127241460 kB
Processor
Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 48 On-line CPU(s) list: 0-47 Thread(s) per core: 2 Core(s) per socket: 12 Socket(s): 2 NUMA node(s): 2 Vendor ID: GenuineIntel CPU family: 6 Model: 62 Model name: Intel(R) Xeon(R) CPU E5-2697 v2 @ 2.70GHz Stepping: 4 CPU MHz: 1263.621
Vmstat Output
Processing Jobs
Procs r: The number of runnable processes (running or waiting for run time). b: The number of processes in uninterruptible sleep.
Memory Usage
Memory swpd: the amount of virtual memory used. free: the amount of idle memory. buff: the amount of memory used as buffers. cache: the amount of memory used as cache.
IO Activity
IO bi: Blocks received from a block device (blocks/s). bo: Blocks sent to a block device (blocks/s).
System Operations
System in: The number of interrupts per second, including the clock. cs: The number of context switches per second.
CPU Resources
CPU These are percentages of total CPU time. us: Time spent running non-kernel code. (user time, including nice time) sy: Time spent running kernel code. (system time) id: Time spent idle. Prior to Linux 2.5.41, this includes IO-wait time. wa: Time spent waiting for IO. Prior to Linux 2.5.41, included in idle. st: Time stolen from a virtual machine. Prior to Linux 2.6.11, unknown.
Reproducibility
The overall behavior of each plot is the same when the monitoring script (vmstat.sh) is ran several times in the same machine; however, there are two cases where the plots mismatched with each other.
IO Activity
The IO Activity plots are rather similar, but the Reading activity has different ranges as it is shown below.
CPU Resources
Although the behavior is quite similar between the plots, the CPU waiting time curve has different ranges as it is shown below.