Установка Nvidia CUDA toolkit на Ubuntu 12.04 x86_64

Доброго времени суток хабровчане, в этом посте я попытаюсь наглядно объяснить про установку Nvidia CUDA toolkit на Ubuntu 12.04 x86_64. Начну с того, что меня сподвигло написать данный пост. Совсем недавно мне потребовалось установить Nvidia CUDA toolkit себе на домашний компьютер.image Почитав добрую часть мануалов по установке, при чем не только на русском языке, я решил, что установить пакет от Nvidia будет проще пареной репы, но вот тут я ошибался. Большинство мануалов заточено под старые версии убунты, кроме того, зачастую в них отсутствуют некие изюминки установки, что рано или поздно приводит читателя в тупик. И так кто заинтересовался — милости прошу под кат…

Разобьем установку на несколько этапов:
1) Загрузка необходимых программных компонентов.
2) Подготовка к установке.
3) Установка драйвера, тулкита и сдк.
4) Настройка системы после установки.
5) Компиляция и запуск примеров для проверки работоспособности.

Этап 1 — Загрузка необходимых программных компонентов.

Думаю глупо рассказывать людям читающим этот пост зачем нужна технология CUDA, т.к. если уж вы его читаете, то определились для чего она вам нужна. Т.к. технология CUDA существует только на графических карточках Nvidia, потребуется карточка данного производителя. С перечнем карточек поддерживающими технологию CUDA можно ознакомится на официальном сайте Nvidia — developer.nvidia.com/cuda-gpus. Точкой отсчета в десктопном сегменте можно считать GeForce 8100 mGPU, а соответственно в ноутбучном — GeForce 8400M GT. Так с карточкой разобрались. Теперь необходимо перейти на сайт developer.nvidia.com и выбрать графу «Cuda Download» (рис 1).

image Рис. 1. Главная страница Developer.nvidia.com.

Сразу после перехода по ссылке «Cuda Download», мы попадаем на страницу загрузки ПО. Т.к. Ubuntu 12.04 вышла относительно недавно, на сайте до сих пор висит ПО для предыдущих стабильных версий, а именно 11.04 и 10.04. При установке на свой пк я выбирал 11.04 х64. С остальными компонентами интуитивно понятно — в зависимости от версии дистрибутива выбираем корректный продукт и скачиваем (рис 2).

image Рис. 2. ПО для инсталяции.

В результате в выбранной папке(у меня это Downloads) должно лежать 3 файла (рис 3):
1) cudatoolkit_4.2.9_linux_64_ubuntu11.04.run
2) devdriver_4.2_linux_64_295.41.run
3) gpucomputingsdk_4.2.9_linux.run

image Рис. 3. Просматриваем папку со скаченными файлами.

Этап 2 — Подготовка к установке

Собственно вся проблема при установке заключается в девелоперском драйвере Nvidia который необходимо установить, его и будем устанавливать первым. Для начала необходимо добавить в blacklist свободные драйвера. Открываем любым текстовым редактором blacklist (в моем случае gedit), в терминале(рис 4):
sudo gedit /etc/modprobe.d/blacklist.conf

и добавляем в самый конец blacklist'a следующие строчки:
blacklist amd76x_edac #как правило данная строчка уже добавлена, считайте ее за ориентир.
blacklist vga16fb
blacklist nouveau
blacklist lbm-nouveau
blacklist rivafb
blacklist nvidiafb
blacklist rivatv 

image
Рис. 4. Редактируем blacklist.

Сохраняем его и закрываем до лучших времен. После этого можете пробовать ставить драйвер. Но перед этим необходимо избавиться от разного рода мусора который оставляют старые драйвера, в терминале вводим:
sudo apt-get remove --purge nvidia*

После того как операция завершилась, необходимо перезагрузить пк:
sudo reboot

Но тут стоит заметить интересную вещь, что проделанные выше манипуляции не отключают драйвер nouveau, а на чистой системе именно он мешает поставить CUDA драйвер, соответственно нам необходимо опять вооружиться текстовым редактором и сделать следующие (рис 5):
sudo gedit /etc/modprobe.d/nvidia-graphics-drivers.conf

открываем данный файл и добавляем в него следующее:
blacklist nouveau
blacklist lbm-nouveau
blacklist nvidia-173
blacklist nvidia-96
blacklist nvidia-current
blacklist nvidia-173-updates
blacklist nvidia-96-updates
alias nvidia nvidia_current_updates
alias nouveau off
alias lbm-nouveau off

image
Рис. 5. Редактируем nvidia-graphics-drivers.conf.

Этап 3 — Установка драйвера, тулкита и сдк.

Данный этап покажет насколько правильно вы все сделали. И так, мы загрузились до момента выбора пользователя и ввода пароля (так называемый login screen). Именно на login screen'e нажимаем комбинацию клавиш:
ctrl + alt + F1

Попадаем в консольный режим. Необходимо залогиниться и перейти в папку со скаченными ранее программными продуктами Nvidia, а так же отключить gdm или lightdm для установки CUDA драйвера, после этого необходимо поменять права доступа для нашего драйвера и непосредственно его установить:
cd Downloads
sudo service lightdm stop
#или
sudo service gdm stop
chmod +x devdriver_4.2_linux_64_295.41.run
sudo ./devdriver_4.2_linux_64_295.41.run

Далее все просто, нажимаем «Accept» и установка началась. По ходу установки у вас спросят нужно ли установить OpenGL библиотеки — дело, как говорится хозяйское. Далее система оповестит вас об успешном установке CUDA драйвера. Необходимо снова перезагрузить систему. После перезагрузки следует установить оставшиеся компоненты, а именно cudatoolkit_4.2.9_linux_64_ubuntu11.04.run и gpucomputingsdk_4.2.9_linux.run, переходим в папку со скаченными файлами и устанавливаем нужные компоненты:
cd Downloads
sudo ./cudatoolkit_4.2.9_linux_64_ubuntu11.04.run
sudo ./gpucomputingsdk_4.2.9_linux.run

Тут можно отметить, что при установке программа попросит указать разного рода пути, собственно заморачиваться не стоит — при возникновении данной ситуации просто нажимаем «Enter».

Этап 4 — Настройка системы после установки.
Далее необходимо настроить систему, для этого в терминале вводим:
export PATH=/usr/local/cuda/bin:$PATH &&export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH

echo 'export PATH=/usr/local/cuda/bin:$PATH' >> ~/.bashrc && echo 'export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc

Ууууф ну вроде все, система настроена. Дело осталось за малым, переходим к пятому этапу.

Этап 5 — Компиляция и запуск примеров для проверки работоспособности.

Теперь необходимо лишь скомпилировать примеры и окончательно проверить работоспособность. Для этого в терминале вводим:
cd ~/NVIDIA_GPU_Computing_SDK/C 
make

При сборке примеров могут возникнуть ошибки, ну собственно тогда необходимо запустить утилиту «make» под рутом и опять попробовать собрать или же запустить утилиту make c флагом -k:
make -k

И так кульминация, осталось запустить какой либо из скомпилированных примеров, в терминале вводим (рис 6):
cd ~/NVIDIA_GPU_Computing_SDK/C/bin/linux/release
./deviceQuery

image
Рис. 6. Результат запуска программы «deviceQuery».

Ну вот в общем-то и все, что я хотел рассказать про настройку CUDA toolkit'a. Прошу строго не судить, т.к. это мой первый пост на хабре, старался делать все основательно. Надеюсь, данный пост поможет кому-то в настройке CUDA toolkit'a. Спасибо за внимание.
Share post
AdBlock has stolen the banner, but banners are not teeth — they will be back

More
Ads

Comments 19

    +1
    У меня под Ubuntu 12.04 не получилось даже просто драйвера для Gt635M запустить.
      +6
      Fuck you, NVidia!
        0
        Ну да. А самое печальное что на форуме нвидиа говорят что убунта виновата, а на форуме убунты что нвидия. Главное что баг заведен, ждем результатов. Посмотрим с чьей стороны он будет исправлен.
          0
          Да еще и Линус говорит, что нвидия виноваты :)
            0
            Кстати это видео я увидел после бессонной ночи попыток запуска драйвера от нвидия, прямо утром, когда приехал на работу :)
      +1
      пожалуйста перелейте картинки на habrastorage.org, а то на радикале они долго не проживут
        0
        Сейчас возможности нет, чуть позже сделаю.
          0
          Картинки можно вообще удалить. Вся информация есть в тексте.
          0
          Я, кстати, не понимаю, почему люди пользуются радикалом.
          Он очень удобен, или что?
        • UFO just landed and posted this here
          • UFO just landed and posted this here
            0
            Да собственно, я ни кого по-моему гайду ставить не заставляю. Ежели где-то есть лучше, то им и стоит воспользоваться. В данном гайде я попытался как можно проще расписать шаги установки, даже человек который никогда не открывал терминал, по данному гайду сможет установить себе CUDA toolkit и успешно им пользоваться. По-поводу перевода, вероятнее всего у меня плохо с английским и я дико извиняюсь за использование стандартных bash-команд.
              +1
              Всегда хотел украсть скриншот с терминалом, или сайтом nvidia. А тут везде копирайты, не получится. (:
                +1
                Можете не благодарить
                image
                image
                  0
                  Вы инфантильный. В некоторых ситуациях следует промолчать, раз нечего сказать по делу. Статья написана мной, а следовательно я могу выложить любую информацию (скриншоты, ссылки, листинги и т.д.) не противоречащую правилам ресурса. Да, и еще, мне кажется на хабре рассматриваются серьезные вещи, хочется пошутить? так пожалуйста для этого есть масса порталов где вас оценят. Если есть вопросы по делу — спрашивайте, более отвечать на подобное я не буду.
                    0
                    Не поймите меня не правильно, статья замечательная, жаль не могу плюсануть в карму. мое предыдущее сообщение исключительно полушутливый междусобойчик. прошу меня простить.
                  0
                  Ох, как же себя автор любит))
                  +1
                  Нет такой архитектуры, x64. Бывает x86_64 или amd64.
                    0
                    Благодарю, поправил.

                  Only users with full accounts can post comments. Log in, please.