Benchmark avec Linpack.
(en-cours de rédaction)
Raspberry Pi : Modèle B 512 Mo
Distribution : 2013-09-25-wheezy-raspbian
Unitée de mesure : MFLOPS (Millions of Floating Point Operations Per Second)
I) Benchmark 1.
1) Répertoire de travail :
pi@raspberrypi ~ $ mkdir BENCHMARK pi@raspberrypi ~ $ cd BENCHMARK/ pi@raspberrypi ~/BENCHMARK $
2) Téléchargement du code source :
pi@raspberrypi ~/BENCHMARK $ git clone https://github.com/2000nickels/linpackc.git pi@raspberrypi ~/BENCHMARK $ cd linpackc/ pi@raspberrypi ~/BENCHMARK/linpackc $
3) Compilation :
pi@raspberrypi ~/BENCHMARK/linpackc $ gcc -O4 -DDP -DROLL -o linpackc linpack.c -lm
4) Benchmark :
pi@raspberrypi ~/BENCHMARK/linpackc $ ./linpackc Rolled Double Precision Linpack norm. resid resid machep x[0]-1 x[n-1]-1 1.7 7.41628980e-14 2.22044605e-16 -1.49880108e-14 -1.89848137e-14 times are reported for matrices of order 100 dgefa dgesl total kflops unit ratio times for array with leading dimension of 201 0.02 0.00 0.02 34333 0.06 0.36 0.02 0.00 0.02 34333 0.06 0.36 0.02 0.00 0.02 34333 0.06 0.36 0.02 0.00 0.02 35413 0.06 0.35 times for array with leading dimension of 200 0.02 0.00 0.02 34333 0.06 0.36 0.02 0.00 0.02 34333 0.06 0.36 0.02 0.00 0.02 34333 0.06 0.36 0.02 0.00 0.02 34698 0.06 0.35 Rolled Double Precision 34698 Kflops ; 1000 Reps
Sans overclocking : MFLOPS = 35.7
5) Lien :
http://2000nickels.com/blog/2012/11/19/a-cray-for-35-dollars/
II) Benchmark 2.
1) Téléchargement :
pi@raspberrypi ~/BENCHMARK $ wget http://www.roylongbottom.org.uk/Raspberry_Pi_Benchmarks.zip
2) Décompression :
pi@raspberrypi ~/BENCHMARK $ unzip Raspberry_Pi_Benchmarks.zip pi@raspberrypi ~/BENCHMARK $ cd Raspberry_Pi_Benchmarks/Source\ Code/ pi@raspberrypi ~/BENCHMARK/Raspberry_Pi_Benchmarks/Source Code $
3) Compilation :
pi@raspberrypi ~/BENCHMARK/Raspberry_Pi_Benchmarks/Source Code $ gcc linpack.c cpuidc.c -lm -lrt -O3 -march=armv6 -mfloat-abi=hard -mfpu=vfp -o linpackPiA6 pi@raspberrypi ~/BENCHMARK/Raspberry_Pi_Benchmarks/Source Code $ gcc linpacksp.c cpuidc.c -lm -lrt -O3 -march=armv6 -mfloat-abi=hard -mfpu=vfp -o linpackPiSP
4) Benchmark 1 :
pi@raspberrypi ~/BENCHMARK/Raspberry_Pi_Benchmarks/Source Code $ ./linpackPiA6 ########################################## Unrolled Double Precision Linpack Benchmark - Linux Version in 'C/C++' Optimisation Opt 3 32 Bit norm resid resid machep x[0]-1 x[n-1]-1 1.7 7.41628980e-14 2.22044605e-16 -1.49880108e-14 -1.89848137e-14 Times are reported for matrices of order 100 1 pass times for array with leading dimension of 201 dgefa dgesl total Mflops unit ratio 0.01782 0.00066 0.01848 37.16 0.0538 0.3300 Calculating matgen overhead 10 times 0.02 seconds 100 times 0.16 seconds 200 times 0.32 seconds 400 times 0.63 seconds 800 times 1.26 seconds Overhead for 1 matgen 0.00158 seconds Calculating matgen/dgefa passes for 1 seconds 10 times 0.19 seconds 20 times 0.39 seconds 40 times 0.78 seconds 80 times 1.58 seconds Passes used 50 Times for array with leading dimension of 201 dgefa dgesl total Mflops unit ratio 0.01789 0.00063 0.01852 37.08 0.0539 0.3307 0.01801 0.00064 0.01865 36.83 0.0543 0.3330 0.01794 0.00064 0.01858 36.96 0.0541 0.3318 0.01790 0.00064 0.01854 37.04 0.0540 0.3311 0.01797 0.00064 0.01861 36.91 0.0542 0.3322 Average 36.96 Calculating matgen2 overhead Overhead for 1 matgen 0.00154 seconds Times for array with leading dimension of 200 dgefa dgesl total Mflops unit ratio 0.01760 0.00060 0.01820 37.72 0.0530 0.3250 0.01750 0.00060 0.01810 37.94 0.0527 0.3232 0.01756 0.00060 0.01816 37.81 0.0529 0.3243 0.01758 0.00060 0.01818 37.76 0.0530 0.3247 0.01746 0.00060 0.01806 38.02 0.0526 0.3225 Average 37.85 ########################################## From File /proc/cpuinfo Processor : ARMv6-compatible processor rev 7 (v6l) BogoMIPS : 697.95 Features : swp half thumb fastmult vfp edsp java tls CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xb76 CPU revision : 7 Hardware : BCM2708 Revision : 000f Serial : 0000000041e71a95 From File /proc/version Linux version 3.6.11+ (dc4@dc4-arm-01) (gcc version 4.7.2 20120731 (prerelease) (crosstool-NG linaro-1.13.1+bzr2458 - Linaro GCC 2012.08) ) #538 PREEMPT Fri Aug 30 20:42:08 BST 2013 Unrolled Double Precision 36.96 Mflops Type additional information to include in linpack.txt - Press Enter
5) Benchmark 2 :
pi@raspberrypi ~/BENCHMARK/Raspberry_Pi_Benchmarks/Source Code $ ./linpackPiSP ########################################## Unrolled Single Precision Linpack Benchmark - Linux Version in 'C/C++' Optimisation Opt 3 32 Bit norm resid resid machep x[0]-1 x[n-1]-1 1.6 3.80277634e-05 1.19209290e-07 -1.38282776e-05 -7.51018524e-06 Times are reported for matrices of order 100 1 pass times for array with leading dimension of 201 dgefa dgesl total Mflops unit ratio 0.01278 0.00044 0.01321 51.97 0.0385 0.2359 Calculating matgen overhead 10 times 0.02 seconds 100 times 0.15 seconds 200 times 0.30 seconds 400 times 0.60 seconds 800 times 1.20 seconds Overhead for 1 matgen 0.00150 seconds Calculating matgen/dgefa passes for 1 seconds 10 times 0.14 seconds 20 times 0.29 seconds 40 times 0.57 seconds 80 times 1.14 seconds Passes used 70 Times for array with leading dimension of 201 dgefa dgesl total Mflops unit ratio 0.01281 0.00044 0.01325 51.83 0.0386 0.2366 0.01272 0.00045 0.01316 52.16 0.0383 0.2351 0.01278 0.00042 0.01320 52.02 0.0384 0.2357 0.01281 0.00043 0.01323 51.88 0.0385 0.2363 0.01272 0.00043 0.01315 52.22 0.0383 0.2348 Average 52.02 Calculating matgen2 overhead Overhead for 1 matgen 0.00150 seconds Times for array with leading dimension of 200 dgefa dgesl total Mflops unit ratio 0.01251 0.00042 0.01292 53.14 0.0376 0.2308 0.01252 0.00042 0.01294 53.08 0.0377 0.2310 0.01243 0.00042 0.01285 53.43 0.0374 0.2295 0.01251 0.00042 0.01293 53.11 0.0377 0.2309 0.01250 0.00042 0.01291 53.18 0.0376 0.2306 Average 53.19 ########################################## From File /proc/cpuinfo Processor : ARMv6-compatible processor rev 7 (v6l) BogoMIPS : 697.95 Features : swp half thumb fastmult vfp edsp java tls CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xb76 CPU revision : 7 Hardware : BCM2708 Revision : 000f Serial : 0000000041e71a95 From File /proc/version Linux version 3.6.11+ (dc4@dc4-arm-01) (gcc version 4.7.2 20120731 (prerelease) (crosstool-NG linaro-1.13.1+bzr2458 - Linaro GCC 2012.08) ) #538 PREEMPT Fri Aug 30 20:42:08 BST 2013 Unrolled Single Precision 52.02 Mflops Type additional information to include in linpack.txt - Press Enter
6) Lien :
http://www.roylongbottom.org.uk/Raspberry Pi Benchmarks.htm
III) Benchmark 3.
1) Compilation :
pi@raspberrypi ~/BENCHMARK/Raspberry_Pi_Benchmarks/Source Code $ gcc lloops.c cpuidc.c -lm -lrt -O3 -march=armv6 -mfloat-abi=hard -mfpu=vfp -o liverloopsPiA6
2) Benchmark :
pi@raspberrypi ~/BENCHMARK/Raspberry_Pi_Benchmarks/Source Code $ ./liverloopsPiA6 L.L.N.L. 'C' KERNELS: MFLOPS P.C. VERSION 4.0 Optimisation Opt 3 32 Bit Calculating outer loop overhead 1000 times 0.00 seconds 10000 times 0.00 seconds 100000 times 0.01 seconds 1000000 times 0.06 seconds 2000000 times 0.12 seconds 4000000 times 0.23 seconds Overhead for each loop 5.8306e-08 seconds ########################################## From File /proc/cpuinfo Processor : ARMv6-compatible processor rev 7 (v6l) BogoMIPS : 697.95 Features : swp half thumb fastmult vfp edsp java tls CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xb76 CPU revision : 7 Hardware : BCM2708 Revision : 000f Serial : 0000000041e71a95 From File /proc/version Linux version 3.6.11+ (dc4@dc4-arm-01) (gcc version 4.7.2 20120731 (prerelease) (crosstool-NG linaro-1.13.1+bzr2458 - Linaro GCC 2012.08) ) #538 PREEMPT Fri Aug 30 20:42:08 BST 2013 Calibrating part 1 of 3 Loop count 4 0.00 seconds Loop count 16 0.01 seconds Loops 200 x 1 x Passes Kernel Floating Pt ops No Passes E No Total Secs. MFLOPS Span Checksums OK ------------ -- ------------- ----- ------- ---- ---------------------- -- 1 7 x 8 5 5.605600e+07 1.04 54.03 1001 5.114652693224671e+04 16 2 67 x 15 4 7.798800e+07 1.06 73.91 101 1.539721811668385e+03 15 3 9 x 27 2 9.729720e+07 0.98 99.36 1001 1.000742883066363e+01 15 4 14 x 35 2 1.176000e+08 0.96 122.64 1001 5.999250595473891e-01 16 5 10 x 6 2 2.400000e+07 1.21 19.80 1001 4.548871642387267e+03 16 6 3 x 11 2 2.618880e+07 1.05 24.84 64 4.375116344729986e+03 16 7 4 x 8 16 1.018880e+08 1.08 94.70 995 6.104251075174761e+04 16 8 10 x 8 36 1.140480e+08 1.02 112.16 100 1.501268005625795e+05 15 9 36 x 6 17 7.417440e+07 0.93 80.03 101 1.189443609974981e+05 16 10 34 x 5 9 3.090600e+07 0.94 32.81 101 7.310369784325296e+04 16 11 11 x 13 1 2.860000e+07 0.97 29.46 1001 3.342910972650109e+07 16 12 12 x 10 1 2.400000e+07 1.05 22.91 1000 2.907141294167248e-05 16 13 36 x 6 7 1.935360e+07 1.03 18.76 64 1.202533961842805e+11 15 14 2 x 4 11 1.761760e+07 1.12 15.72 1001 3.165553044000335e+09 15 15 1 x 16 33 5.280000e+07 0.98 53.93 101 3.943816690352044e+04 15 16 25 x 21 10 5.565000e+07 1.01 54.89 75 5.650760000000000e+05 16 17 35 x 12 9 7.635600e+07 1.01 75.60 101 1.114641772902486e+03 16 18 2 x 7 44 6.098400e+07 1.15 52.96 100 1.015727037502299e+05 15 19 39 x 15 6 7.090200e+07 1.03 68.61 101 5.421816960147207e+02 16 20 1 x 8 26 4.160000e+07 0.96 43.29 1000 3.040644339351239e+07 16 21 1 x 2 2 5.050000e+07 1.97 25.61 101 1.597308280710199e+08 15 22 11 x 6 17 2.266440e+07 1.12 20.24 101 2.938604376566697e+02 16 23 8 x 6 11 5.227200e+07 0.90 58.33 100 3.549900501563623e+04 16 24 5 x 28 1 2.800000e+07 1.03 27.09 1001 5.000000000000000e+02 16 Maximum Rate 122.64 Average Rate 53.40 Geometric Mean 44.60 Harmonic Mean 37.09 Minimum Rate 15.72 Do Span 471 Calibrating part 2 of 3 Loop count 8 0.00 seconds Loop count 32 0.01 seconds Loops 200 x 2 x Passes Kernel Floating Pt ops No Passes E No Total Secs. MFLOPS Span Checksums OK ------------ -- ------------- ----- ------- ---- ---------------------- -- 1 40 x 7 5 5.656000e+07 0.89 63.51 101 5.253344778937972e+02 16 2 40 x 12 4 7.449600e+07 1.01 73.99 101 1.539721811668385e+03 15 3 53 x 33 2 1.413192e+08 1.03 136.82 101 1.009741436578952e+00 16 4 70 x 34 2 1.142400e+08 1.02 111.99 101 5.999250595473891e-01 16 5 55 x 8 2 3.520000e+07 1.02 34.44 101 4.589031939600982e+01 16 6 7 x 18 2 4.838400e+07 1.04 46.37 32 8.631675645333210e+01 16 7 22 x 10 16 1.422080e+08 1.06 134.78 101 6.345586315784055e+02 16 8 6 x 7 36 1.197504e+08 1.07 111.71 100 1.501268005625795e+05 15 9 21 x 6 17 8.653680e+07 1.08 80.23 101 1.189443609974981e+05 16 10 19 x 5 9 3.454200e+07 1.05 32.99 101 7.310369784325296e+04 16 11 64 x 12 1 3.072000e+07 1.04 29.48 101 3.433560407475758e+04 16 12 68 x 9 1 2.448000e+07 1.07 22.87 100 7.127569130821465e-06 16 13 41 x 6 7 2.204160e+07 1.16 18.97 32 9.816387810944356e+10 15 14 10 x 6 11 2.666400e+07 1.11 23.97 101 3.039983465145392e+07 15 15 1 x 9 33 5.940000e+07 1.10 54.02 101 3.943816690352044e+04 15 16 27 x 18 10 5.443200e+07 1.02 53.62 40 6.480410000000000e+05 16 17 20 x 11 9 7.999200e+07 1.06 75.65 101 1.114641772902486e+03 16 18 1 x 7 44 6.098400e+07 1.15 52.93 100 1.015727037502299e+05 15 19 23 x 13 6 7.247760e+07 1.05 68.73 101 5.421816960147207e+02 16 20 8 x 6 26 4.992000e+07 1.01 49.32 100 3.126205178815431e+04 16 21 1 x 2 2 5.000000e+07 1.19 41.98 50 7.824524877232093e+07 16 22 7 x 5 17 2.403800e+07 1.19 20.24 101 2.938604376566697e+02 16 23 5 x 6 11 6.534000e+07 1.13 58.03 100 3.549900501563623e+04 16 24 31 x 22 1 2.728000e+07 1.00 27.28 101 5.000000000000000e+01 16 Maximum Rate 136.82 Average Rate 59.33 Geometric Mean 50.46 Harmonic Mean 42.97 Minimum Rate 18.97 Do Span 90 Calibrating part 3 of 3 Loop count 32 0.00 seconds Loop count 128 0.01 seconds Loops 200 x 8 x Passes Kernel Floating Pt ops No Passes E No Total Secs. MFLOPS Span Checksums OK ------------ -- ------------- ----- ------- ---- ---------------------- -- 1 28 x 11 5 6.652800e+07 1.06 62.91 27 3.855104502494961e+01 16 2 46 x 19 4 6.152960e+07 1.06 57.94 15 3.953296986903059e+01 16 3 37 x 40 2 1.278720e+08 1.01 126.82 27 2.699309089320672e-01 16 4 38 x 39 2 7.113600e+07 1.02 70.07 27 5.999250595473891e-01 16 5 40 x 11 2 3.660800e+07 1.06 34.43 27 3.182615248447483e+00 16 6 21 x 24 2 3.870720e+07 0.95 40.85 8 1.120309393467088e+00 15 7 20 x 12 16 1.290240e+08 1.00 129.40 21 2.845720217644024e+01 16 8 9 x 9 36 1.213056e+08 1.08 112.28 14 2.960543667875005e+03 15 9 26 x 9 17 9.547200e+07 1.11 85.85 15 2.623968460874250e+03 16 10 25 x 8 9 4.320000e+07 1.00 43.08 15 1.651291227698265e+03 16 11 46 x 15 1 2.870400e+07 1.00 28.69 27 6.551161335845770e+02 16 12 48 x 12 1 2.396160e+07 1.05 22.74 26 1.943435981130448e-06 16 13 31 x 7 7 1.944320e+07 1.06 18.26 8 3.847124199949431e+10 15 14 8 x 10 11 3.801600e+07 1.06 35.77 27 2.923540598672009e+06 15 15 1 x 16 33 5.913600e+07 1.01 58.76 15 1.108997288134785e+03 16 16 14 x 23 10 5.667200e+07 1.04 54.67 15 5.152160000000000e+05 16 17 26 x 14 9 7.862400e+07 1.00 78.82 15 2.947368618589361e+01 16 18 2 x 9 44 8.236800e+07 1.05 78.48 14 9.700646212337041e+02 16 19 28 x 17 6 6.854400e+07 1.03 66.42 15 1.268230698051003e+01 15 20 7 x 8 26 6.056960e+07 1.14 53.20 26 5.987713249475302e+02 16 21 1 x 2 2 8.000000e+07 1.67 47.88 20 5.009945671204667e+07 16 22 8 x 7 17 2.284800e+07 1.12 20.32 15 6.109968728263972e+00 16 23 7 x 11 11 8.808800e+07 1.07 82.70 14 4.850340602749970e+02 16 24 23 x 28 1 2.679040e+07 1.01 26.40 27 1.300000000000000e+01 16 Maximum Rate 129.40 Average Rate 59.86 Geometric Mean 52.04 Harmonic Mean 44.73 Minimum Rate 18.26 Do Span 19 Overall Part 1 weight 1 Part 2 weight 2 Part 3 weight 1 Maximum Rate 136.82 Average Rate 57.98 Geometric Mean 49.30 Harmonic Mean 41.73 Minimum Rate 15.72 Do Span 167 Type additional information to include in LLloops.txt - Press Enter
Geometric Mean : MFLOPS = 49.30