2013-12-20 3 views
0

Я использую смешанный режим MPI + CUDA для программирования кластера графических процессоров для матричного умножения. Когда я выгружаю операции умножения на графические процессоры через MPI и CUDA, он выдает сообщение об ошибке во время выполнения:Смешанное программирование MPI + CUDA - Ошибка драйвера

FATAL: ошибка ввода nvidia (/lib/modules/3.2.0-23-generic-pae/kernel/ драйверы/видео/nvidia.ko): Нет такого устройства

MPI используется для передачи блоков данных, а затем, после получения данных, вызывается общая функция C, которая запускает ядро ​​CUDA. Тестовая установка имеет 3 машины, каждая из которых имеет один графический процессор. Я тестировал версию CUDA только с локальной версией. Я не получал сообщений об ошибках, но ответы алгоритмов были неправильными (даже для небольших простых алгоритмов).

В чем причина этой ошибки? Обратите внимание, что это происходит только тогда, когда я пытаюсь использовать MPI с CUDA. Только версия CUDA работает хорошо. Заранее спасибо.

+1

Похоже, что наиболее распространенной причиной ошибки является то, что устройство уже контролируется драйвером nouveau. Но тогда это не должно быть связано с MPI ... –

+0

MPI часто подразумевает доступ к другим машинам в кластере, помимо того, в котором было запущено задание. Если эти другие машины имеют проблемы с конфигурацией, тогда может возникнуть эта проблема или любой другой текст. Я думаю, что в этом вопросе просто недостаточно, чтобы сформулировать любые разумные предложения, но, возможно, у кого-то будет предложение. Например, было бы поучительно знать действительную команду запуска MPI, количество обращений к узлам и независимо от того, происходит ли это сообщение об ошибке локально или сообщается из MPI. –

+1

Кроме того, что такое конфигурация машины (количество графических процессоров/узлов) и возникает ли проблема, если в файле машины MPI указан только локальный компьютер. Смутный вопрос, на мой взгляд. –

ответ

0

Ошибки были вызваны тем, что Nouveau контролирует GPU, а не драйвер NVIDIA. Итак, перед установкой драйвера NVIDIA и инструментария CUDA, нуво должно быть занесено в черный список.

sudo nano /etc/modprobe.d/blacklist.conf 

Вставьте nouveau в конце файла.

Если драйвер NVIDIA уже установлен, перезагрузите драйвер NVIDIA.

Смежные вопросы