neofetch; # tested on (fancy version of uname -a or hostnamectlsu - root apt update apt install stress-ng # Ctrl+D log off root # what cpu cat /proc/cpuinfo |head processor : 0 vendor_id : AuthenticAMD cpu family : 25 model : 80 model name : AMD Ryzen 5 5600G with Radeon Graphics stepping : 0 microcode : 0xa50000d cpu MHz : 4365.817 cache size : 512 KB physical id : 0 # simple single core cpu + harddisk benchmark wget https://dwaves.de/scripts/benchmark_md5sum.sh.txt vim benchmark_md5sum.sh.txt; # everything ok? mv benchmark_md5sum.sh.txt /scripts/benchmark_md5sum.sh chmod +x /scripts/*.sh # run it time /scripts/benchmark_md5sum.sh # example result === installed cpu: Architecture: aarch64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 2 On-line CPU(s) list: 0,1 Vendor ID: ARM Model name: Neoverse-N1 Model: 1 Thread(s) per core: 1 Core(s) per socket: 2 processor : 0 BogoMIPS : 50.00 Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm lrcpc dcpop asimddp CPU implementer : 0x41 CPU architecture: 8 CPU variant : 0x3 CPU part : 0xd0c CPU revision : 1 processor : 1 === number of cores: 2 === generate 1GB test file 1048576+0 records in 1048576+0 records out 1073741824 bytes (1.1 GB, 1.0 GiB) copied, 1.31136 s, 819 MB/s === display filesize of generated testfile 1.1G md5sumTestFile === running md5sum on testfile (single core) cd573cfaace07e7949bc0c46028904ff md5sumTestFile real 0m3.340s time /scripts/benchmark_md5sum.sh === installed cpu: Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Address sizes: 40 bits physical, 48 bits virtual Byte Order: Little Endian CPU(s): 1 On-line CPU(s) list: 0 Vendor ID: GenuineIntel Model name: Intel Xeon Processor (Skylake, IBRS) CPU family: 6 Model: 85 processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 85 model name : Intel Xeon Processor (Skylake, IBRS) stepping : 4 microcode : 0x1 cpu MHz : 2294.608 cache size : 16384 KB physical id : 0 === number of cores: 1 === generate 1GB test file 1048576+0 records in 1048576+0 records out 1073741824 bytes (1.1 GB, 1.0 GiB) copied, 6.87524 s, 156 MB/s === display filesize of generated testfile 1.1G md5sumTestFile === running md5sum on testfile (single core) cd573cfaace07e7949bc0c46028904ff md5sumTestFile real 0m10.852s time /scripts/benchmark_md5sum.sh === installed cpu: Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Address sizes: 48 bits physical, 48 bits virtual Byte Order: Little Endian CPU(s): 12 On-line CPU(s) list: 0-11 Vendor ID: AuthenticAMD Model name: AMD Ryzen 5 5600G with Radeon Graphics CPU family: 25 Model: 80 processor : 0 vendor_id : AuthenticAMD cpu family : 25 model : 80 model name : AMD Ryzen 5 5600G with Radeon Graphics stepping : 0 microcode : 0xa50000d cpu MHz : 2365.000 cache size : 512 KB physical id : 0 === number of cores: 12 === generate 1GB test file 1048576+0 records in 1048576+0 records out 1073741824 bytes (1.1 GB, 1.0 GiB) copied, 2.79185 s, 385 MB/s === display filesize of generated testfile 1.0G md5sumTestFile === running md5sum on testfile (single core) cd573cfaace07e7949bc0c46028904ff md5sumTestFile real 0m4.252s
# multi core multi thread cpu benchmark with sysbench sysbench cpu --threads=$(nproc) run sysbench 1.0.20 (using system LuaJIT 2.1.1700206165) Running the test with following options: Number of threads: 12 Initializing random number generator from current time Prime numbers limit: 10000 Initializing worker threads... Threads started! CPU speed: events per second: 30520.15 General statistics: total time: 10.0003s total number of events: 305225 Latency (ms): min: 0.20 avg: 0.39 max: 61.56 95th percentile: 0.42 sum: 119107.96 Threads fairness: events (avg/stddev): 25435.4167/1786.69 execution time (avg/stddev): 9.9257/0.01 root@rockpi-e:~# sysbench cpu --threads=$(nproc) run sysbench 1.0.20 (using system LuaJIT 2.1.0-beta3) Running the test with following options: Number of threads: 4 Initializing random number generator from current time Prime numbers limit: 10000 Initializing worker threads... Threads started! CPU speed: events per second: 2534.61 General statistics: total time: 10.0014s total number of events: 25362 Latency (ms): min: 1.56 avg: 1.58 max: 5.59 95th percentile: 1.58 sum: 39987.61 Threads fairness: events (avg/stddev): 6340.5000/9.55 execution time (avg/stddev): 9.9969/0.00
# so this means that multi core wise the AMD Ryzen 5 5600G # is 12.03x faster # than the RK3588 ARMv8 # while (of course) using way more energy 100W vs 5W (20x times less) # alternatively # but man stress-ng says bogomips is no good way of comparing cpu performance? stress-ng --cpu $(nproc) --timeout 30s --metrics-brief --progress --verbose stress-ng: debug: [44575] invoked with 'stress-ng --cpu 12 --timeout 30s --metrics-brief --progress --verbose' by user 1000 'canoodle' stress-ng: debug: [44575] stress-ng 0.18.07 stress-ng: debug: [44575] system: Linux workstation 6.11.5-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.11.5-1 (2024-10-27) x86_64, gcc 14.2.0, glibc 2.40, little endian stress-ng: debug: [44575] RAM total: 30.7G, RAM free: 310.1M, swap free: 33.0G stress-ng: debug: [44575] temporary file path: '/home/canoodle', filesystem type: ext2 (45780604 blocks available) stress-ng: debug: [44575] CPUs have 5 idle states: C0, C1, C2, C3, POLL stress-ng: debug: [44575] 12 processors online, 12 processors configured stress-ng: info: [44575] setting to a 30 secs run per stressor stress-ng: debug: [44575] CPU data cache: L1: 32K, L2: 512K, L3: 16384K stress-ng: debug: [44575] cache allocate: shared cache buffer size: 16384K stress-ng: info: [44575] dispatching hogs: 12 cpu stress-ng: warn: [44575] WARNING! using HPET clocksource (refer to /sys/devices/system/clocksource/clocksource0), this may impact benchmarking performance stress-ng: info: [44575] note: 12 cpus have scaling governors set to powersave and this may impact performance; setting /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor to 'performance' may improve performance stress-ng: debug: [44575] starting stressors stress-ng: debug: [44576] cpu: [44576] started (instance 0 on CPU 5) stress-ng: debug: [44577] cpu: [44577] started (instance 1 on CPU 7) stress-ng: debug: [44578] cpu: [44578] started (instance 2 on CPU 9) stress-ng: debug: [44576] cpu: using method 'all' stress-ng: debug: [44579] cpu: [44579] started (instance 3 on CPU 1) stress-ng: debug: [44580] cpu: [44580] started (instance 4 on CPU 4) stress-ng: debug: [44581] cpu: [44581] started (instance 5 on CPU 5) stress-ng: debug: [44582] cpu: [44582] started (instance 6 on CPU 5) stress-ng: debug: [44583] cpu: [44583] started (instance 7 on CPU 2) stress-ng: debug: [44584] cpu: [44584] started (instance 8 on CPU 2) stress-ng: debug: [44585] cpu: [44585] started (instance 9 on CPU 2) stress-ng: debug: [44586] cpu: [44586] started (instance 10 on CPU 4) stress-ng: debug: [44575] 12 stressors started stress-ng: debug: [44587] cpu: [44587] started (instance 11 on CPU 4) stress-ng: debug: [44576] cpu: [44576] exited (instance 0 on CPU 4) stress-ng: debug: [44577] cpu: [44577] exited (instance 1 on CPU 10) stress-ng: debug: [44579] cpu: [44579] exited (instance 3 on CPU 8) stress-ng: debug: [44575] cpu: [44576] terminated (success) stress-ng: debug: [44575] cpu: [44577] terminated (success) stress-ng: debug: [44580] cpu: [44580] exited (instance 4 on CPU 11) stress-ng: debug: [44578] cpu: [44578] exited (instance 2 on CPU 4) stress-ng: debug: [44582] cpu: [44582] exited (instance 6 on CPU 2) stress-ng: debug: [44575] cpu: [44578] terminated (success) stress-ng: debug: [44575] cpu: [44579] terminated (success) stress-ng: debug: [44575] cpu: [44580] terminated (success) stress-ng: debug: [44585] cpu: [44585] exited (instance 9 on CPU 8) stress-ng: debug: [44584] cpu: [44584] exited (instance 8 on CPU 3) stress-ng: debug: [44581] cpu: [44581] exited (instance 5 on CPU 5) stress-ng: debug: [44575] cpu: [44581] terminated (success) stress-ng: debug: [44575] cpu: [44582] terminated (success) stress-ng: debug: [44587] cpu: [44587] exited (instance 11 on CPU 6) stress-ng: debug: [44583] cpu: [44583] exited (instance 7 on CPU 9) stress-ng: debug: [44575] cpu: [44583] terminated (success) stress-ng: debug: [44575] cpu: [44584] terminated (success) stress-ng: debug: [44575] cpu: [44585] terminated (success) stress-ng: debug: [44586] cpu: [44586] exited (instance 10 on CPU 4) stress-ng: debug: [44575] cpu: [44586] terminated (success) stress-ng: debug: [44575] cpu: [44587] terminated (success) stress-ng: debug: [44575] metrics-check: all stressor metrics validated and sane stress-ng: metrc: [44575] stressor bogo ops real time usr time sys time bogo ops/s bogo ops/s stress-ng: metrc: [44575] (secs) (secs) (secs) (real time) (usr+sys time) stress-ng: metrc: [44575] cpu 468074 30.00 312.91 0.44 15601.94 1493.80 stress-ng: info: [44575] skipped: 0 stress-ng: info: [44575] passed: 12: cpu (12) stress-ng: info: [44575] failed: 0 stress-ng: info: [44575] metrics untrustworthy: 0 stress-ng: info: [44575] successful run completed in 30.01 secs # opengl based gpu benchmark apt install glmark2 time glmark2![]()
=======================================================
glmark2 2023.01
=======================================================
OpenGL Information
GL_VENDOR: AMD
GL_RENDERER: AMD Radeon Graphics (radeonsi, renoir, LLVM 19.1.3, DRM 3.59, 6.11.5-amd64)
GL_VERSION: 4.6 (Compatibility Profile) Mesa 24.2.6-1
Surface Config: buf=32 r=8 g=8 b=8 a=8 depth=24 stencil=0 samples=0
Surface Size: 800x600 windowed
=======================================================
[build] use-vbo=false: FPS: 9804 FrameTime: 0.102 ms
[build] use-vbo=true: FPS: 12362 FrameTime: 0.081 ms
[texture] texture-filter=nearest: FPS: 11958 FrameTime: 0.084 ms
[texture] texture-filter=linear: FPS: 10774 FrameTime: 0.093 ms
[texture] texture-filter=mipmap: FPS: 9741 FrameTime: 0.103 ms
[shading] shading=gouraud: FPS: 9511 FrameTime: 0.105 ms
[shading] shading=blinn-phong-inf: FPS: 10203 FrameTime: 0.098 ms
[shading] shading=phong: FPS: 10151 FrameTime: 0.099 ms
[shading] shading=cel: FPS: 9555 FrameTime: 0.105 ms
[bump] bump-render=high-poly: FPS: 6636 FrameTime: 0.151 ms
[bump] bump-render=normals: FPS: 13882 FrameTime: 0.072 ms
[bump] bump-render=height: FPS: 13550 FrameTime: 0.074 ms
[effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 9596 FrameTime: 0.104 ms
[effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 4934 FrameTime: 0.203 ms
[pulsar] light=false:quads=5:texture=false: FPS: 10737 FrameTime: 0.093 ms
[desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 4764 FrameTime: 0.210 ms
[desktop] effect=shadow:windows=4: FPS: 8909 FrameTime: 0.112 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 2067 FrameTime: 0.484 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 2702 FrameTime: 0.370 ms
[buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 2854 FrameTime: 0.350 ms
[ideas] speed=duration: FPS: 6790 FrameTime: 0.147 ms
[jellyfish] <default>: FPS: 6876 FrameTime: 0.145 ms
[terrain] <default>: FPS: 571 FrameTime: 1.754 ms
[shadow] <default>: FPS: 8958 FrameTime: 0.112 ms
[refract] <default>: FPS: 916 FrameTime: 1.092 ms
[conditionals] fragment-steps=0:vertex-steps=0: FPS: 11876 FrameTime: 0.084 ms
[conditionals] fragment-steps=5:vertex-steps=0: FPS: 11255 FrameTime: 0.089 ms
[conditionals] fragment-steps=0:vertex-steps=5: FPS: 12402 FrameTime: 0.081 ms
[function] fragment-complexity=low:fragment-steps=5: FPS: 11848 FrameTime: 0.084 ms
[function] fragment-complexity=medium:fragment-steps=5: FPS: 11898 FrameTime: 0.084 ms
[loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 11804 FrameTime: 0.085 ms
[loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 11227 FrameTime: 0.089 ms
[loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 11353 FrameTime: 0.088 ms
=======================================================
glmark2 Score: 8861
=======================================================
real 5m30.778s
Links:
howto stress cpu to meassure watts consumption the easy way
GNU Linux – cpu stress test script for power usage measurement
liked this article?
- only together we can create a truly free world
- plz support dwaves to keep it up & running!
- (yes the info on the internet is (mostly) free but beer is still not free (still have to work on that))
- really really hate advertisement
- contribute: whenever a solution was found, blog about it for others to find!
- talk about, recommend & link to this blog and articles
- thanks to all who contribute!

