Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: Установка NVIDIA CUDA в Ubuntu 12.04 12.10 13.04 13.10 14.04 14.10  (Прочитано 99031 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн MYM

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
  • Ubuntu 14.04.2 x64
    • Просмотр профиля
Что такое CUDA?

Если быть кратким, то CUDA - это архитектура параллельных вычислений, позволяющая задействовать видеокарту NVIDIA, тем самым увеличить производительность системы. В основном используется для научных и математических вычислений, а также в качестве ускорителя рендера в графических редакторах. Впрочем, NVIDIA CUDA может быть с лёгкостью применена к другим областям информационных технологий.
Более подробно о технологии CUDA можно почитать на странице википедии и на официальном сайте NVIDIA.
Проверить, поддерживает ли Ваше оборудование (видеокарта) технологию CUDA, можно на официальном сайте NVIDIA.

Данная статья собрана из других статей CUDA в Ubuntu 12.10, CUDA 5.0 в Ubuntu 13.10, Установка CUDA Toolkit ...
(к сожалению, первые две были удалены, поэтому ссылки нерабочие)

Вообще, существует одна команда, которая должна решить все вопросы:
sudo apt-get install nvidia-cuda-toolkitОна должна подтянуть все зависимости, поэтому Вам только нужно нажать "Y" и перезагрузить систему. Если по каким-либо причинам после выполнения данной команды у Вас всё же не работает CUDA или Вы хотите установить самые свежие драйвера и CUDA Toolkit или Вы просто хотите установить его вручную, то данная статья для Вас.


Подготовка

Устанавливать будем последнюю версию CUDA с последними драйверами NVIDIA на последнюю версию Ubuntu  :).

Скачиваем драйвера и CUDA с сайта NVIDIA:
Драйвер (выбираете свою видеокарту и разрядность системы)
CUDA (последняя версия для Ubuntu 11.10)
или
CUDA 5.5 RC (доступна с 20 июня 2013 года)

Всё скачанное перемещаем в корневую папку пользователя (например: /home/user/) для удобства. И разрешаем запуск файла как программы:
ПКМ — Свойства — Права — Разрешить исполнение файла как программы
Скачанные файлы будут иметь следующий формат (у вас могут отличаться):
cuda_5.0.35_linux_64_ubuntu11.10-1.run, NVIDIA-Linux-x86_64-319.23.run (для 64-битных систем) или
cuda_5.0.35_linux_32_ubuntu11.10-1.run, NVIDIA-Linux-x86-319.23.run (для 32-битных систем) или
cuda-5.5.11_linux_64.run (CUDA 5.5 RC для 64-битных систем)
cuda-5.5.11-linux_32.run (CUDA 5.5 RC для 32-битных систем)
Чтобы узнать разрядность своей системы, необходимо в терминале ввести
uname -i

Установка драйвера

Для установки драйверов на гибридную графику воспользуйтесь статьёй на форуме nVidia Optimus (Гибридная графика nVidia + Intel) [Wiki].

1 способ

Спасибо Nikki1993
Очень простой, с установкой свежих драйверов из репозитория:
sudo add-apt-repository ppa:xorg-edgers/ppa
sudo apt-get update
sudo apt-get install nvidia-325 nvidia-settings-325
sudo apt-add-repository -r ppa:xorg-edgers/ppa

Возможна установка из репозитория стабильных драйверов:
sudo apt-get install nvidia-currentПерезагружаемся.
sudo reboot
2 способ

Устанавливаем необходимые пакеты, если они не были установлены ранее:
sudo apt-get install gcc-4.6 freeglut3-dev
Чтобы посмотреть версию установленного драйвера, надо набрать:
nvidia-settings -v
Перед установкой необходимо удалить все драйвера NVIDIA
Удаляем драйвера NVIDIA, поставляемые сообществом Ubuntu:
sudo apt-get remove --purge nvidia*
Если установлены драйвера разработчика, то их удаляем тоже:
sudo ./NVIDIA-Linux-x86_64-319.23.run --uninstall(у вас версия может отличаться
NVIDIA-Linux-x86_64-XXX.XX - для 64-битных систем,
NVIDIA-Linux-x86-XXX.XX - для 32-битных систем)

Затем надо заменить компилятор по умолчанию, так как по умолчанию в Ubuntu 12.04 12.10 13.04 установлена версия gcc-4.7, в Ubuntu 13.10 - версия gcc-4.8, а драйверу необходим gcc-4.6:
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 20
Переключаемся в текстовый режим Ctrl+Alt+F1, вводим свой логин и пароль, отключаем менеджер рабочих столов lightdm (для Unity, указан в примере) или gdm (для Gnome) (для KDE, LXDE и прочих менеджеров команд не знаю, можете дополнить в комментариях) и устанавливаем драйвер:
sudo service lightdm stop
sudo ./NVIDIA-Linux-x86_64-319.23.run
(у вас версия может отличаться
NVIDIA-Linux-x86_64-XXX.XX - для 64-битных систем,
NVIDIA-Linux-x86-XXX.XX - для 32-битных систем)
Перезагружаемся.
sudo reboot

Установка CUDA

После загрузки открываем терминал (Ctrl+Alt+T) и устанавливаем CUDA:
sudo ./cuda_5.0.35_linux_64_ubuntu11.10-1.run(у вас версия может отличаться
cuda_5.0.35_linux_64_ubuntu11.10-1.run - для 64-битных систем,
cuda_5.0.35_linux_32_ubuntu11.10-1.run - для 32-битных систем)

Появятся условия соглашения с лицензией, надо пролистать до конца и набрать
accept(accept - принять, соглашаетесь с условиями лицензии)
Затем набрать на следующие запросы
no
yes
[Enter]
no
(no - не устанавливаем драйвер, входящий в пакет CUDA, так как он уже установлен,
yes - устанавливаем Toolkit в директорию по умолчанию (/usr/local/cuda-5.0),
no - не устанавливаем примеры, если кто-то хочет, можно установить)

Для правильной работы драйвера NVIDIA с CUDA 5.0 необходимо присоединить компилятор:
sudo ln -s /usr/bin/gcc-4.6 /usr/local/cuda-5.0/bin/gcc
В конце меняем компилятор по умолчанию на последний (с версии 4.6 до 4.8 ):
sudo update-alternatives --remove-all gcc

FAQ Часто возникающие вопросы

После установки драйвера NVIDIA и перезагрузки система не загружается.
Если после перезагрузки система не загружается или зависает, то очевидно вы уже устанавливали сторонний драйвер NVIDIA. Чтобы его удалить, надо во время загрузки нажать Ctrl+Alt+F1 (можно воспользоваться и режимом восстановления, для этого надо удерживать Shift во время загрузки, появится загрузчик Grub, из предлагаемое списка надо выбрать ubuntu (режим восстановления)). Для удаления запустить файл с флагом --uninstall:
sudo ./NVIDIA-Linux-x86_64-319.23.run --uninstall(формат команды может быть разный в зависимости от версии установленного драйвера:
NVIDIA-Linux-x86_64-XXX.XX - для 64-битных систем,
NVIDIA-Linux-x86-XXX.XX - для 32-битных систем,
будьте внимательней)
И установить по-новой.
Чтобы посмотреть версию установленного драйвера надо набрать:
nvidia-settings -v
Спасибо G-Ray
При добавлении и установке из репозитория свежих драйверов система не загружается.
Очевидно, имеющиеся драйвера пытаются скомпилироваться под несуществующее ядро, либо свежий драйвер не поддерживает оборудование.
Для решения проблемы необходимо при загрузке системы зайти в загрузчик grub (чтобы зайти в загрузчик необходимо удерживать клавишу Shift), выбрать загружаемую систему (по умолчанию ubuntu) и внести параметры загрузки ядра (клавиша E), удалив:
load_video
gfxmode $linux_gfx_mode
В конце строки "...quiet splash" удалить параметр $vt_handoff и дописать:
nomodeset textЗагрузиться с данными параметрами, нажав F10. Должен отобразиться текстовый режим, в котором необходимо ввести логин и пароль. Далее необходимо удалить все драйвера NVIDIA:
sudo apt-get remove --purge nvidia*Установить стабильный:
sudo apt-get install nvidia-currentИ перезагрузиться:
sudo reboot
После обновления ядра Ubuntu система не загружается.
На самом деле она загружается, просто драйвера, скачанные с сайта NVIDIA (а не из репозитория Ubuntu) устанавливаются только под существующее ядро.
Поэтому необходимо установить драйвер заново, либо установить драйвер NVIDIA из репозитория.
Для конфигурация драйвера NVIDIA в консольном режиме необходимо набрать команду:
sudo nvidia-xconfig
Не могу (не получается) обновить систему после установки CUDA.
Возможно, Вы не вернули последний компилятор, который установлен в системе по умолчанию. Надо выполнить команду:
sudo update-alternatives --remove-all gccИ перезагрузить систему.

При вводе пароля не загружается рабочий стол (выкидывает на приглашение ввода пароля и выбора пользователя)
Причиной является отсутствие прав на редактирование файла учёта записей пользователей, либо отсутствие в файле запуска иксов Вашей учётной записи. Решается проблема следующим образом (здесь предполагается, что Вы находитесь в текстовом режиме).
1 способ. Возврат прав на редактирование файла учёта записей пользователей:
sudo chown username:username /home/username/.Xauthorityгде username - Ваш логин.
2 способ. Удаление файла учёта записей пользователей. При следующем запуске системы файл сгенерируется (возврат предыдущей рабочей версии) автоматически:
sudo rm -rf .Xauthority
« Последнее редактирование: 06 Апрель 2015, 23:38:26 от MYM »
Ubuntu 14.04.2 x64, AMD Phenom II 1055T, 16Gb, NVIDIA GeForce GTX660

Оффлайн Nikki1993

  • Заслуженный пользователь
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3261
  • Owner of Dell XPS 13 Developer Edition :D
    • Просмотр профиля
Re: Установка NVIDIA CUDA в Ubuntu 12.04 12.10 13.04 13.10
« Ответ #1 : 26 Май 2013, 00:01:16 »
MYM,
а установить драйвера разве через ppa нельзя? а то этот способ через .run, мягко говоря опасный.
First i was like :0 Then i was like :D But now i am like(╯°□°)╯︵ ┻━┻
http://www.abload.de/img/banner_505uxa.png

Оффлайн Nikki1993

  • Заслуженный пользователь
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3261
  • Owner of Dell XPS 13 Developer Edition :D
    • Просмотр профиля
Re: Установка NVIDIA CUDA в Ubuntu 12.04 12.10 13.04 13.10
« Ответ #2 : 26 Май 2013, 00:02:25 »
прикрепил, старые темы сейчас удалю.
First i was like :0 Then i was like :D But now i am like(╯°□°)╯︵ ┻━┻
http://www.abload.de/img/banner_505uxa.png

Оффлайн MYM

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
  • Ubuntu 14.04.2 x64
    • Просмотр профиля
Re: Установка NVIDIA CUDA в Ubuntu 12.04 12.10 13.04 13.10
« Ответ #3 : 26 Май 2013, 00:09:36 »
Через ppa можно, этот вопрос имеется в FAQ (второй). Опасность есть и я написал в чём она заключается. В принципе ничего страшного, просто придётся при каждом обновлении ядра устанавливать драйвер NVIDIA, а это всего пару команд.
В статье описан способ установки последних самых свежих драйверов.
Для тех, кто не хочет мучений с драйверами NVIDIA во время обновления ядра Linux, советую установить драйвера из репозитория:
sudo apt-get install nvidia-currentТогда и необходимость в смене компилятора тоже пропадает.
Ubuntu 14.04.2 x64, AMD Phenom II 1055T, 16Gb, NVIDIA GeForce GTX660

Оффлайн Nikki1993

  • Заслуженный пользователь
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3261
  • Owner of Dell XPS 13 Developer Edition :D
    • Просмотр профиля
Re: Установка NVIDIA CUDA в Ubuntu 12.04 12.10 13.04 13.10
« Ответ #4 : 26 Май 2013, 00:13:48 »
MYM,
откроую секрет установки последний драйверов без геммороя тока тсс :D
sudo add-apt-repository ppa:xorg-edgers/ppa
sudo apt-get update
sudo apt-get install nvidia-319 nvidia-settings-319
sudo apt-add-repository -r ppa:xorg-edgers/ppa
First i was like :0 Then i was like :D But now i am like(╯°□°)╯︵ ┻━┻
http://www.abload.de/img/banner_505uxa.png

Оффлайн neon1ks

  • Старожил
  • *
  • Сообщений: 1138
    • Просмотр профиля
    • Блог молодого разработчика
Re: Установка NVIDIA CUDA в Ubuntu 12.04 12.10 13.04 13.10
« Ответ #5 : 26 Май 2013, 15:21:16 »
Уже много раз видел информация про NVIDIA CUDA но в дела не вдавался.

Добавьте, пожалуйста, еще немного информации о NVIDIA CUDA: что это такое, где это применяется и как.
Так будет тема более полной.
« Последнее редактирование: 26 Май 2013, 15:29:32 от neon1ks »

Оффлайн jura12

  • Старожил
  • *
  • Сообщений: 1128
  • 16.04 server, manjaro
    • Просмотр профиля
Re: Установка NVIDIA CUDA в Ubuntu 12.04 12.10 13.04 13.10
« Ответ #6 : 26 Май 2013, 16:44:27 »
Nikki1993, раньше предлагали специальный видеодрайвер для девелоперов в формате run. а в репозитариях продакшен. но работать все равно должно если совпадают значения версии куда: куда видеодрайвера >= куда железа =< куда тулкит.
сопротивление бессполезно

Оффлайн volnes

  • Участник
  • *
  • Сообщений: 128
  • Linux begginer
    • Просмотр профиля
Re: Установка NVIDIA CUDA в Ubuntu 12.04 12.10 13.04 13.10
« Ответ #7 : 27 Май 2013, 12:27:25 »
Есть ли смысл ставить сие, если я имеею бук на optimus как оно работать будет? Совместимо ли оно с буками?
Кто ставил отпишитесь, действительно ли увеличивается производительность?
« Последнее редактирование: 27 Май 2013, 12:30:45 от volnes »
Notebook: Core™ i3-2310M + Nvidia GeForce 540m + 8GB RAM
xUbuntu 13.04

Оффлайн Nikki1993

  • Заслуженный пользователь
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3261
  • Owner of Dell XPS 13 Developer Edition :D
    • Просмотр профиля
Re: Установка NVIDIA CUDA в Ubuntu 12.04 12.10 13.04 13.10
« Ответ #8 : 27 Май 2013, 22:15:50 »
volnes,
люди ставили. У кого-то работоло у кого-то нет. сам не пробовал так как не нужна она мне :D
First i was like :0 Then i was like :D But now i am like(╯°□°)╯︵ ┻━┻
http://www.abload.de/img/banner_505uxa.png

Оффлайн Kernel ops

  • Старожил
  • *
  • Сообщений: 1389
    • Просмотр профиля
Re: Установка NVIDIA CUDA в Ubuntu 12.04 12.10 13.04 13.10
« Ответ #9 : 27 Май 2013, 22:19:59 »
подпишусь. сейчас как раз интересуюсь подборами паролей к архивам
root@shkiper:~$mount -t btrfs /dev/head1 /mnt && ls /mnt | grep brain | xargs -i sh /mnt/{}

Оффлайн MYM

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
  • Ubuntu 14.04.2 x64
    • Просмотр профиля
Re: Установка NVIDIA CUDA в Ubuntu 12.04 12.10 13.04 13.10
« Ответ #10 : 28 Май 2013, 01:06:56 »
Есть ли смысл ставить сие, если я имеею бук на optimus как оно работать будет? Совместимо ли оно с буками?
Кто ставил отпишитесь, действительно ли увеличивается производительность?

У меня стоит CUDA на Ubuntu 13.10 x64, работает на видеокарте NVIDIA GeForce GTX660. Использую для параллельных вычислений в проекте BOINC, а также для рендера в программе Blender. Производительность по сравнению с ЦП (у меня AMD Phenom II 1055T X6 @ 3.3 GHz) увеличивается приблизительно в 6 раз. Также имеется видеокарта NVIDIA GeForce 9600GT, она работает хуже по сравнению с ЦП примерно в 1,5 раза и по сравнению с GTX660 - в 11 раз.

Тестировал данные программы и на ноутбуках - работает :). Проверить производительность не было возможности. Предлагаю посмотреть результаты тестов работы видеокарт по рендеру сцены с BMW1M по ссылке.

Стоит отметить, что технология CUDA появилась с выходом восьмого поколения видеокарт NVIDIA (8ХХХ) и если Ваш ноутбук (или видеокарта) куплен не ранее 2007 года, то на нём (ней) должен присутствовать видеопроцессор с ядрами CUDA. Проверить это можно на сайте NVIDIA. Соответственно он поддерживает технологию CUDA.
Ubuntu 14.04.2 x64, AMD Phenom II 1055T, 16Gb, NVIDIA GeForce GTX660

Оффлайн Kernel ops

  • Старожил
  • *
  • Сообщений: 1389
    • Просмотр профиля
Re: Установка NVIDIA CUDA в Ubuntu 12.04 12.10 13.04 13.10
« Ответ #11 : 28 Май 2013, 07:51:25 »
MYM,
а производительность однго ядра CUDA меняется с новыми видеокартами?
root@shkiper:~$mount -t btrfs /dev/head1 /mnt && ls /mnt | grep brain | xargs -i sh /mnt/{}

Оффлайн jura12

  • Старожил
  • *
  • Сообщений: 1128
  • 16.04 server, manjaro
    • Просмотр профиля
Re: Установка NVIDIA CUDA в Ubuntu 12.04 12.10 13.04 13.10
« Ответ #12 : 02 Июнь 2013, 16:20:00 »
меняется изза частоты.
сопротивление бессполезно

Оффлайн G-Ray

  • Новичок
  • *
  • Сообщений: 9
    • Просмотр профиля
Re: Установка NVIDIA CUDA в Ubuntu 12.04 12.10 13.04 13.10
« Ответ #13 : 15 Июнь 2013, 15:12:21 »
Ubuntu 13.10, NVIDIA GeForce 560 Ti. Поставил из xorg-edgers/ppa драйвера nvidia-319. До этого стояли nvidia-current, их не удалил(решил, что система не дура, заменит)
После этого увидел, что новое ядро вышло, обновил(все в ту же сессию, что и установка nvidia-319). Перезагрузился, радостно ловлю черный экран. CUDA поставить не успел.
Как вернуть все как было? Т.е. я так понимаю, мне надо сейчас вернуть nvidia-current, но как мне это сделать? Я слышу, что система загрузилась(реле на звуковой карте щелкает), но я не могу получить доступ к системе, Ctrl-Alt-F1(как и F2-F12) консоли мне не показывает, все тот же черный экран с мигающим символом ввода. Пробовал под другими версиями ядра загрузиться из граба - тот же результат. Режим восстановления я не понял. Он меня грузит в read-only, и предлагает менюшку. Я пробовал варианты с low-graphics mode(показывал нормально отрисованное окно, после чего говорил, что сейчас перезапустит иксы и дальше тот же черный экран), пробовал network(тот же черный экран), пробовал promt to root shell(действительно дает рут и консоль, но система остается в read-only). Как-то так. Понимаю, что сам виноват, но все же - что делать?
« Последнее редактирование: 15 Июнь 2013, 15:15:27 от G-Ray »

Оффлайн MYM

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
  • Ubuntu 14.04.2 x64
    • Просмотр профиля
Re: Установка NVIDIA CUDA в Ubuntu 12.04 12.10 13.04 13.10
« Ответ #14 : 15 Июнь 2013, 15:57:30 »
G-Ray,

Во время загрузки Ubuntu, когда ещё не появился логотип (или экран с индикацией загрузки) необходимо перейти в текстовый режим, нажав Ctrl+Alt+F1. Сделать это надо в определённый момент, так как до загрузки системы переход в текстовый режим невозможен, а после загрузки неправильно установленных драйверов NVIDIA графика не отображается.

Попробуйте нажимать Ctrl+Alt+F1 чаще. Когда зайдёте в текстовый режим, необходимо удалить все драйвера NVIDIA:
sudo apt-get remove --purge nvidia*И установить стабильный драйвер:
sudo apt-get install nvidia-currentА лучше с установкой CUDA:
sudo apt-get install nvidia-cuda-toolkit
Если всё же не получается загрузить систему (по прежнему чёрный экран), то воспользуйтесь LiveCD.
« Последнее редактирование: 15 Июнь 2013, 15:59:06 от MYM »
Ubuntu 14.04.2 x64, AMD Phenom II 1055T, 16Gb, NVIDIA GeForce GTX660

 

Страница сгенерирована за 0.158 секунд. Запросов: 23.