s.c.o.r.p.i.o.n. 22.07.2010 14:09
Я рекомендую — CUDA & ubuntu 10.04
Так как я в настоящее время изучаю технологию CUDA от компании NVIDIA, то решил поделится инструкцией установки среды на примере ubuntu (проверено на 9.10 и 10.04).И так, что же такое CUDA? CUDA (Compute Unified Device Architecture) - технология GPGPU (General-Purpose computing on Graphics Processing Units), позволяющая программистам реализовывать на упрощённом языке программирования Си алгоритмы, выполнимые на графических процессорах ускорителей GeForce восьмого поколения и старше (GeForce 8 Series, GeForce 9 Series, GeForce 200 Series), Nvidia Quadro и Tesla компании Nvidia. Фактически, CUDA позволяет включать в текст программы на Си специальные функции. Эти функции пишутся на особом диалекте Си, и выполняются на графическом процессоре. CUDA даёт разработчику возможность по своему усмотрению организовывать доступ к набору инструкций графического ускорителя и управлять его памятью, организовывать на нём сложные параллельные вычисления. Графический ускоритель с поддержкой CUDA становится мощной программируемой открытой архитектурой, приближаясь к сегодняшним центральным процессорам.
Для начала нам потребуются последние драйверы:
wget http://developer.download.nvidia.com/compute/cuda/3_1/drivers/devdriver_3.1_linux_32_256.35.run //для 32 битной ОС
wget http://developer.download.nvidia.com/compute/cuda/3_1/drivers/devdriver_3.1_linux_64_256.35.run //для 64 битной ОС
wget http://developer.download.nvidia.com/compute/cuda/3_1/drivers/devdriver_3.1_linux_64_256.35.run //для 64 битной ОС
я использую рабочую среду GNOME.
Для остановки иксов:
1 |
|
установка драйверов:
sudo sh devdriver_3.1_linux_32_256.35.run //для 32 битной ОС
sudo sh devdriver_3.1_linux_64_256.35.run //для 64 битной ОС
sudo sh devdriver_3.1_linux_64_256.35.run //для 64 битной ОС
Запускаем иксы:
1 |
|
Скачиваем CUDA Toolkit для ubuntu:
wget http://developer.download.nvidia.com/compute/cuda/3_1/toolkit/cudatoolkit_3.1_linux_32_ubuntu9.10.run //для 32 битной ОС
wget http://developer.download.nvidia.com/compute/cuda/3_1/toolkit/cudatoolkit_3.1_linux_64_ubuntu9.10.run //для 64 битной ОС
wget http://developer.download.nvidia.com/compute/cuda/3_1/toolkit/cudatoolkit_3.1_linux_64_ubuntu9.10.run //для 64 битной ОС
Меняем права доступа:
sudo chmod +x cudatoolkit_3.1_linux_32_ubuntu9.10.run //для 32 битной ОС
sudo chmod +x cudatoolkit_3.1_linux_64_ubuntu9.10.run //для 64 битной ОС
sudo chmod +x cudatoolkit_3.1_linux_64_ubuntu9.10.run //для 64 битной ОС
Устанавливаем CUDA Toolkit:
sudo sh cudatoolkit_3.1_linux_32_ubuntu9.10.run //для 32 битной ОС
sudo sh cudatoolkit_3.1_linux_64_ubuntu9.10.run //для 64 битной ОС
в процессе установки нас спросят в какую директорию установить (я оставил по умолчанию)
sudo sh cudatoolkit_3.1_linux_64_ubuntu9.10.run //для 64 битной ОС
в процессе установки нас спросят в какую директорию установить (я оставил по умолчанию)
Скачиваем SDK:
1 |
|
Меняем права доступа:
1 |
|
Устанавливаем SDK:
1 |
|
Указываем путь к компилятору от компании NVIDIA:
export PATH=$PATH:/usr/local/cuda/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib //для 32 битной ОС
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64 //для 64 битной ОС
echo 'export PATH=$PATH:/usr/local/cuda/bin' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib' >> ~/.bashrc //для 32 битной ОС
echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64' >> ~/.bashrc //для 64 битной ОС
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib //для 32 битной ОС
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64 //для 64 битной ОС
echo 'export PATH=$PATH:/usr/local/cuda/bin' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib' >> ~/.bashrc //для 32 битной ОС
echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64' >> ~/.bashrc //для 64 битной ОС
В файл /etc/ld.so.conf.d/cuda.conf дописываем строчку:
/usr/local/cuda/lib //для 32 битной ОС
/usr/local/cuda/lib64 //для 64 битной ОС
/usr/local/cuda/lib64 //для 64 битной ОС
Создаем необходимые привязки и кэш установленных библиотек:
1 |
|
Устанавливаем компилятор версии 4.3:
sudo apt-get install g++-4.3 freeglut3-dev libxi-dev libxmu-dev //при использовании компилятора gcc версии выше 4.3 могут возникнуть ошибки (у меня параллельно стоит еще версия 4.4.3, так что проблем возникнуть не должно)
затем заменить строки в <путь где установлен SDK>/C/common/common.mk:
CXX := g++
CC := gcc
LINK := g++ -fPIC
NVCCFLAGS :=
на строки:
CXX := g++-4.3
CC := gcc-4.3
LINK := g++-4.3 -fPIC
NVCCFLAGS :=--compiler-bindir=/usr/bin/gcc-4.3
CC := gcc
LINK := g++ -fPIC
NVCCFLAGS :=
на строки:
CXX := g++-4.3
CC := gcc-4.3
LINK := g++-4.3 -fPIC
NVCCFLAGS :=--compiler-bindir=/usr/bin/gcc-4.3
Для компиляции примеров необходимо перейти в <путь где установлен SDK>/C и выполнить команду:
1 |
|
P.S.
Надеюсь инструкция кому нибудь пригодится :)

+ 0 -
ну немного про саму CUDA написал бы, что это и для чего оно нужно. не все же следят за нвидией
добавил.
Отлично!
Как раз подумываю о покупке неттопа Zotac ION с nVidia+CUDA
И задумывался как этовот работет в бубунте.
Как раз подумываю о покупке неттопа Zotac ION с nVidia+CUDA
И задумывался как этовот работет в бубунте.
Собери себе лучше сам. Я на miniITX отцу собрал на ионе с двухядерным атомом, доволен как слон, 8к.
У меня вот эта.
Жалко, что иона не было года четыре назад, купил бы себе на нем неттопик.
Жалко, что иона не было года четыре назад, купил бы себе на нем неттопик.
Спасибо большое! Сам недавно заинтересовался этой штукой от нвидии, да пока руки не дошли. Твоя инструкция очень кстати!
main вы правы) убрал там, где под
была 1 строчка.
Там где две-три строчки тоже можно убрать и засунуть в тег < code lang='bash' > < /code >
> Для начала нам потребуются последние драйвера: wget http://developer.download.nvidia.com
Ну зачем так, есть же ppa со свежими драйверами. (Сейчас точно не могу адрес сказать, лень в убунту перезагрузиться)
А так, неплохо. Реквестирую статьи собственно по написанию кода для CUDA :)
Ну зачем так, есть же ppa со свежими драйверами. (Сейчас точно не могу адрес сказать, лень в убунту перезагрузиться)
А так, неплохо. Реквестирую статьи собственно по написанию кода для CUDA :)
становится мощной программируемой открытой архитектурой, приближаясь к сегодняшним центральным процессорам.
WTF?? на некоторых классах задач(преимущественно вычислительного плана) GPU просто уделывает CPU. Именно поэтому сейчас растёт интерес к таким технологиям как CUDA и OpenCL.
lockie я просто сам качал с офф сайта драйвера, конечно можно и из репозитория взять.
а про написания кода - возможно и напишу, ну прежде чем писать код, надо разобраться в архитектуре, поэтому начну с нее, как мне кажется.
а про написания кода - возможно и напишу, ну прежде чем писать код, надо разобраться в архитектуре, поэтому начну с нее, как мне кажется.
на некоторых классах задач(преимущественно вычислительного плана) GPU просто уделывает CPU.
не на всех алгоритмах, а только на тех, которые хорошо распараллеливаются. Поэтому gpu подходит далеко не для всех типов задач.
вот бы они туда erlang прикрутили ;)
и тогда SLIx3... и полетели...
и тогда SLIx3... и полетели...
ну компании NVIDIA и Ericsson вроде не сотрудничают совсем.
биг спсб за инструкцию
токмо поставил убунту 10.04
и решил к ней прикрутить куду 3.1
в моем случае инструкция прокатила
только при компиляции примеров выкинуло ошибку
unknown command g++
вылечил доп командой sudo apt-get install build-essential g++-4.3
(прочитав это http://ubuntuforums.org/showthread.php?t=1464768)
токмо поставил убунту 10.04
и решил к ней прикрутить куду 3.1
в моем случае инструкция прокатила
только при компиляции примеров выкинуло ошибку
unknown command g++
вылечил доп командой sudo apt-get install build-essential g++-4.3
(прочитав это http://ubuntuforums.org/showthread.php?t=1464768)
Для начала нам потребуются последние драйвера:
ДрайверЫ, драйверЫ же!!!!!!!!!!!!! Драйверы, серверы, компьютеры!!
ну, тут грамотность же не только в русском. А это следствие того, что человек не в теме... Толком не понимает, о чём пишет... Грамотный в этом отношении человек никогда не напишет "драйвера", "сервера" и т.п.
Легко. Как минимум в двух случаях:
— в качестве стёба,
— в родительном падеже =) («У меня не нашлось этого драйвера.»)
— в качестве стёба,
— в родительном падеже =) («У меня не нашлось этого драйвера.»)
странно такое слышать... Вообще, для технически грамотного человека должно быть очевидно, драйвера или драйверы. И русский тут не при чём.
Просто, линуксоиды обычно более технически подкованы... Но и русский, да, знать надо. А то мало кто воспринимать будет всерьёз. Я имею ввиду грамотных людей, конечно. Тут, понимаешь ли, какая зависимость. Если человек много читает, значит человек и пишет грамотно. Если человек пишет безграмотно, значит человек сало читает. Значит и технически он малограмотный.
Просто, линуксоиды обычно более технически подкованы... Но и русский, да, знать надо. А то мало кто воспринимать будет всерьёз. Я имею ввиду грамотных людей, конечно. Тут, понимаешь ли, какая зависимость. Если человек много читает, значит человек и пишет грамотно. Если человек пишет безграмотно, значит человек сало читает. Значит и технически он малограмотный.
Меняем права доступа:
sudo chmod +x gpucomputingsdk_3.1_linux.run
Устанавливаем SDK:
sudo sh gpucomputingsdk_3.1_linux.run
sudo chmod +x gpucomputingsdk_3.1_linux.run
Устанавливаем SDK:
sudo sh gpucomputingsdk_3.1_linux.run
а разве нужно права менять, если мы дальше с помощью sh пускаем? о_0
в общем, с русским плохо. Со знанием убунты тоже слабовато... Предложение накатывать дрова с оф. сайта, а не с PPA, это пипец...
Ну так, как шпаргалку можно использовать, но повторять 1 в 1 все действа не стоит.
про права доступа точно не знаю, но дрова я ставил с офф сайта т.к. при автоматическом обновлении с PPA часто иксы падают.раза 2-3 за пол года точно было.