Nachdem der kleine Raspberry Pi 3 bei mir auf dem Schreibtisch gelandet ist wollen wir ihn mal benchmarken…
Zuerst die Frage, was hat sich geändert?
In Kurzzusammenfassung (da schon hunderte Blogs das genauer geschrieben haben):- Die CPU ist nun ein 64-Bit Cortex-A53 Quadcore mit 1200 MHz
(vorher 32-Bit Cortex-A7 Quadcore mit 900 MHz)
– WLAN und Bluetooth ist nun On-Board
Also zusammengefasst: Viel hat sich nicht geändert, aber die CPU sollte (je nach Anwendung) deutlich schneller sein (so zwischen 20% – 60% gehen aktuell durch die Presse). Da ich zu faul bin meinen Raspberry Pi 1 und Raspberry Pi 2 auszupacken um den mit zu benchmarken, verlinke ich einfach auf einen Benchmark im Internet der das schon getan hat:
http://www.davidhunt.ie/raspberry-pi-2-benchmarked/
Ich werde die Zahlen und Tests von dort übernehmen und mit meinem Pi 3 im Vergleich ausführen.
Fangen wir an mit Test 1, die reine CPU-Leistung beim generieren von Primzahlen:
sysbench --test=cpu --num-threads=4 run Raspberry Pi 1: ~500 Sekunden (aus Grafik entnommen) Raspberry Pi 2: ~80 Sekunden (aus Grafik entnommen) Raspberry Pi 3: 45 Sekunden (gemessen)
Hier nochmal ein alternativer CPU-Test für den Raspberry Pi 2 von hier: https://developer-blog.net/hardware/raspberrypi/raspberry-pi-2-cpu/:
sysbench --test=cpu --num-threads=4 --cpu-max-prime=20000 run Raspberry Pi 2: 195 Sekunden (aus Benchmark von developer-blog.net) Raspberry Pi 3: 119 Sekunden (gemessen)
Und nun der Memory-Test. Wir erwarten hier eigentlich keinen großen Unterschied zwischen Pi2 und Pi3:
sysbench --test=memory --memory-block-size=1M --memory-total-size=10G --num-threads=4 run
Raspberry Pi 1: ~6 Sekunden (aus Grafik entnommen)
Raspberry Pi 2: ~2 Sekunden (aus Grafik entnommen)
Raspberry Pi 3: 0.7 Sekunden (gemessen)
Dieses Ergebnis verwundert mich natürlich nun etwas – scheinbar beschleunigt der neue Core auch den Memory-Transfer?
Die anderen beiden Tests (Storage Read und Write) lasse ich mal weg, denn die sind weniger vom Pi als eher von der SD-Karte abhängig.
Fazit: Das Ding ist deutlich schneller geworden – auch wenn (wie in diesem Fall) ein 32Bit (statt 64Bit) Raspbian drauf läuft.
Die Raspberry Pi Foundation hat sich aber nach Aussage von Eben Upton für den 64Bit ARM-Core nicht unbedingt entschieden weil er 64Bit ist, sondern weil er auch im 32Bit Modus deutlich schneller als sein Vorgänger ist. (die Aussage habe ich leider nur im Hinterkopf und kann auf Anhieb keine Quelle dazu nennen, vergebt mir.)
Hier noch die Rohdaten der CPU-Tests:
root@raspberrypi:~# sysbench --test=cpu --num-threads=4 run sysbench 0.4.12: multi-threaded system evaluation benchmark Running the test with following options: Number of threads: 4 Doing CPU performance benchmark Threads started! Done. Maximum prime number checked in CPU test: 10000 Test execution summary: total time: 45.6543s total number of events: 10000 total time taken by event execution: 182.5443 per-request statistics: min: 18.21ms avg: 18.25ms max: 46.58ms approx. 95 percentile: 18.28ms Threads fairness: events (avg/stddev): 2500.0000/3.94 execution time (avg/stddev): 45.6361/0.01
root@raspberrypi:~# sysbench --test=cpu --num-threads=4 --cpu-max-prime=20000 run sysbench 0.4.12: multi-threaded system evaluation benchmark Running the test with following options: Number of threads: 4 Doing CPU performance benchmark Threads started! Done. Maximum prime number checked in CPU test: 20000 Test execution summary: total time: 119.6214s total number of events: 10000 total time taken by event execution: 478.3561 per-request statistics: min: 47.69ms avg: 47.84ms max: 94.53ms approx. 95 percentile: 47.89ms Threads fairness: events (avg/stddev): 2500.0000/3.32 execution time (avg/stddev): 119.5890/0.02
Und des Memory-Tests:
root@raspberrypi:~# sysbench --test=memory --memory-block-size=1M --memory-total-size=10G --num-threads=4 run sysbench 0.4.12: multi-threaded system evaluation benchmark Running the test with following options: Number of threads: 4 Doing memory operations speed test Memory block size: 1024K Memory transfer size: 2048M Memory operations type: write Memory scope type: global Threads started! Done. Operations performed: 2048 ( 2888.34 ops/sec) 2048.00 MB transferred (2888.34 MB/sec) Test execution summary: total time: 0.7091s total number of events: 2048 total time taken by event execution: 2.8245 per-request statistics: min: 0.71ms avg: 1.38ms max: 4.29ms approx. 95 percentile: 2.04ms Threads fairness: events (avg/stddev): 512.0000/12.51 execution time (avg/stddev): 0.7061/0.00
Und für die ganz Neugierigen unter uns gibts hier die /proc/cpuinfo:
root@raspberrypi:~# cat /proc/cpuinfo processor : 0 model name : ARMv7 Processor rev 4 (v7l) BogoMIPS : 38.40 Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32 CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xd03 CPU revision : 4 processor : 1 model name : ARMv7 Processor rev 4 (v7l) BogoMIPS : 38.40 Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32 CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xd03 CPU revision : 4 processor : 2 model name : ARMv7 Processor rev 4 (v7l) BogoMIPS : 38.40 Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32 CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xd03 CPU revision : 4 processor : 3 model name : ARMv7 Processor rev 4 (v7l) BogoMIPS : 38.40 Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32 CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xd03 CPU revision : 4 Hardware : BCM2709 Revision : a02082 Serial : 0000000055ca2eb4
Schreibe einen Kommentar