2016-12-28 20 views
1

Я составлял эту программу для bird image preprocessing на моем компьютере с 8 ГБ оперативной памяти, ядром i7-4th поколения. процессор, но каждый раз, когда есть застревает после запуска на некоторое время показывает эту ошибку:Компилятор автоматически использует графический процессор при компиляции или должен ли я использовать его вручную?

File "bird.py", line 13, in <module> 
    X,Y,X_test,Y_test = pickle.load(open("full_dataset.pkl", "rb")) 
MemoryError 

Будучи новичком в tensorflow, я не уверен, используется ли CUDA (который я успешно установлен) или это просто CPU все еще выполняет вычисления.

ответ

2

Ошибка, которую вы видите, была поднята до того, как был выдан расчет любого графического процессора (или даже любого вычисления TensorFlow). Значение MemoryError означает, что рассыпание набора данных приводит либо к выходу из памяти, либо к некоторому повреждению данных. Попробуйте загрузить меньший набор данных, чтобы узнать, сохраняется ли проблема.

Что касается вашего оригинального вопроса, если вы установили версию TensorFlow для GPU и совместимую версию CUDA (т.е. CUDA 8.0) и cuDNN, TensorFlow выгрузит большую часть вычислений на ваш GPU, включая матричные умножения и которые будут составлять основную часть времени, затраченного на обучение.