Índice de referencia VGG16 en Tensorflow™
LeaderGPU® —un servicio revolucionario que le permite abordar la computación por GPU desde una nueva perspectiva. La velocidad de los cálculos del modelo VGG16 en LeaderGPU® es 1,8 veces más rápida en comparación con Google Cloud y 1,7 veces más rápida en comparación con AWS (datos relativos a un ejemplo con 8x GTX 1080). El precio del alquiler por minuto de GPU en LeaderGPU® comienza desde tan solo 0,02 euros, que es más de 4 veces más bajo que el precio del alquiler en Google Cloud y más de 5 veces más bajo que el precio en AWS (al 7 de julio de 2017).
En este artículo, probaremos el modelo VGG16 en varios servicios que ofrecen GPU en alquiler, incluidos LeaderGPU®, AWS y Google Cloud. Los resultados de las pruebas muestran por qué LeaderGPU® es la oferta más rentable entre las opciones examinadas.
Todas las pruebas se realizaron utilizando Python 3.5 y Tensorflow-gpu 1.2 en máquinas con GTX 1080, GTX 1080 TI y Tesla® P 100 con sistema operativo CentOS 7 instalado y biblioteca CUDA® 8.0 instalada.
Se utilizaron los siguientes comandos para ejecutar las pruebas:
# git clone https://github.com/tensorflow/benchmarks.git
# python3.5 benchmarks/scripts/tf_cnn_benchmarks/tf_cnn_benchmarks.py --num_gpus=2(Número de tarjetas en el servidor) --model vgg16 --batch_size 32 (64)
Instancias de GTX 1080
En la primera prueba utilizamos instancias con GTX 1080. Los datos del entorno de prueba (con tamaños de lote 32 y 64) se indican a continuación:
Entorno de prueba:
- Tipos de instancias:ltbv17, ltbv13, ltbv16
- GPU: 2x GTX 1080, 4x GTX 1080, 8x GTX 1080
- OS:CentOS 7
- CUDA / cuDNN:8.0 / 5.1
- TensorFlow GitHub hash:b1e174e
- Benchmark GitHub hash:9165a70
- Comando:
# python3.5 benchmarks/scripts/tf_cnn_benchmarks/tf_cnn_benchmarks.py --num_gpus=2 --model vgg16 --batch_size 32 (optional 64)
- Modelo:VGG16
- Fecha de la prueba:junio de 2017
Los resultados de la prueba se muestran en el diagrama siguiente:
Instancias de GTX 1080TI
Ahora probemos instancias con GTX 1080 Ti. Los datos del entorno de prueba (con tamaños de lote 32 y 64) se indican a continuación:
Entorno de prueba:
- Tipos de instancias:ltbv21, ltbv18
- GPU:2x GTX 1080TI, 4x GTX 1080TI
- OS:CentOS 7
- CUDA / cuDNN:8.0 / 5.1
- TensorFlow GitHub hash:b1e174e
- Benchmark GitHub hash:9165a70
- Comando:
# python3.5 benchmarks/scripts/tf_cnn_benchmarks/tf_cnn_benchmarks.py --num_gpus=2 (4) --model vgg16 --batch_size 32 (optional 64)
- Modelo:VGG16
- Fecha de la prueba:junio de 2017
Los resultados de la prueba se muestran en el diagrama siguiente:
Instancias de Tesla® P100
Por último, es hora de probar las instancias con Tesla® P100. En este caso, el entorno de prueba será el siguiente (con tamaños de lote 32 y 64):
Entorno de prueba:
- Tipo de instancia:ltbv20
- GPU:2x NVIDIA® Tesla® P100
- OS:CentOS 7
- CUDA / cuDNN:8.0 / 5.1
- TensorFlow GitHub hash:b1e174e
- Benchmark GitHub hash:9165a70
- Comando:
# python3.5 benchmarks/scripts/tf_cnn_benchmarks/tf_cnn_benchmarks.py --num_gpus=2 --model vgg16 --batch_size 32 (optional 64)
- Modelo:VGG16
- Fecha de la prueba:junio de 2017
Los resultados de la prueba se muestran en el diagrama siguiente:
En el cuadro a continuación se muestran los resultados de las pruebas con VGG16 en Google Cloud y AWS:
GPU | Google cloud | AWS |
---|---|---|
1x Tesla K80 | 35.4 | 36.3 |
2x Tesla K80 | 64.8 | 69.4 |
4x Tesla K80 | 120 | 141 |
8x Tesla K80 | 234 | 260 |
* Datos obtenidos de las siguientes fuentes:
https://www.tensorflow.org/lite/performance/measurement#details_for_google_compute_engine_nvidia_tesla_k80
https://www.tensorflow.org/lite/performance/measurement#details_for_amazon_ec2_nvidia_tesla_k80
Calcularemos el coste y el tiempo de procesamiento de 1 000 000 imágenes en cada máquina de LeaderGPU®, AWS y Google (cálculo basado en el resultado más alto de cada máquina):
GPU | Número de imágenes | Tiempo | Coste (por minuto) | Coste total |
---|---|---|---|---|
2x GTX 1080 | 1000000 | 96m 13sec | € 0,03 | € 2,89 |
4x GTX 1080 | 1000000 | 60m 17sec | € 0,02 | € 1,21 |
8x GTX 1080 | 1000000 | 38m 53sec | € 0,10 | € 3,89 |
4x GTX 1080TI | 1000000 | 41m 29sec | € 0,02 | € 0,83 |
2х Tesla P100 | 1000000 | 114m 45sec | € 0,02 | € 2,30 |
8x Tesla K80 Google cloud | 1000000 | 71m 12sec | € 0,0825** | € 4,84 |
8x Tesla K80 AWS | 1000000 | 64m 6sec | € 0,107 | € 6,85 |
** El servicio Google Cloud no ofrece planes de pago por minuto. Los cálculos del precio por minuto se basan en el precio por hora (5645 $).
Como se puede ver en el cuadro, la máxima velocidad de procesamiento de imágenes en el modelo VGG16 se obtiene con 8x GTX 1080 de LeaderGPU®, mientras que:
El precio inicial del alquiler en LeaderGPU® comienza desde tan solo € 0,02 por minuto, que es alrededor de 4,13 veces más bajo que el de las instancias de 8x Tesla® K80 ofrecidas por Google Cloud y alrededor de 5,35 veces más bajo que el de las instancias de 8x Tesla® K80 de AWS;
el tiempo de procesamiento fue de 38 minutos y 53 segundos, que es 1,8 veces más rápido que en las instancias de 8x Tesla® K80 de Google Cloud y 1,7 veces más rápido que en las instancias de 8x Tesla® K80 de AWS.
Todo esto sugiere que LeaderGPU® es mucho más rentable que sus competidores y permite alcanzar la máxima velocidad a un precio óptimo. ¡Alquile hoy mismo las mejores GPU con una política de precios flexible en LeaderGPU®!