Я сконструировал компьютер для машинного обучения с двумя графическими процессорами RTX 2070 SUPER NVIDIA, подключенными к SLI Bridge, Windows ОС (SLI проверено на панели управления NVIDIA).
Я провел тестирование системы с использованием http://ai-benchmark.com/alpha и получили впечатляющие результаты.
Чтобы максимально использовать библиотеки, использующие графический процессор для научных c задач (cuDF), я создал контейнер TensorFlow Linux:
https://www.tensorflow.org/install/docker
с использованием тега «latest-gpu-py3-jupyter».
Затем я подключил PyCharm к этому контейнеру и настроил его интерпретатор как интерпретатор того же проекта (я смонтировал папку хост-проекта в контейнере).
Когда я запускаю тот же эталонный тест для контейнера, я получаю сообщение об ошибке:
tensorflow.python.framework.errors_impl.ResourceExhaustedError: OOM when allocating tensor with shape[50,56,56,144] and type float on /job:localhost/replica:0/task:0/device:CPU:0 by allocator cpu
[[node MobilenetV2/expanded_conv_2/depthwise/BatchNorm/FusedBatchNorm (defined at usr/local/lib/python3.6/dist-packages/ai_benchmark/utils.py:238) ]]
Hint: If you want to see a list of allocated tensors when OOM happens, add report_tensor_allocations_upon_oom to RunOptions for current allocation info.
Эта ошибка связана с исчерпанием памяти графического процессора внутри контейнера.
Почему графический процессор на хосте windows успешно обрабатывает вычисления, а графический процессор на контейнере Linux исчерпывает память?
* 10 25 * Что делает эту разницу? это связано с выделением памяти в контейнере?