Я новичок в TensorFlow и установил CUDA-7.5 и cudnn-v4 в соответствии с инструкциями на веб-сайте TensorFlow. После настройки файла конфигурации TensorFlow и пытается запустить следующий пример с сайта:TensorFlow Выберите GPU для использования с нескольких графических процессоров
python -m tensorflow.models.image.mnist.convolutional
Я уверен, что TensorFlow использует один из графических процессоров вместо другого, однако, я хотел бы его использовать тем быстрее. Мне было интересно, просто ли этот примерный код по умолчанию использует первый GPU, который он находит. Если да, то как я могу выбрать, какой графический процессор использовать в моем коде TensorFlow в python?
Сообщения, которые я получаю при запуске примера кода являются:
ldt-tesla:~$ python -m tensorflow.models.image.mnist.convolutional
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcublas.so locally
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcudnn.so locally
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcufft.so locally
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcuda.so locally
I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcurand.so locally
Extracting data/train-images-idx3-ubyte.gz
Extracting data/train-labels-idx1-ubyte.gz
Extracting data/t10k-images-idx3-ubyte.gz
Extracting data/t10k-labels-idx1-ubyte.gz
I tensorflow/core/common_runtime/gpu/gpu_init.cc:102] Found device 0 with properties:
name: Tesla K20c
major: 3 minor: 5 memoryClockRate (GHz) 0.7055
pciBusID 0000:03:00.0
Total memory: 4.63GiB
Free memory: 4.57GiB
W tensorflow/stream_executor/cuda/cuda_driver.cc:572] creating context when one is currently active; existing: 0x2f27390
I tensorflow/core/common_runtime/gpu/gpu_init.cc:102] Found device 1 with properties:
name: Quadro K2200
major: 5 minor: 0 memoryClockRate (GHz) 1.124
pciBusID 0000:02:00.0
Total memory: 3.95GiB
Free memory: 3.62GiB
I tensorflow/core/common_runtime/gpu/gpu_init.cc:59] cannot enable peer access from device ordinal 0 to device ordinal 1
I tensorflow/core/common_runtime/gpu/gpu_init.cc:59] cannot enable peer access from device ordinal 1 to device ordinal 0
I tensorflow/core/common_runtime/gpu/gpu_init.cc:126] DMA: 0 1
I tensorflow/core/common_runtime/gpu/gpu_init.cc:136] 0: Y N
I tensorflow/core/common_runtime/gpu/gpu_init.cc:136] 1: N Y
I tensorflow/core/common_runtime/gpu/gpu_device.cc:806] Creating TensorFlow device (/gpu:0) -> (device: 0, name: Tesla K20c, pci bus id: 0000:03:00.0)
I tensorflow/core/common_runtime/gpu/gpu_device.cc:793] Ignoring gpu device (device: 1, name: Quadro K2200, pci bus id: 0000:02:00.0) with Cuda multiprocessor count: 5. The minimum required count is 8. You can adjust this requirement with the env var TF_MIN_GPU_MULTIPROCESSOR_COUNT.
Initialized!
Благодаря! Это, похоже, делает работу и избавляется от этой ошибки :). Я также получаю сообщение, в котором говорится: «Игнорирование устройства gpu с счетчиком мультипроцессора cuda 5. Минимальный необходимый счет - 8. Вы можете настроить это требование с помощью ...». Выполняя то же самое, что вы предлагаете, я могу использовать переменную окружения, чтобы изменить счет, но я не уверен, что это значит. Что означает подсчет/минимальный счет? Спасибо! –
другие варианты - https://stackoverflow.com/questions/40069883/how-to-set-specific-gpu-in-tensorflow/44848050#44848050 – Nandeesh