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