Resumen de los resultados de los modelos de prueba para la clasificación de imágenes

LeaderGPU® es un actor recién llegado al mercado de la computación por GPU que pretende cambiar las reglas del juego. En este momento, el mercado de la computación por GPU está representado por varios grandes actores, como AWS, Google Cloud, etc. Sin embargo, un gran actor no siempre implica la mejor oferta del mercado. El proyecto LeaderGPU®, en comparación con AWS y Google Cloud, ofrece servidores físicos, no VPS en los que los recursos de hardware pueden ser compartidos entre varias decenas de usuarios. En el cuadro a continuación se compara el coste de procesamiento de 500 000 imágenes para el modelo Inception V3 con diferentes servicios:

Modelo GPU Servicio Número de imágenes Tiempo Precio (por minuto) Coste total
Inception V3 8x K80 Google cloud 500000 36m 43sec €0.0825* €3.02
Inception V3 8x K80 AWS 500000 36m 14sec €0.107 €3.87
Inception V3 8x GTX 1080 LeaderGPU 500000 12m 9sec €0.11 €1.34

El cuadro muestra que LeaderGPU® no solo es un 300 % más rápido que sus competidores, sino que también es más rentable, al menos un 29 %, en comparación con Google Cloud y AWS.

Se realizaron pruebas en los sistemas informáticos de LeaderGPU®. Para la evaluación de los competidores hemos utilizado los resultados de las pruebas de instancias de Google y AWS. Se realizaron pruebas con datos sintéticos de los siguientes modelos de redes: ResNet-50, ResNet-152, VGG16 y AlexNet. Al final de este artículo encontrará los resultados de las pruebas de otros modelos. Las pruebas de los datos sintéticos se realizaron utilizando una tf. Variable, de forma análoga a la configuración de modelos para ImageNet.


Pruebas de LeaderGPU® (ltbv20 2x Nvidia® Tesla® P 100)

Entorno de prueba:

Opciones InceptionV3 ResNet-50 ResNet-152 Alexnet VGG16
Tamaño de lote en la GPU 64 64 32 512 32
Optimización sgd sgd sgd sgd sgd

Ltbv 20 Nvidia Tesla P100 (1, 2 GPUs)

Datos sintéticos de prueba (imágenes/s)

GPUs InceptionV3 ResNet-50 ResNet-152 VGG16 Alexnet
1 136.55 217.76 82.05 137.32 2807.64
2 259.14 410.88 150.41 240.61 5117.86

Otros resultados

Datos sintéticos de prueba (imágenes/s)

Tamaño de lote alexnet vgg11 vgg16 vgg19 lenet googlenet
32 1516.70 373.45 240.61 203.73 14524.23 714.25
64 2480.30 472.15 274.67 230.73 28599.07 877.76
128 3486.68 540.51 288.80 243.55 44943.19 990.89
256 4440.35 464.69 -* -* 63311.75 1075.38
512 5117.86 -* -* -* 80078.57 1104.74
Tamaño de lote overfeat inceptionv3 inceptionv4 resnet50 resnet101 resnet152
32 574.13 233.99 116.45 361.06 214.15 150.41
64 1052.63 259.14 125.09 410.88 245.36 170.79
128 1509.01 269.51 -* 439.41 -* -*
256 2041.60 -* -* -* -* -*
512 2323.77 -* -* -* -* -*

* La cantidad de memoria de acceso aleatorio disponible en la GPU no permite realizar pruebas con paquetes de este tamaño (tamaño de lote).

Pruebas de LeaderGPU® (GTX 1080)

Entorno de prueba:

Opciones InceptionV3 ResNet-50 ResNet-152 Alexnet VGG16
Tamaño de lote en la GPU 64 64 32 512 32
Optimización sgd sgd sgd sgd sgd

Ltbv 17, 14, 16 GTX 1080 (2, 4, 8 GPUs)

Datos sintéticos de prueba (imágenes/s)

GPUs InceptionV3 VGG16 ResNet-50 ResNet-152 Alexnet
2 187.93 173.2 259.39 109.02 3344.11
4 345.05 276.43 485.92 192.25 6221.67
8 685.59 428.57 949.72 369.02 9405.27

Otros resultados

Datos sintéticos de prueba (imágenes/s)

2x GTX 1080

Tamaño de lote alexnet vgg11 vgg16 vgg19 lenet googlenet
32 823.87 223.73 150.50 129.67 14440.58 608.46
64 1517.33 299.24 173.20 149.62 25817.36 676.81
128 2198.87 291.47 -* -* 40910.02 717.52
256 2878.43 -* -* -* 53821.73 730.47
512 3344.11 -* -* -* 66096.43 -*
Tamaño de lote overfeat inceptionv3 inceptionv4 resnet50 resnet101 resnet152
32 284.06 180.62 91.63 245.55 154.15 109.02
64 568.15 187.93 -* 259.39 -* -*
128 911.17 -* -* -* -* -*
256 1211.36 -* -* -* -* -*
512 1424.58 -* -* -* -* -*

* La cantidad de memoria de acceso aleatorio disponible en la GPU no permite realizar pruebas con paquetes de este tamaño (tamaño de lote).

4x GTX 1080

Tamaño de lote alexnet vgg11 vgg16 vgg19 lenet googlenet
32 1238.14 295.30 272.03 155.75 18389.01 1110.35
64 2375.18 354.55 276.43 169.51 37465.98 1235.77
128 3889.23 321.28 -* -* 60612.34 1365.62
256 5056.10 -* -* -* 89908.56 1394.58
512 6221.67 -* -* -* 114433.39 -*
Tamaño de lote overfeat inceptionv3 inceptionv4 resnet50 resnet101 resnet152
32 450.85 328.23 166.82 447.25 276.27 192.25
64 885.37 345.05 -* 485.92 -* -*
128 1576.74 -* -* -* -* -*
256 2126.47 -* -* -* -* -*
512 2447.81 -* -* -* -* -*

* La cantidad de memoria de acceso aleatorio disponible en la GPU no permite realizar pruebas con paquetes de este tamaño (tamaño de lote).

8x GTX 1080

Tamaño de lote alexnet vgg11 vgg16 vgg19 lenet googlenet
32 1347.98 381.49 347.37 333.71 27248.65 2023.19
64 2406.83 620.29 428.57 -* 51105.12 2352.15
128 4255.75 -* -* -* 93211.00 2644.26
256 6318.54 -* -* -* 145559.65 2610.21
512 9405.27 -* -* -* 206469.92 -*
Tamaño de lote overfeat inceptionv3 inceptionv4 resnet50 resnet101 resnet152
32 555.36 632.23 323.09 857.12 518.57 369.02
64 1042.12 685.59 -* 949.72 -* -*
128 1735.24 -* -* -* -* -*
256 2575.93 -* -* -* -* -*
512 3815.25 -* -* -* -* -*

* La cantidad de memoria de acceso aleatorio disponible en la GPU no permite realizar pruebas con paquetes de este tamaño (tamaño de lote).

Pruebas de LeaderGPU® (GTX 1080TI)

Entorno de prueba:

Opciones InceptionV3 ResNet-50 ResNet-152 Alexnet VGG16
Tamaño de lote en la GPU 64 64 32 512 32
Optimización sgd sgd sgd sgd sgd

Ltbv 21, 18 GTX 1080TI (2, 4, 10 GPUs)

Datos sintéticos de prueba (imágenes/s)

GPUs InceptionV3 VGG16 ResNet-50 ResNet-152 Alexnet
2 264.7 235.15 377.41 127.43 4596.37
4 493.14 401.68 706.95 270.35 8513.54
10 928.26 478.82 1418.60 513.37 -

Otros resultados

Datos sintéticos de prueba (imágenes/s)

2x GTX 1080 TI

Tamaño de lote alexnet vgg11 vgg16 vgg19 lenet googlenet
32 880.18 287.25 190.05 169.67 13411.38 807.60
64 1743.20 385.95 235.15 198.28 28360.89 954.35
128 2808.68 457.54 - - 44453.02 1042.77
256 3777.74 - - - 67451.51 1070.28
512 4596.37 - - - 87898.53 -
Tamaño de lote overfeat inceptionv3 inceptionv4 resnet50 resnet101 resnet152
32 304.50 250.37 125.81 351.21 218.02 127.43
64 607.91 264.70 - 377.41 236.24 -
128 1162.21 - - 381.62 - -
256 1617.89 - - - - -
512 1992.50 - - - - -

4x GTX 1080 TI

Tamaño de lote alexnet vgg11 vgg16 vgg19 lenet googlenet
32 1264.01 378.39 331.08 208.39 19239.51 1487.66
64 2502.01 481.49 401.68 236.07 38818.10 1755.63
128 4539.97 541.39 - - 71457.41 1943.93
256 6787.68 - - - 111721.23 1992.45
512 8513.54 - - - 152549.70 -*
Tamaño de lote overfeat inceptionv3 inceptionv4 resnet50 resnet101 resnet152
32 475.69 451.16 228.76 648.11 383.04 270.35
64 942.19 493.14 - 706.95 422.93 -
128 1706.03 - - 722.16 - -
256 2907.18 - - - - -
512 3478.50 - - - - -

10x GTX 1080 TI

Batch size alexnet vgg11 vgg16 vgg19 lenet googlenet
32 865.89 368.50 309.07 289.88 18065.32 2200.48
64 1719.84 667.04 478.82 465.45 36486.24 3333.87
128 3344.45 868.66 - - 70077.18 3771.19
256 6159.03 - - - 138600.70 4335.86
512
- - - 237511.15 -
Batch size overfeat inceptionv3 inceptionv4 resnet50 resnet101 resnet152
32 346.22 809.19 459.10 1116.42 760.83 513.37
64 676.99 928.26 - 1418.60 937.95 -
128 1322.01 - - 1504.64 - -
256 2387.97 - - - - -
512 - - - - - -

Pruebas de AWS EC2 (NVIDIA® Tesla® K80)

Entorno de prueba:

Opciones InceptionV3 ResNet-50 ResNet-152 Alexnet VGG16
Tamaño de lote en la GPU 64 64 32 512 32
Optimización sgd sgd sgd sgd sgd

p2.8xlarge from AWS (1, 2, 4, 8 GPUs)

Datos sintéticos de prueba (imágenes/s)

GPUs InceptionV3 ResNet-50 ResNet-152 Alexnet VGG16
1 30.8 51.5 19.7 684 36.3
2 58.7 98.0 37.6 1244 69.4
4 117 195 74.9 2479 141
8 230 384 149 4853 260

Otros resultados (imágenes/s)

GPUs InceptionV3 (batch size 32) ResNet-50 (batch size 32)
1 29.9 49.0
2 57.5 94.1
4 114 184
8 216 355

Los resultados de las pruebas provienen de https://www.tensorflow.org/lite/performance/measurement#details_for_amazon_ec2_nvidia_tesla_k80

Pruebas de Google Compute Engine (NVIDIA® Tesla® K80)

Entorno de prueba:

Opciones InceptionV3 ResNet-50 ResNet-152 Alexnet VGG16
Tamaño de lote en la GPU 64 64 32 512 32
Optimización sgd sgd sgd sgd sgd

n1-standard-32-k80x8 from Google (1, 2, 4, 8 GPUs)

Datos sintéticos de prueba (imágenes/s)

GPUs InceptionV3 ResNet-50 ResNet-152 Alexnet VGG16
1 30.5 51.9 20.0 656 35.4
2 57.8 99.0 38.2 1209 64.8
4 116 195 75.8 2328 120
8 227 387 148 4640 234

Otros resultados (imágenes/s)

GPUs InceptionV3 (batch size 32) ResNet-50 (batch size 32)
1 29.3 49.5
2 55.0 95.4
4 109 183
8 216 362

Los resultados de las pruebas provienen de https://www.tensorflow.org/lite/performance/measurement#details_for_google_compute_engine_nvidia_tesla_k80

Ahora evaluemos el cálculo de los costes del procesamiento de imágenes.

En el cuadro a continuación, calculamos el coste y el tiempo de procesamiento de 500 000 imágenes utilizando los modelos Inception V3, ResNet-60 y ResNet-152 para encontrar la mejor oferta. Como puede ver en el cuadro, LeaderGPU® es la oferta más favorable del mercado entre los demás proveedores examinados.

Modelo GPU Plataforma Número de imágenes Tiempo Precio (por minuto) Coste total
Inception V3 8x K80 Google cloud 500000 36m 43sec €0.0825* €3.02*
Inception V3 8x K80 AWS 500000 36m 14sec €0.107* €3.87*
Inception V3 8x 1080 LeaderGPU 500000 12m 9sec €0.11 €1.34
ResNet-50 8x K80 Google cloud 500000 21m 32sec €0.0825* €1.77*
ResNet-50 8x K80 AWS 500000 21m 42 sec €0.107* €2.32*
ResNet-50 8x 1080 LeaderGPU 500000 8m 46sec €0.11 €0.96
ResNet-152 8x K80 Google cloud 500000 56m 18sec €0.0825* €4.64*
ResNet-152 8x K80 AWS 500000 55m 55sec €0.107* €5.98*
ResNet-152 8x 1080 LeaderGPU 500000 22m 35sec €0.11 €2.48

* El servicio Google Cloud no se ofrece por minuto. El precio por minuto se calcula sobre la base del precio por hora (5645 $)