Caffe是一個清晰而高效的深度學習框架,純粹的C++/CUDA架構,支持命令行、Python和MATLAB接口;可以在CPU和GPU直接無縫切換
Caffe的優勢
- 上手快:模型與相應優化都是以文本形式而非代碼形式給出。Caffe給出了模型的定義、最優化設置以及預訓練的權重,方便立即上手。
- 速度快:能夠運行最棒的模型與海量的數據。Caffe與cuDNN結合使用,測試AlexNet模型,在K40上處理每張圖片只需要1.17ms.
- 模塊化:方便擴展到新的任務和設置上。可以使用Caffe提供的各層類型來定義自己的模型。
- 開放性:公開的代碼和參考模型用於再現。
- 社區好:可以通過BSD-2參與開發與討論。
1.1下載cuda-caffe鏡像
sudo docker search cuda-caffe
sudo docker pull kaixhin/cuda-caffe
1.2安裝nvidia-docker
由於cuda-caffe依賴nvidia-docker工具,我們先安裝nvidia-docker
wget -P /tmp https://github.com/NVIDIA/nvidia-docker/releases/download/v1.0.0-rc.3/nvidia-docker_1.0.0.rc.3-1_amd64.deb
#安裝
sudo dpkg -i /tmp/nvidia-docker*.deb && rm /tmp/nvidia-docker*.deb
- Test nvidia-smi #啟動容器
nvidia-docker run -it kaixhin/cuda-caffe nvidia-smi
1.3執行get_cifar10.sh下載深度學習需要用到的圖片
./data/cifar10/get_cifar10.sh
1.4執行./create_cifar10.sh,將會在examples中出現數據庫文件./cifar10-leveldb和數據庫圖像均值二進制文件./mean.binaryproto
./examples/cifar10/create_cifar10.sh
1.5開始訓練測試
./examples/cifar10/train_quick.sh
1.6查看主機GPU占用情況
nvidia-smi
當啟動多個容器,進行GPU資源占用訓練時,GPU的使用情況為搶占。