Finding performance counters for memory traffic on Haswell
I have found the counters necessary for wspy to get memory reads/writes. It wasn’t completely straightforward, so this documents the steps I took.
Continue reading →I have found the counters necessary for wspy to get memory reads/writes. It wasn’t completely straightforward, so this documents the steps I took.
Continue reading →There was an article posted on phoronix comparing several Linux servers including POWER9, Intel and AMD EPYX. Analysis for this article was minimal; so in this post I dug in a bit more on characteristics of the benchmarks of what … Continue reading →
I kicked off a quick run through >100 Phoronix tests to get a quick profile and overall assessment, results from table below. A few items noted: Some of the tests didn’t run, most likely because they didn’t completely install or … Continue reading →
I have now enhanced wspy to add an option for –diskstats. This option samples, /sys/block/*/stat files to save away disk read and write statistics. The same information is also reported in /proc/diskstats. Another option added at same time is –set-cpumask … Continue reading →
I have enhanced wspy to read performance counters. It now has three different instrumentation methods: Reading ftrace logfiles from kernel subsystem. Currently reads the scheduler events for fork/exec/exit to construct process trees Reading /proc/stat on periodic basis (once per second) … Continue reading →
Two improvements have been added to the wspy program: Added a -z option that creates a zip archive with data files related to the wspy run Added a script that calls gnuplot to plot CPU usage over time. Below is … Continue reading →
Kicked off a run with the Phoronix CPU suite using likwid-perfctr. Benchmarks that were single-threaded were pinned to a single CPU, others to all CPUs. #!/bin/bash likwid-perfctr -a | tail +3 | awk ‘{ print $1 }’ | while read … Continue reading →
As one of the first steps inpriming the pump for Phoronix benchmarks, I ran the wspy program on 21 candidate CPU benchmarks. My goal was to start with a rough characterization, e.g. single-threaded vs. multi-threaded or cpu-bound vs not. #!/bin/bash … Continue reading →
Another useful tool from the likwid performance monitoring and benchmarking suite is likwid-topology. Provides thread (hyperthread), cache (L1, L2, L3) and NUMA (memory) topology together. Output below shows my i7-4770S CPU is a 4-core hyperthreaded processor with a 32KB L1D … Continue reading →
Below is a table that summarizes installation and run status of the Phoronix Test Suite CPU suite. Some background context of how this fits and where I hope to head from here… Where I’d like to head is comparing micro-architectural … Continue reading →