CPU与CUDA(GPU)的计算能力对比之二: Keras Resnet 运算效率比较

CPU与CUDA(GPU)的计算能力对比之二: Keras Resnet 运算效率比较

结论: CUDA(GPU : NVIDIA RTX2070 MQ 笔记本版本) 启动后,效率将近是 CPU 单独运行的 17倍左右 : 每个 EPOCH 运行时间平均分别为 370秒, 22秒。

运算环境:
GPU: NVIDIA RTX2070 MQ
CPU : Intel 9750 i7 六核 2.3Ghz
CUDA : 10.1 版本
cuDNN : 7.6.5
Keras : 2.4.3
OS : Windows 10
Python :3.8.5

代码链接:
https://github.com/keras-team/keras-docs-zh/blob/master/sources/examples/cifar10_resnet.md

使用 CPU (未启动CUDA功能)时,每个 EPOCH 需要将近 370 秒。

1563/1563 [==============================] - 372s 238ms/step - loss: 1.5579 - accuracy: 0.4921 - val_loss: 1.7732 - val_accuracy: 0.4694
Learning rate:  0.001
Epoch 2/200
1563/1563 [==============================] - ETA: 0s - loss: 1.1675 - accuracy: 0.6428  WARNING:tensorflow:Can save best model only with val_acc available, skipping.
1563/1563 [==============================] - 369s 236ms/step - loss: 1.1675 - accuracy: 0.6428 - val_loss: 1.3538 - val_accuracy: 0.6097
Learning rate:  0.001
Epoch 3/200
1563/1563 [==============================] - ETA: 0s - loss: 1.0121 - accuracy: 0.7031  WARNING:tensorflow:Can save best model only with val_acc available, skipping.
1563/1563 [==============================] - 379s 243ms/step - loss: 1.0121 - accuracy: 0.7031 - val_loss: 0.9784 - val_accuracy: 0.7139
Learning rate:  0.001
Epoch 4/200
1563/1563 [==============================] - ETA: 0s - loss: 0.9183 - accuracy: 0.7376  WARNING:tensorflow:Can save best model only with val_acc available, skipping.
1563/1563 [==============================] - 371s 237ms/step - loss: 0.9183 - accuracy: 0.7376 - val_loss: 0.9903 - val_accuracy: 0.7200

启动 CUDA 功能后的运算效率:每个 EPOCH 需要 22 秒左右。

1563/1563 [==============================] - ETA: 0s - loss: 0.2890 - accuracy: 0.9597 
Epoch 00094: val_accuracy did not improve from 0.91200
1563/1563 [==============================] - 22s 14ms/step - loss: 0.2890 - accuracy: 0.9597 - val_loss: 0.4482 - val_accuracy: 0.9089
Learning rate:  0.0001
Epoch 95/200
1561/1563 [============================>.] - ETA: 0s - loss: 0.2835 - accuracy: 0.9601 
Epoch 00095: val_accuracy improved from 0.91200 to 0.91240, saving model to C:\Users\AERO15\saved_models\cifar10_ResNet20v1_model.095.h5
1563/1563 [==============================] - 22s 14ms/step - loss: 0.2836 - accuracy: 0.9601 - val_loss: 0.4446 - val_accuracy: 0.9124
Learning rate:  0.0001
Epoch 96/200
1561/1563 [============================>.] - ETA: 0s - loss: 0.2792 - accuracy: 0.9612 
Epoch 00096: val_accuracy improved from 0.91240 to 0.91290, saving model to C:\Users\AERO15\saved_models\cifar10_ResNet20v1_model.096.h5
1563/1563 [==============================] - 22s 14ms/step - loss: 0.2791 - accuracy: 0.9612 - val_loss: 0.4397 - val_accuracy: 0.9129```

你可能感兴趣的:(tensorflow,机器学习)