22

I have used many times ab for measuring web performance, hdparm for measuring hard disk performance and netperf for measuring network performance.

But I didn't find any tools to measure cpu performance.

Do you know a tool allowing to measure cpu performance? I am more specifically looking to measure Gflops.

3

3 Answers 3

11

You should take a look at the Wikipedia page on benchmarking, it gives quite a few benchmark tools including the CPU ones that will work on Linux. LinPack is free but a pain to compile. But you can certainly look at NBench and some others in the list.

1
  • NBench is good, but 15 year old code. We need something new. The link is stale BTW. Commented Aug 21, 2019 at 15:58
3
$ date; i=0; while (( i < 1000000 )); do (( i ++ )); done; date
Tue Jul 15 11:26:37 EDT 2014
Tue Jul 15 11:26:43 EDT 2014
$
6
  • 2
    Would that be 43 - 37 = 6 GigaFlops? I fail to see how an integer increment in a shell, relates to floating point performance.
    – Anthon
    Commented Jul 15, 2014 at 16:58
  • The general goal was "measure cpu performance". Later mentions Gflops but I think that's actually a misguided tangent. If Gflops was the true goal then asking about CPU performance was a mistake.
    – JohnMudd
    Commented Jul 16, 2014 at 15:29
  • Quicker way to get to the number you're really after, i.e. seconds that have passed: DATE=$(date +%s); i=0; while (( i < 1000000 )); do (( i ++ )); done; echo $(( $(date +%s)-DATE ))
    – xenithorb
    Commented Mar 7, 2015 at 21:23
  • 1
    Good point, I should have updated this earlier. Here's my current approach: time ( i=0; while (( i < 1000000 )); do (( i ++ )); done )
    – JohnMudd
    Commented Mar 9, 2015 at 12:58
  • 1
    This is not 6 gigaflops, this is ~0.17 megabashincrements. And, my macbook owns all: ( i=0 ; while (( i < 1000000 )); do; (( i ++ )); done; ) 1.33s user 0.00s system 99% cpu 1.337 total
    – Steven Lu
    Commented Jan 29, 2016 at 16:39
3

stress-ng is a simple tool that can stress and benchmark the cpus.

For example, tested 1 cpu

stress-ng -c 1 --cpu-ops 5000

stress-ng: info: [20288] defaulting to a 86400 second run per stressor

stress-ng: info: [20288] dispatching hogs: 1 cpu

stress-ng: info: [20288] successful run completed in 13.93s

1
  • I think advising a stress testing program to benchmark is misleading: there is a big difference between benchmarking and stressing a CPU.
    – Paradox
    Commented Mar 10, 2019 at 23:39

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .