Benchmark avec Linpack

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

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *