i를 CIFAR10 데이터 세트에 대한 미세 조정 ResNet50 tf.slim의 train_image_classifier.py 스크립트를 사용하고 있습니다 : 3K 단계는멀티 GPU 훈련
python train_image_classifier.py \
--train_dir=${TRAIN_DIR}/all \
--dataset_name=cifar10 \
--dataset_split_name=train \
--dataset_dir=${DATASET_DIR} \
--checkpoint_path=${TRAIN_DIR} \
--model_name=resnet_v1_50 \
--max_number_of_steps=3000 \
--batch_size=32 \
--num_clones=4 \
--learning_rate=0.0001 \
--save_interval_secs=10 \
--save_summaries_secs=10 \
--log_every_n_steps=10 \
--optimizer=sgd
를 켜짐이 실행을 단일 GPU (Tesla M40)는 약 3 천만, 4 GPU는 50 만 이상을 필요로합니다. 정확도는 두 경우 모두 비슷합니다 (~ 75 % 및 ~ 78 %).
멀티 GPU 설정에서 지연의 원인 중 하나는 이미지를로드하는 것이지만 tf.slim의 경우에는 CPU를 사용한다는 것을 알고 있습니다. 문제가 될 수있는 아이디어가 있습니까? 고맙습니다!
타임 라인은 성능 병목 현상을 확인하는 데 도움이됩니다. 타임 라인 사용 : http://stackoverflow.com/questions/36123740/is-there-a-way-of-determining-how-much-gpu-memory-is-in-use-by-tensorflow/37931964#37931964 –
@ YaoZhang 저는 NVIDIA-smi를 통해 GPU 사용량을 추적했습니다. 약 4 %의 GPU가 90 % 이상 사용 된 후 0 %의 순간이 발생하고 만성적으로 교육을 통해이 모든 것을 좋아합니다. – Anas
[Github] (https://github.com/tensorflow/tensorflow/issues) – keveman