Mxnet™-benchmark
Het doel van het volgende artikel is het presenteren van de resultaten van het testen van mxnet™ op verschillende GPU's en het vergelijken van de kosten van gegevensverwerking op AWS versus LeaderGPU®.
De volgende tabel toont de resultaten van de prestatietest, namelijk het aantal beelden dat per tijdseenheid (gemeten in seconden) kan worden verwerkt.
Scores
Wij hebben de officiële benchmark van mxnet™ benchmark_score.py en cuDNN 6.0 gebruikt.
De resultaten zijn als volgt:
Ltbv 14 (GTX 1080 single):
Batch | Alexnet | VGG | Inception-BN | Inception-v3 | Resnet 50 | Resnet 152 |
---|---|---|---|---|---|---|
1 | 484.21 | 193.85 | 168.71 | 81.41 | 169.28 | 68.38 |
2 | 829.39 | 188.82 | 301.96 | 143.85 | 257.01 | 106.14 |
4 | 1255.73 | 279.13 | 472.93 | 207.13 | 335.21 | 141.79 |
8 | 2103.98 | 361.24 | 653.59 | 306.01 | 391.55 | 166.75 |
16 | 2531.79 | 467.27 | 765.40 | 312.82 | 429.70 | 182.00 |
32 | 3295.19 | 525.39 | 826.41 | 345.28 | 453.44 | 191.84 |
Ltbv 19 (GTX 1080TI single):
Batch | Alexnet | VGG | Inception-BN | Inception-v3 | Resnet 50 | Resnet 152 |
---|---|---|---|---|---|---|
1 | 567.68 | 275.97 | 161.42 | 84.16 | 184.49 | 66.96 |
2 | 1087.14 | 193.07 | 317.53 | 150.89 | 322.72 | 123.60 |
4 | 1556.19 | 314.09 | 558.75 | 244.64 | 465.17 | 197.84 |
8 | 2543.31 | 611.98 | 846.34 | 362.18 | 578.75 | 249.68 |
16 | 4033.49 | 757.19 | 1101.56 | 478.16 | 660.71 | 279.48 |
32 | 5435.72 | 827.58 | 1216.74 | 506.96 | 697.81 | 291.98 |
Ltbv 20 (Tesla P100 single):
Batch | Alexnet | VGG | Inception-BN | Inception-v3 | Resnet 50 | Resnet 152 |
---|---|---|---|---|---|---|
1 | 540.79 | 273.88 | 122.57 | 64.97 | 140.88 | 53.96 |
2 | 985.37 | 352.77 | 249.28 | 119.37 | 245.47 | 94.08 |
4 | 1570.85 | 478.42 | 424.92 | 195.56 | 374.74 | 155.38 |
8 | 2556.58 | 586.46 | 646.51 | 285.70 | 489.39 | 197.19 |
16 | 4162.64 | 819.96 | 899.54 | 392.91 | 609.39 | 255.19 |
32 | 5565.39 | 889.52 | 1116.51 | 468.03 | 682.52 | 279.87 |
Hieronder vindt u de testresultaten bij gebruik van GPU's op AWS K80 (EC2 p2.xlarge), M40 en P100 (DGX-1).
Hier wordt een officiële benchmark van mxnet™ benchmark_score.py gebruikt.
De testresultaten zijn afkomstig van officiële website van mxnet™.
De resultaten zijn als volgt:
K80 (single GPU):
Batch | Alexnet | VGG | Inception-BN | Inception-v3 | Resnet 50 | Resnet 152 |
---|---|---|---|---|---|---|
1 | 202.66 | 70.76 | 74.91 | 42.61 | 70.94 | 24.87 |
2 | 233.76 | 63.53 | 119.60 | 60.09 | 92.28 | 34.23 |
4 | 367.91 | 78.16 | 164.41 | 72.30 | 116.68 | 44.76 |
8 | 624.14 | 119.06 | 195.24 | 79.62 | 129.37 | 50.96 |
16 | 1071.19 | 195.83 | 256.06 | 99.38 | 160.40 | 66.51 |
32 | 1443.90 | 228.96 | 287.93 | 106.43 | 167.12 | 69.73 |
M40(single GPU):
Batch | Alexnet | VGG | Inception-BN | Inception-v3 | Resnet 50 | Resnet 152 |
---|---|---|---|---|---|---|
1 | 412.09 | 142.10 | 115.89 | 64.40 | 126.90 | 46.15 |
2 | 743.49 | 212.21 | 205.31 | 108.06 | 202.17 | 75.05 |
4 | 1155.43 | 280.92 | 335.69 | 161.59 | 266.53 | 106.83 |
8 | 1606.87 | 332.76 | 491.12 | 224.22 | 317.20 | 128.67 |
16 | 2070.97 | 400.10 | 618.25 | 251.87 | 335.62 | 134.60 |
32 | 2694.91 | 466.95 | 624.27 | 258.59 | 373.35 | 152.71 |
P100 (single GPU):
Batch | Alexnet | VGG | Inception-BN | Inception-v3 | Resnet 50 | Resnet 152 |
---|---|---|---|---|---|---|
1 | 624.84 | 294.6 | 139.82 | 80.17 | 162.27 | 58.99 |
2 | 1226.85 | 282.3 | 267.41 | 142.63 | 278.02 | 102.95 |
4 | 1934.97 | 399.3 | 463.38 | 225.56 | 423.63 | 168.91 |
8 | 2900.54 | 522.9 | 709.30 | 319.52 | 529.34 | 210.10 |
16 | 4063.70 | 755.3 | 949.22 | 444.65 | 647.43 | 270.07 |
32 | 4883.77 | 854.4 | 1197.74 | 493.72 | 713.17 | 294.17 |
Vervolgens gaan wij in op het prijsgedeelte van deze test. Wij berekenen de kostprijs van de verwerking van 1.000.000 beelden en de tijd die aan het proces wordt besteed, met batchgrootte 32:
De resultaten zijn als volgt:
GPU | Model | Tijd | Prijs (per min) | Totale kosten |
---|---|---|---|---|
GTX 1080 | Alexnet | 5m 3sec | € 0,06 | € 0,303 |
GTX 1080 TI | 3m 3sec | € 0,07 | € 0,2135 | |
P100 | 2m 55sec | € 0,08 | € 0,23333 | |
K80 | 11m 31sec | € 0,01 | € 0,11517 | |
GTX 1080 | VGG | 31m 43sec | € 0,06 | € 1,903 |
GTX 1080 TI | 20m 8sec | € 0,07 | € 1,40933 | |
P100 | 18m 40sec | € 0,08 | € 1,49333 | |
K80 | 72m 50sec | € 0,01 | € 0,72833 | |
GTX 1080 | Inception-BN | 20m 21sec | € 0,06 | € 1,221 |
GTX 1080 TI | 13m 41sec | € 0,07 | € 0,95783 | |
P100 | 14m 58sec | € 0,08 | € 1,19733 | |
K80 | 57m 45sec | € 0,01 | € 0,5775 | |
GTX 1080 | Inception-v3 | 48m 15sec | € 0,06 | € 2,895 |
GTX 1080 TI | 32m 49sec | € 0,07 | € 2,29717 | |
P100 | 35m 38sec | € 0,08 | € 2,85067 | |
K80 | 156m 35sec | € 0,01 | € 1,56583 | |
GTX 1080 | Resnet 50 | 36m 46sec | € 0,06 | € 2,206 |
GTX 1080 TI | 23m 53sec | € 0,07 | € 1,67183 | |
P100 | 24m 27sec | € 0,08 | € 1,956 | |
K80 | 99m 39sec | € 0,01 | € 0,9965 | |
GTX 1080 | Resnet 152 | 86m 50sec | € 0,06 | € 5,21 |
GTX 1080 TI | 57m 5sec | € 0,07 | € 3,99583 | |
P100 | 59m 32sec | € 0,08 | € 4,76267 | |
K80 | 239m 1sec | € 0,01 | € 2,39017 |
Trainingsresultaten
In het volgende deel bespreken we de testresultaten van de training van netwerken in mxnet™.
Deze resultaten zijn gebaseerd op example/image-classification/train_imagenet.py en cuDNN 6.0. Bovendien is het testscript beschikbaar hier. Voor het Alexnet-netwerk is de batchgrootte 8 keer zo groot geworden.
Ltbv 14 (GTX 1080 single):
Batch | Alexnet(*8) | Resnet 50 | Inception-v3 |
---|---|---|---|
1 | 432,26 | 11,78 | 21,21 |
2 | 655,14 | 19,31 | 34,56 |
4 | 989,15 | 29,61 | 49,79 |
8 | 1167,86 | 39,83 | 71,92 |
16 | 1343,68 | 48,72 | 80,80 |
32 | 1407,41 | -** | 87,93 |
Ltbv 19 (GTX 1080TI single):
Batch | Alexnet(*8) | Resnet 50 | Inception-v3 |
---|---|---|---|
1 | 1068,59 | 13,75 | 21,84 |
2 | 1341,03 | 23,20 | 39,08 |
4 | 1573,10 | 37,93 | 62,49 |
8 | 1770,16 | 54,98 | 90,64 |
16 | 1850,01 | 69,26 | 114,24 |
32 | 1729,24 | 75,57 | 124,84 |
Ltbv 20 (Tesla P100 single):
Batch | Alexnet(*8) | Resnet 50 | Inception-v3 |
---|---|---|---|
1 | 1138,47 | 10,60 | 21,73 |
2 | 1462,89 | 20,29 | 33,05 |
4 | 1717,54 | 35,05 | 57,97 |
8 | 1914,71 | 51,05 | 83,90 |
16 | 1977,86 | 67,17 | 109,90 |
32 | 1754,03 | 77,74 | 123,48 |
** De beschikbare hoeveelheid GPU-geheugen is niet voldoende voor batchverwerking.
K80 (single GPU)
Batch | Alexnet(*8) | Resnet 50 | Inception-v3 |
---|---|---|---|
1 | 230.69 | 9.81 | 13.83 |
2 | 348.10 | 15.31 | 21.85 |
4 | 457.28 | 20.48 | 29.58 |
8 | 533.51 | 24.47 | 36.83 |
16 | 582.36 | 28.46 | 43.60 |
32 | 483.37 | 29.62 | 45.52 |
M40(single GPU)
Batch | Alexnet(*8) | Resnet 50 | Inception-v3 |
---|---|---|---|
1 | 405.17 | 14.35 | 21.56 |
2 | 606.32 | 23.96 | 36.48 |
4 | 792.66 | 37.38 | 52.96 |
8 | 1016.51 | 52.69 | 70.21 |
16 | 1105.18 | 62.35 | 83.13 |
32 | 1046.23 | 68.87 | 90.74 |
P100(single GPU)
Batch | Alexnet(*8) | Resnet 50 | Inception-v3 |
---|---|---|---|
1 | 809.94 | 15.14 | 27.20 |
2 | 1202.93 | 30.34 | 49.55 |
4 | 1631.37 | 50.59 | 78.31 |
8 | 1882.74 | 77.75 | 122.45 |
16 | 2012.04 | 111.11 | 156.79 |
32 | 1869.69 | 129.98 | 181.53 |
Trainingsresultaten op meerdere apparaten
Dit deel is gewijd aan de analyse van gegevens die zijn verzameld bij het testen van mxnet™ bij gebruik van meerdere GPU's op de instanties van LeadersGPU.
Ltbv 14 (4х GTX 1080):
Batch | Alexnet(*8) | Resnet 50 | Inception-v3 |
---|---|---|---|
1 | 98,30 | -* | -* |
2 | 193,09 | -* | -* |
4 | 384,72 | 26,76 | 48,76 |
8 | 723,01 | 46,96 | 88,99 |
16 | 13341,50 | 68,90 | 155,29 |
32 | 1839,47 | 93,37 | 236,57 |
Ltbv 19 (4х GTX 1080TI):
Batch | Alexnet(*8) | Resnet 50 | Inception-v3 |
---|---|---|---|
1 | 126,66 | -* | -* |
2 | 217,72 | -* | -* |
4 | 422,59 | 30,22 | 49,37 |
8 | 768,48 | 56,97 | 94,79 |
16 | 1599,70 | 103,13 | 165,64 |
32 | 2973,28 | 172,37 | 275,70 |
Ltbv 20 (2х Tesla P100):
Batch | Alexnet(*8) | Resnet 50 | Inception-v3 |
---|---|---|---|
1 | 465,45 | -* | -* |
2 | 637,42 | 18,47 | 15,76 |
4 | 1002,77 | 33,48 | 28,98 |
8 | 1857,60 | 63,66 | 46,13 |
16 | 2755,08 | 93,42 | 63,84 |
32 | 3500,40 | 129,25 | 78,66 |
* Te veel segmenten waardoor sommige delen leeg zijn