Nvidia driver opencl: OpenCL | NVIDIA Developer

Содержание

NVIDIA DRIVERS Linux x64 (AMD64/EM64T) Display Driver

Обратите внимание, что многие сборки Linux предлагают собственные пакеты графических драйверов NVIDIA в родном формате управления сборкой. Они могут лучше сочетаться с остальной структурой сборки, и вы можете захотеть использовать их, а не официальный пакет NVIDIA.

Заметьте также, что пользователи SuSE должны ознакомиться с практическими рекомендациями по установке SuSE перед тем как скачивать драйвер. Инструкции по становке: после загрузки драйвера перейдите в каталог, содержащий пакет драйвера и установите его, запустив командой sh ./NVIDIA-Linux-x86_64-304.64-pkg1.run

На одном из завершающих этапов установки будет предложено обновить файл конфигурации. Разрешите программе обновить файл, отредактируйте его вручную под использование драйвера NVIDIA или запустите nvidia-xconfig Смотрите README для более подробных инструкций.

For further information please visit our forum, https://devtalk.

nvidia.com/default/board/98/linux/ .

GeForce 600 Series:

GeForce GTX 690, GeForce GTX 680, GeForce GTX 670, GeForce GTX 660 Ti, GeForce GTX 660, GeForce GTX 650 Ti, GeForce GTX 650, GeForce GT 645, GeForce GT 640, GeForce GT 630, GeForce GT 620, GeForce GT 610, GeForce 605

GeForce 600M Series (Notebooks):

GeForce GTX 680M, GeForce GTX 675MX, GeForce GTX 675M, GeForce GTX 670MX, GeForce GTX 670M, GeForce GTX 660M, GeForce GT 650M, GeForce GT 645M, GeForce GT 640M, GeForce GT 640M LE, GeForce GT 635M, GeForce GT 630M, GeForce GT 620M, GeForce 610M

GeForce 500 Series:

GeForce GTX 590, GeForce GTX 580, GeForce GTX 570, GeForce GTX 560 Ti, GeForce GTX 560 SE, GeForce GTX 560, GeForce GTX 555, GeForce GTX 550 Ti, GeForce GT 545, GeForce GT 530, GeForce GT 520, GeForce 510

GeForce 500M Series (Notebooks):

GeForce GTX 580M, GeForce GTX 570M, GeForce GTX 560M, GeForce GT 555M, GeForce GT 550M, GeForce GT 540M, GeForce GT 525M, GeForce GT 520M, GeForce GT 520MX

GeForce 400 Series:

GeForce GTX 480, GeForce GTX 470, GeForce GTX 465, GeForce GTX 460 SE v2, GeForce GTX 460 SE, GeForce GTX 460, GeForce GTS 450, GeForce GT 440, GeForce GT 430, GeForce GT 420, GeForce 405

GeForce 400M Series (Notebooks):

GeForce GTX 485M, GeForce GTX 480M, GeForce GTX 470M, GeForce GTX 460M, GeForce GT 445M, GeForce GT 435M, GeForce GT 425M, GeForce GT 420M, GeForce GT 415M, GeForce 410M

GeForce 300 Series:

GeForce GT 340, GeForce GT 330, GeForce GT 320, GeForce 315, GeForce 310

GeForce 300M Series (Notebooks):

GeForce GTS 360M, GeForce GTS 350M, GeForce GT 335M, GeForce GT 330M, GeForce GT 325M, GeForce GT 320M, GeForce 320M, GeForce 315M, GeForce 310M, GeForce 305M

GeForce 200 Series:

GeForce GTX 295, GeForce GTX 285, GeForce GTX 280, GeForce GTX 275, GeForce GTX 260, GeForce GTS 250, GeForce GTS 240, GeForce GT 230, GeForce GT 240, GeForce GT 220, GeForce G210, GeForce 210, GeForce 205

GeForce 200M Series (Notebooks):

GeForce GTX 285M, GeForce GTX 280M, GeForce GTX 260M, GeForce GTS 260M, GeForce GTS 250M, GeForce GT 240M, GeForce GT 230M, GeForce GT 220M, GeForce G210M

GeForce 100 Series:

GeForce GT 140, GeForce GT 130, GeForce GT 120, GeForce G100

GeForce 100M Series (Notebooks):

GeForce GTS 160M, GeForce GT 130M, GeForce GT 120M, GeForce G 110M, GeForce G 105M, GeForce G 103M, GeForce G 102M

GeForce 9 Series:

GeForce 9800 GX2, GeForce 9800 GTX/GTX+, GeForce 9800 GT, GeForce 9600 GT, GeForce 9600 GSO, GeForce 9600 GSO 512, GeForce 9600 GS, GeForce 9500 GT, GeForce 9500 GS, GeForce 9400 GT, GeForce 9400, GeForce 9300 GS, GeForce 9300 GE, GeForce 9300 SE, GeForce 9300, GeForce 9200, GeForce 9100

GeForce 9M Series (Notebooks):

GeForce 9800M GTX, GeForce 9800M GTS, GeForce 9800M GT, GeForce 9800M GS, GeForce 9700M GTS, GeForce 9700M GT, GeForce 9650M GT, GeForce 9650M GS, GeForce 9600M GT, GeForce 9600M GS, GeForce 9500M GS, GeForce 9500M G, GeForce 9400M G, GeForce 9400M, GeForce 9300M GS, GeForce 9300M G, GeForce 9200M GS, GeForce 9100M G

GeForce 8 Series:

GeForce 8800 Ultra, GeForce 8800 GTX, GeForce 8800 GTS 512, GeForce 8800 GTS, GeForce 8800 GT, GeForce 8800 GS, GeForce 8600 GTS, GeForce 8600 GT, GeForce 8600 GS, GeForce 8500 GT, GeForce 8400 GS, GeForce 8400 SE, GeForce 8400, GeForce 8300 GS, GeForce 8300, GeForce 8200, GeForce 8200 /nForce 730a, GeForce 8100 /nForce 720a

GeForce 8M Series (Notebooks):

GeForce 8800M GTX, GeForce 8800M GTS, GeForce 8700M GT, GeForce 8600M GT, GeForce 8600M GS, GeForce 8400M GT, GeForce 8400M GS, GeForce 8400M G, GeForce 8200M G, GeForce 8200M

GeForce 7 Series:

GeForce 7025 / NVIDIA nForce 630a, GeForce 7050 PV / NVIDIA nForce 630a, GeForce 7050 / NVIDIA nForce 610i, GeForce 7050 / NVIDIA nForce 630i, GeForce 7100 / NVIDIA nForce 630i, GeForce 7100 / NVIDIA nForce 620i, GeForce 7100 GS, GeForce 7150 / NVIDIA nForce 630i, GeForce 7300 SE / 7200 GS, GeForce 7300 LE, GeForce 7300 GS, GeForce 7300 GT, GeForce 7350 LE, GeForce 7500 LE, GeForce 7550 LE, GeForce 7600 LE, GeForce 7600 GS, GeForce 7600 GT, GeForce 7650 GS, GeForce 7800 GT, GeForce 7800 GS, GeForce 7800 GTX, GeForce 7800 SLI, GeForce 7900 GS, GeForce 7900 GT/GTO, GeForce 7900 GTX, GeForce 7950 GT, GeForce 7950 GX2

GeForce Go 7 Series (Notebooks):

GeForce Go 7950 GTX, GeForce Go 7900 GS, GeForce Go 7800 GTX, GeForce Go 7800, GeForce Go 7700, GeForce Go 7600, GeForce Go 7400, GeForce Go 7300, GeForce Go 7200, GeForce 7150M / nForce 630M, GeForce 7000M / nForce 610M

GeForce 6 Series:

GeForce 6100, GeForce 6100 nForce 400, GeForce 6100 nForce 405, GeForce 6100 nForce 420, GeForce 6150, GeForce 6150 LE, GeForce 6150LE / Quadro NVS 210S , GeForce 6150SE nForce 430, GeForce 6200, GeForce 6200 A-LE, GeForce 6200 LE, GeForce 6200 TurboCache(TM), GeForce 6200SE TurboCache(TM), GeForce 6250, GeForce 6500, GeForce 6600, GeForce 6600 GT, GeForce 6600 LE, GeForce 6600 VE, GeForce 6610 XL, GeForce 6700 XL, GeForce 6800, GeForce 6800 GS, GeForce 6800 GS/XT, GeForce 6800 GT, GeForce 6800 LE, GeForce 6800 Ultra, GeForce 6800 XE, GeForce 6800 XT

Quadro Series:

Quadro K5000, Quadro 6000, Quadro 5000, Quadro 4000, Quadro 2000, Quadro 2000D, Quadro 600, Quadro 410, Quadro 400

Quadro Series (Notebooks):

Quadro K5000M, Quadro K4000M, Quadro K3000M, Quadro K2000M, Quadro K1000M, Quadro 5010M, Quadro 5000M, Quadro 4000M, Quadro 3000M, Quadro 2000M, Quadro 1000M

Quadro FX Series:

Quadro CX, Quadro FX 350, Quadro FX 370, Quadro FX 370 Low Profile, Quadro FX 380, Quadro FX 380 Low Profile, Quadro FX 470, Quadro FX 540, Quadro FX 550, Quadro FX 560, Quadro FX 570, Quadro FX 580, Quadro FX 1400, Quadro FX 1700, Quadro FX 1500, Quadro FX 1800, Quadro FX 2000, Quadro FX 3450, Quadro FX 3500, Quadro FX 3700, Quadro FX 3800, Quadro FX 4000, Quadro FX 4500, Quadro FX 4500 X2, Quadro FX 4600, Quadro FX 4700 X2, Quadro FX 4800, Quadro FX 5500, Quadro FX 5600, Quadro FX 5800

Quadro FX Series (Notebooks):

Quadro FX 3800M, Quadro FX 3700M, Quadro FX 3600M, Quadro FX 2800M, Quadro FX 2700M, Quadro FX 1800M, Quadro FX 1700M, Quadro FX 1600M, Quadro FX 880M, Quadro FX 770M, Quadro FX 570M, Quadro FX 380M, Quadro FX 360M

Quadro Blade/Embedded Series :

Quadro 500M, Quadro FX 560M, Quadro FX 370M, Quadro FX 770M, Quadro FX 880M, Quadro FX 1600M, Quadro FX 2800M, Quadro FX 3600M, Quadro NVS 120M

Quadro NVS Series:

Quadro NVS 285, Quadro NVS 290, Quadro NVS 295, NVS 510, NVS 310, NVS 300, Quadro NVS 420, Quadro NVS 440, Quadro NVS 450

Quadro NVS Series (Notebooks):

NVS 5400M, NVS 5200M, NVS 5100M, NVS 4200M, NVS 3100M, NVS 2100M, Quadro NVS 510M, Quadro NVS 320M, Quadro NVS 160M, Quadro NVS 150M, Quadro NVS 140M, Quadro NVS 135M, Quadro NVS 130M, Quadro NVS 120M, Quadro NVS 110M

Quadro Plex Series:

Quadro Plex Model II, Quadro Plex D Series, Quadro Plex Model IV, Quadro Plex 7000

Quadro Sync Series:

Quadro Sync, Quadro G-Sync II

Quadro SDI:

Quadro SDI

NVS Series:

Quadro NVS 285, Quadro NVS 290, Quadro NVS 295, NVS 510, NVS 310, NVS 300, Quadro NVS 420, Quadro NVS 440, Quadro NVS 450

NVS Series (Notebooks):

NVS 5400M, NVS 5200M, NVS 5100M, NVS 4200M, NVS 3100M, NVS 2100M, Quadro NVS 320M, Quadro NVS 160M, Quadro NVS 150M, Quadro NVS 140M, Quadro NVS 135M, Quadro NVS 130M, Quadro NVS 120M, Quadro NVS 110M

K-Series:

Tesla K10

C-Class:

Tesla C2075, Tesla C2070, Tesla C2050, Tesla C1060, Tesla C870

M-Class:

M2090, M2075, M2070, M2070-Q, M2050, M1060

X-Class:

Tesla X2090

ION (Desktops):

ION

ION (Notebooks):

ION

ION LE (Desktops):

ION LE

ION LE (Notebooks):

ION LE

OpenCL от nVidia / Хабр

Как известно, технология CUDA доступна только для видеокарт nVidia. Из-за этого факта часто возникают вопросы: как быть владельцам видеокарт ATI Radeon, и стоит ли вообще использовать решения, доступные на аппаратных средствах только одного производителя.

В связи с этим, я решил немного уточнить, что же из себя представляет CUDA, и какую роль она занимает в имплементации унифицированных стандартах GPGPU на видеокартах nVidia.

Программные реализации GPGPU

В настоящий момент на рынке еще нет универсальной технологий для использования GPU в неграфических вычислениях, хотя разработки идут полным ходом.

Среди разрабатываемых технологий особо стоит отметить Microsoft DirectX Compute и OpenCL, которую предложила Apple. Из заголовка можно догадаться, что сегодня речь пойдет об OpenCL и её реализации от nVidia.

OpenCL — открытый стандарт для GPGPU, который разрабатывается консорциумом Khronos (khronos.org), и по замыслам, позволит использовать мощности GPU на различных программных и аппаратных платформах.

Возможно, у некоторых возникнет вопрос: зачем nVidia разрабатывает CUDA, а ATI – Stream, не проще было бы сразу договориться о принятии общего стандарта. Но на самом деле все не так просто как кажется, и дело не только в политике производителей, хотя и в ней тоже. Так уж случилось, что развитие GPU идет несколько другим путем, в отличие CPU, где общая архитектура унифицирована достаточно давно. Графические процессоры различных производителей изначально имели совершенно разную архитектуру. Например, не существует общих команд для GPU разных производителей, не существует универсального ассемблера. И ответ касательно CUDA и Stream весьма прост – это и есть те аппаратно-зависимые прослойки поверх которых и строятся унифицированные архитектуры OpenCL и DirectX Compute. Если кто-то читал предыдущие записи по nVidia CUDA, то, наверное, заметил упоминание о CUDA driver API. CUDA driver API является той самой аппаратно-зависимой прослойка для работы с GPU от nVidia. В целом, программный стек для работы с nVidia GPU имеет следующий вид (можно найти в официальной документации по CUDA):

Как можно видеть, OpenCL и DX11 Compute работают поверх технологии CUDA.

Когда ждать OpenCL от nVidia

Не так давно консорциум Khronos обнародовал первую версию спецификации OpenCL, которая доступна на сайте данной организации в виде pdf-документа.

Компания nVidia так же представила roadmap по поддержке OpenCL в своей продукции:

Правда, beta-версия скорее всего будет доступна только для партнеров nVidia. Остается надеяться, что уже в середине года появится полноценная имплементация OpenCL, которой сможет воспользоваться любой желающий.

Заключение

Надеюсь, что немного развеял туман войны относительно поддержки OpenCL кампанией nVidia, и какую роль в этом играет CUDA.

Как я могу заставить nVidia CUDA или OpenCL работать на ноутбуке с дискретной картой nVidia / интегрированной графикой Intel?

Вот полный ответ (на основе ответов Алекса Фалаппа и Лекенштейна ):

Действительно возможно получить графические процессоры nVidia Optimus для запуска CUDA в Ubuntu.

Шмель не нужен для CUDA. (подробнее о Шмеле : поддерживается ли Ubuntu NVIDIA GeForce с технологией Optimus? )

Тем не менее, когда вам нужно , чтобы показать графические примеры с использованием OpenGL, вы делаете что — то нужно , как Шмель для систем Optimus, в противном случае вы либо не видите что — либо на экране или получить сообщение об ошибке:

ERROR: Support for necessary OpenGL extensions missing. 

Если вам нужно использовать графически насыщенную программу, такую ​​как Blender, Bumblebee в настоящее время является хорошим способом.

Перейдите к Установке CUDA, если вы не хотите устанавливать Bumblebee (т.е. если вам не нужен OpenGL).
В противном случае читайте дальше.

Установка шмеля

Следуйте инструкциям в разделе Насколько хорошо работают ноутбуки с Nvidia Optimus?

В настоящее время они обновляются разработчиком Bumblebee.

После установки Bumblebee и перезагрузки вы сможете выбрать графическую карту, которая будет использоваться при запуске программ с помощью optirunпрограммы.
Например:

optirun blender

Чтобы быстро проверить, все ли работает правильно, используйте:

optirun glxspheres

Вы увидите программу с красочными вращающимися сферами, если все работает правильно.

Убедитесь, что строка поставщика GL в терминале содержит слово nvidia .
Если вы запускаете только glxspheres, вы увидите, что строка поставщика содержит вместо карты Intel.

При запуске программы CUDA вам необходимо установить инструментарий CUDA и драйвер nvidia. Если вы собираетесь собирать программы, вам также понадобится SDK. Установщики могут быть найдены на http://developer.nvidia.com/cuda-downloads , пожалуйста, прочитайте приведенные ниже инструкции, прежде чем ставить свой ноутбук Optimus.

Установка CUDA

Водитель

Я рекомендую установить драйвер nvidia из диспетчера пакетов Ubuntu. Если вы устанавливаете Bumblebee, вам не нужно беспокоиться о драйвере. В противном случае после установки отключите библиотеки nvidia, как описано на /ubuntu//a/107746/6969 . Если вы этого не сделаете, вы потеряете 3D-ускорение и, возможно, застрянете в низком разрешении.

Инструментарий

В основном вам нужно скачать установщик, сделать его исполняемым и запустить его. — Скачать установщик. По состоянию на 9 января 2013 года 5.0.35 является самым последним драйвером. Поскольку у меня 64-битная ОС, я использую 64-битный 11.10 пакет Ubuntu (хотя я работаю 12.10) — сделайте его исполняемым и разрешите установку для /usr/local/cuda:

chmod +x cudatoolkit_5.0.35_linux_64_ubuntu11.10-1.run
sudo ./cudatoolkit_5.0.35_linux_64_ubuntu11.10-1.run

Когда появляется сообщение об установке, которое спрашивает вас, где установить CUDA, просто нажмите Enter, чтобы принять значение по умолчанию /usr/local/cuda:

......................................
Enter install path (default /usr/local/cuda, '/cuda' will be appended):

После установки будет напечатано несколько сообщений, предлагающих поместить каталог библиотеки cuda в путь поиска вашей библиотеки:

========================================

* Please make sure your PATH includes /tmp/cuda/cuda/bin
* Please make sure your LD_LIBRARY_PATH
*   for 32-bit Linux distributions includes /tmp/cuda/cuda/lib
*   for 64-bit Linux distributions includes /tmp/cuda/cuda/lib64:/tmp/cuda/cuda/lib
* OR
*   for 32-bit Linux distributions add /tmp/cuda/cuda/lib
*   for 64-bit Linux distributions add /tmp/cuda/cuda/lib64 and /tmp/cuda/cuda/lib
* to /etc/ld. so.conf and run ldconfig as root

* Please read the release notes in /tmp/cuda/cuda/doc/

* To uninstall CUDA, remove the CUDA files in /tmp/cuda/cuda
* Installation Complete

Вы можете пропустить этот шаг, если хотите, но тогда вам придется установить LD_LIBRARY_PATH=/usr/local/cuda/lib64:/usr/local/cuda/lib:$LD_LIBRARY_PATHпозже при запуске программы.

SDK

Если вы хотите иметь возможность компилировать приложения CUDA, вы можете установить SDK аналогично тому, как описано выше. Скачайте, сделайте его исполняемым и запустите его (не как root, например, без sudo!).

Использование CUDA

Для работы CUDA не требуется X-сервер, управляемый NVIDIA. В этом случае вы можете запустить программу случайного тестирования, например:

LD_LIBRARY_PATH = / usr / lib / nvidia-current: / usr / lib32 / nvidia-current: $ LD_LIBRARY_PATH someComputallyIntensiveProgram

Если вы не добавили CUDA в путь к своей библиотеке, вам потребуется:

LD_LIBRARY_PATH = / usr / lib / nvidia-current: / usr / lib32 / nvidia-current: / usr / local / cuda / lib64: / usr / local / cuda / lib: $ LD_LIBRARY_PATH someComputallyIntensiveProgram

(вы можете убрать из него 32-битные пути, если ваша программа 64-битная).

Если программе CUDA действительно есть, что отобразить с помощью OpenGL, вы должны использовать optirun:

 optirun blender

Или, если вы не добавили CUDA в путь по умолчанию:

LD_LIBRARY_PATH = / usr / local / cuda / lib64: / usr / local / cuda / lib: $ LD_LIBRARY_PATH optirun блендер

Установка сборки Blender

(С предварительно скомпилированными ядрами CUDA)

При запуске optirun blenderвы можете получить сообщение от Blender о том, что сборка ядра CUDA завершилась неудачно, и сообщение в терминале, подобное следующему:

Compiling CUDA kernel ...
nvcc warning : Option '--opencc-options (-Xopencc)' is obsolete and ignored, when
targeting compute_20, sm_20, or higher
gcc: error trying to exec 'cc1plus': execvp: No such file or directory
CUDA kernel compilation failed, see console for details.

Если вы хотите использовать функцию визуализации в Blender, вам может понадобиться сборка Blender с предварительно скомпилированными ядрами CUDA. Сборки с Blender.org имеют предварительно скомпилированные ядра CUDA; Сборки ppa: cheleb / blender-svn ( больше информации по этому вопросу ) — нет.

Чтобы установить официальную сборку Blender, просто следуйте инструкциям, изложенным в этом ответе .

Если вы установили Blender на /usr/lib/blender, вы сможете запустить Blender из терминала и использовать рендеринг с помощью графического процессора с:

 optirun '/usr/lib/blender/blender'

поддержка OpenCL 1.2 и исправления

Вместе с запуском мощного ускорителя GeForce GTX Titan X калифорнийская NVIDIA представила и новый драйвер. Прошло не так много времени, а компания уже решила выпустить новую бета-сборку GeForce 350.05, призванную преимущественно исправить выявленные ошибки. Прежде всего, речь идёт об исправлении сбоев в играх на движке DICE Frostbite — Battlefield Hardline и Dragon Age: Inquisition.

Интереснее то, что GeForce 350. 05 открывает собой новую ветку R349, что весьма редко случается с драйверами, выходящими под маркировкой Hotfix. Речь идёт о предварительной бета-сборке, так что детально новшества R349 не прописаны. На системах с Windows 10 ветка R349, распространяемая через Windows Update, приносит поддержку драйверной модели WDDM 2.0. Однако эта сборка предназначена для систем Windows 7 и 8, так что WDDM 2.0 отключена. Как сообщается, ключевое новшество GeForce 350.05 — OpenCL 1.2.

Впервые представленный в конце 2011 года OpenCL 1.2 является небольшим обновлением открытого стандарта вычислений общего назначения на GPU, приносящим несколько новых (но потенциально важных) функций. Однако NVIDIA до последнего времени отказывалась поддерживать OpenCL 1.2, предпочитая вкладывать силы в собственную экосистему CUDA. Поддержка OpenCL 1.2 в настоящее время — настоящий сюрприз. Надеемся, что это можно расценивать как желание NVIDIA активнее поддерживать открытые стандарты, включая SPIR/SPIR-V и OpenCL 2. x.

Так или иначе, пока речь не идёт об официальном бета-релизе — драйверы доступны только через канал поддержки пользователей NVIDIA. Компания опубликовала GeForce 350.05 Hotfix для 32- и 64-битных систем для настольных ПК и ноутбуков. Сборка должна поддерживать все карты NVIDIA, начиная с поколения Fermi.

Если вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER.

NVIDIA представляет драйвер с поддержкой OpenCL

До наступления истинной эры расчетов общего назначения на GPU пройдёт ещё немало времени. И причиной тому станет не лень программистов, а царящая на рынке неразбериха. AMD и NVIDIA пропагандируют собственные API для GPGPU – Stream и CUDA соответственно. Ситуация усугубляется ещё и тем, что оба производителя продвигают собственные физические движки – Havok и PhysX, которые базируются на вышеозначенных API для расчётов общего назначения на GPU. Поэтому вполне логичной выглядит неторопливость программистов, которых этот бардак определённо не устраивает, т.к. поддержка двух API будет стоить дополнительного времени и средств, а ограничившись одним придётся смириться с потерей части рынка. Таким образом, приведение API для вычислений к общему знаменателю в интересах самих компаний. На роль такого знаменателя претендует OpenCL – открытый язык для вычислений, разработаный консорциумом Khronos Group, в который входит множество компаний: AMD, NVIDIA, Intel, Sun Microsystems, Apple, Sony Computer Entertainment и другие.

На днях NVIDIA официально заявила о готовности драйвера с поддержкой OpenCL. Пока, к сожалению, только для участников программы OpenCL Early Access, войти в число которых можно, заполнив анкету на сайте NVIDIA. Что примечательно, API OpenCL базируется на собственном API NVIDIA для вычислений общего назначения на GPU – CUDA. Впрочем, первые звоночек по этому поводу прозвенел ещё в декабре прошлого года. С одной стороны, такой подход вполне оправдан, т. к. CUDA поддерживают уже более 100 миллионов видеокарт по всему миру. С другой стороны, добавление лишнего этажа между видеокартой и OpenCL вряд ли положительно скажется на быстродействии. Впрочем, разница в производительности может оказаться весьма несущественной, а подход NVIDIA позволит обеспечить поддержку нового API в более сжатые сроки, что на первом этапе внедрения немаловажно. Нам же остаётся только надеяться, что появление общего стандарта на рынке подстегнёт интерес разработчиков к написанию программного обеспечения, в полной мере использующего колоссальные вычислительные возможности современных GPU.

OSX

Чтобы использовать CUDA или OpenCL на Mac, вам понадобится графический процессор, поддерживающий Это. Некоторые версии Mac используют оборудование AMD и поддерживают OpenCL, но не CUDA. Инструкции для CUDA на OSX предоставляет пошаговые инструкции, чтобы определить, можете ли вы использовать CUDA. Если у вас есть оборудование AMD / ATI, попробуйте OpenCL вместо этого.

Окна

CUDA и OpenCL в Windows обычно предоставляются поставщиками оборудования. Для CUDA начните с CUDA загрузки. Время выполнения

OpenCL ™ для процессоров Intel®

Развертывание среды выполнения OpenCL ™

Получите время выполнения для выполнения или разработки приложений OpenCL ™ на процессорах Intel®

Важное изменение

В февральском выпуске 2020 г. внесены изменения в среду исполнения ЦП OpenCL ™ для Windows *, чтобы обеспечить совместимость с дистрибутивом Linux *.Среда выполнения ЦП OpenCL удаляется из драйвера OpenCL для Windows, начиная с версии февральского выпуска 2020 г. «igfx_win10_100.7870.exe».

  • Но установщик нового драйвера не удалил старую среду выполнения ЦП OpenCL при обновлении более нового драйвера, поэтому в вашей системе может быть две среды выполнения ЦП OpenCL. Эта проблема уже исправлена ​​в скрипте установки на github здесь.
  • Чтобы загрузить среду выполнения ЦП OpenCL для Windows, выполните любой из следующих методов:

Время работы графической технологии Intel®

Выполняйте приложения OpenCL ™ на процессорах Intel® с графической технологией Intel®.

  • В частности, нацелена на Intel® HD Graphics, Intel® Iris® Graphics и Intel® Iris® Pro Graphics, если они доступны на процессорах Intel®.
  • Среда выполнения для графической технологии Intel® часто развертывается в тандеме со средой выполнения ЦП Intel®.
  • Учитывайте время выполнения графики при разработке приложений OpenCL ™ с помощью Intel® SDK для приложений OpenCL ™ или Intel® System Studio.

Проверьте примечания к выпуску, чтобы убедиться, что поддерживаемые целевые устройства включают ваше целевое устройство. Для процессоров Intel® более старых, чем поддерживаемые цели, см. Страницу устаревшего развертывания.

Linux * ОС

Руководство по установке репозитория * Легко * | Ручная загрузка и установка | Сборка | README | FAQ

Примечание : новейшая среда выполнения OpenCL для ЦП требует GNU * gcc версии 7.3 или новее .

Intel® Graphics Compute Runtime для драйвера OpenCL ™ развертывается с диспетчерами пакетов для нескольких дистрибутивов. Инструкции по развертыванию см. В документации на портале GitHub *.

Рекомендации по развертыванию:

  • Убедитесь, что в системе развертывания есть среда выполнения загрузчика ICD (libOpenCL.so) из одного из следующих источников:
  • Время выполнения графических вычислений Intel® для драйвера OpenCL ™ зависит от драйвера ядра i915. Необходимые функции i915 доступны с относительно недавними ядрами ОС Linux *. Рекомендуемое ядро ​​- это ядро ​​валидации, указанное в документации. В общем, развертывание после ядра 4.11 должно быть нормальным. Обязательно ознакомьтесь с примечаниями к выпуску и документацией для получения дополнительных сведений.

Windows * ОС
  • Драйвер Intel® Graphics Compute Runtime для OpenCL ™ включен в пакет драйверов графики Intel® для ОС Windows *.
  • Параметры загрузки
    • Поставщик системы
      • Загрузите драйвер видеокарты или видеокарты для системы на веб-сайте поставщика.
    • Центр загрузки Intel®
      • Перейдите в «Драйверы графики» для просмотра последних выпусков.
      • Сначала попробуйте обратиться к поставщику системы, учитывая поддержку поставщика. Поставщики системы могут отключить установку драйвера графики Intel®.
    • Утилита обновления драйверов Intel®
    • Пакет графического драйвера встроен при установке ОС Windows * 10. Однако встроенное развертывание по умолчанию может не содержать последних функций.
  • Примечания к выпуску
    • В Центре загрузки перейдите в раздел «Драйверы графики» для получения информации о версии.

Процессор Intel® Xeon® ИЛИ Процессор Intel® Core ™ (ЦП) Время работы

Выполняйте ядра OpenCL ™ непосредственно на процессорах Intel® в качестве целевых устройств OpenCL ™.

  • Рассмотрим реализацию ЦП OpenCL ™ для систем Intel® без графической технологии Intel®.
  • Системы
  • с технологией Intel® Graphics могут одновременно развертывать среды выполнения для технологии Intel® Graphics и среды выполнения для ЦП Intel® (x86-64).
  • Для разработчиков приложений среда выполнения только для ЦП предварительно включена в Intel® SDK для приложений OpenCL ™ или компонент Intel® System Studio: OpenCL ™ Tools.

Проверьте примечания к выпуску, чтобы убедиться, что поддерживаемые целевые устройства включают ваше целевое устройство. Для процессоров Intel® старше поддерживаемых целевых значений см. Страницу устаревшего развертывания.

Среда выполнения ЦП Intel® для приложений OpenCL ™ 18.1 для ОС Linux * (только 64-разрядная)

Скачать

  • Размер 125 МБ
  • См. Сведения о поддерживаемых платформах в примечаниях к выпуску.
  • Ubuntu * install использует переводчик rpm
  • Пакет среды выполнения ЦП ОС Linux * также включает среду выполнения загрузчика ICD (libOpenCL.so). Программа установки среды выполнения должна настроить систему развертывания так, чтобы она по умолчанию отображала эту среду выполнения загрузчика ICD. Изучая системные библиотеки, администраторы могут наблюдать время выполнения загрузчика ICD, полученное из других источников. Примеры включают диспетчер системных пакетов (например, с ocl-icd ) или как часть Intel® SDK для приложений OpenCL ™.
  • Обслуживание и обновления теперь предоставляются в экспериментальной среде выполнения ЦП Intel® для приложений OpenCL ™ с реализацией поддержки SYCL. Эта реализация указана далее в этой статье.
  • MD5 83c428ab9627268fc61f4d8219a0d670
  • SHA1 5f2fa6e6bc400ca04219679f89ec289f17e94e5d
Среда выполнения ЦП Intel® для приложений OpenCL ™ 18.1 для ОС Windows * (64- или 32-разрядная)

Скачать

  • Размер 60 МБ
  • В развертывании только для ЦП следует использовать расширение.msi, ссылку на которую можно найти с помощью кнопки «Загрузить», и рассмотрите возможность удаления драйверов Intel® Graphics Technology, где это применимо.
  • При развертывании ЦП и графики
  • следует использовать пакет драйверов Intel® Graphics Technology, который содержит реализации как ЦП (x86-64), так и Intel® Graphics Technology.
  • См. Сведения о поддерживаемых операционных системах в примечаниях к выпуску
  • Обслуживание и обновления теперь предоставляются в экспериментальной среде выполнения ЦП Intel® для приложений OpenCL ™ с реализацией поддержки SYCL.Эта реализация указана далее в этой статье.
  • MD5 8e24048001fb46ed6921d658dd71b8ff
  • SHA1 451d96d37259cb111fe8832d5513c5562efa3e56
Среда выполнения ЦП Intel® для приложений OpenCL ™ с поддержкой SYCL

Посетите Intel® CPU Runtime for OpenCL ™ Applications с поддержкой SYCL, чтобы загрузить и установить среду выполнения для Windows или Linux.

Разработка приложений OpenCL ™

Инструменты для разработки приложений OpenCL ™ для процессоров Intel®

Intel® oneAPI: компилятор DPC ++

Intel® Системная студия

  • Для компиляции, кроссплатформенности, Интернета вещей, энергоэффективной разработки и анализа производительности.
    • Компонент средств разработки OpenCL ™:
      • Разработка приложений OpenCL ™ для процессоров Intel® Xeon®, процессоров Intel® Core ™ и / или графической технологии Intel®.
      • Разрабатывайте приложения с расширенными функциями IDE, средствами отладки и анализа.
        • Примечание. Некоторые функции отладки и анализа были удалены из последних версий SDK.
      • Более ранние версии SDK содержат экспериментальный OpenCL ™ 2.1 реализация. Среда выполнения ЦП Intel® для приложений OpenCL ™ 18.1 была задумана как замена экспериментальной реализации.
  • Посетите портал Intel® System Studio

Intel® SDK для приложений OpenCL ™

  • Автономный дистрибутив Intel® System Studio: компонент OpenCL ™ Tools.
  • Разработка приложений OpenCL ™ для процессоров Intel® Xeon®, процессоров Intel® Core ™ и / или графических технологий Intel®.
  • Разрабатывайте приложения с расширенными функциями IDE, средствами отладки и анализа.
    • Примечание. Некоторые функции отладки и анализа были удалены из последних версий SDK.
    • Более ранние версии SDK содержат экспериментальную реализацию OpenCL ™ 2.1, подходящую для тестирования в процессе разработки на целевых процессорах OpenCL ™. Среда выполнения ЦП Intel® для приложений OpenCL ™ 18.1 была задумана как замена этой экспериментальной реализации.
  • См. Примечания к выпуску, требования и ссылки для загрузки на портале Intel® SDK для приложений OpenCL ™.

Intel® FPGA SDK для программной технологии OpenCL ™

  • Создавайте приложения OpenCL ™ и ядра OpenCL ™ для устройств Intel® FPGA.
  • См. Примечания к выпуску, требования и ссылки для скачивания на веб-странице портала SDK.
  • Для получения информации о среде выполнения OpenCL ™ и необходимых системных драйверах посетите Центр загрузок для ПЛИС.

Intel® Distribution of OpenVINO ™ toolkit

Уровень перехвата для отладки и анализа приложений OpenCL ™

  • Уровень перехвата для отладки и анализа приложений OpenCL ™ (clIntercept) может перехватывать, сообщать и изменять вызовы API OpenCL ™.
  • Никаких модификаций на уровне приложений или модификаций реализации OpenCL ™ не требуется.
  • Функциональность
  • clIntercept может дополнять функции, удаленные из последних выпусков Intel® SDK для приложений OpenCL ™.

Дополнительные ресурсы

Начало работы с Intel® SDK для приложений OpenCL ™

Загрузить Intel® SDK для приложений OpenCL ™

Форум Intel® OpenCL ™

* OpenCL и логотип OpenCL являются товарными знаками Apple Inc.используется с разрешения Хроноса.

10.2.4. Настройка OpenCL в вашей системе | руководство пользователя

10.2.4. Настройка OpenCL в вашей системе¶

Огромное разнообразие систем и заметные различия между поставщиками OpenCL и драйверами версий не дает возможности дать исчерпывающий обзор того, как настроить OpenCL.Мы только могу привести пример, в данном случае для драйвера NVIDIA версии 331.89 на Ubuntu 14.04. Мы надеемся, что это послужит вам первым впечатлением и поможет решить возможные проблемы вашей конкретной настройки.

Принцип работы функции OpenCL выглядит следующим образом:

darktable -> libOpenCL.так -> libnvidia-opencl.so.1 -> модуль (ы) драйвера ядра -> GPU

  • darktable динамически загружает libOpenCL.so , системную библиотеку, которая должен быть доступен для динамического загрузчика системы ( ld.so ).

  • libOpenCL.so будет читать файл с информацией о поставщике ( /etc/OpenCL/vendors/nvidia.icd ), чтобы найти библиотеку, содержит реализацию OpenCL, зависящую от поставщика.

  • Реализация OpenCL для конкретного поставщика поставляется в виде библиотеки libnvidia-opencl.so.1 (в нашем случае символическая ссылка на libnvidia-opencl.т. 331.89 ).

  • libnvidia-opencl.so.1 необходимо поговорить с ядром конкретного поставщика модули nvidia и nvidia_uvm через устройство специальные файлы / dev / nvidia0 , / dev / nvidiactl , и / dev / nvidia-uvm .

При запуске системы необходимо создать необходимые специальные файлы устройства (/ dev / nvidia *). Если этого не происходит в вашей системе по умолчанию, самый простой способ настроить их и сделать убедитесь, что все модули загружены, устанавливается пакет nvidia-modprobe (который на момент написания этой статьи доступен только для «утопических», но хорошо работает с «trusty» и «Mint 17»).Вы можете получить его на этот сайт.

Учетная запись пользователя, которая хочет использовать OpenCL из darktable, должна иметь доступ для чтения и записи к специальным файлам устройств NVIDIA. В некоторых системах эти файлы позволяют доступ для чтения и записи по умолчанию, что позволяет избежать проблем с разрешениями, но может быть спорным с точки зрения безопасности системы.Другие системы ограничивают доступ к группе пользователей, например «видео». В этом случае ваша учетная запись пользователя должна быть членом этой группы.

Подводя итог, в данном конкретном случае необходимо было установить следующие пакеты:

  • nvidia-331 (331.89-0ubuntu1 ~ xedgers14.04.2)

  • nvidia-331-dev (331.89-0ubuntu1 ~ xedgers14.04.2)

  • nvidia-331-uvm (331.89-0ubuntu1 ~ xedgers14.04.2)

  • nvidia-libopencl1-331 (331.89-0ubuntu1 ~ xedgers14.04.2)

  • nvidia-modprobe (340.24-1)

  • nvidia-opencl-dev: amd64 (5.5.22-3ubuntu1)

  • nvidia-opencl-icd-331 (331.89-0ubuntu1 ~ xedgers14.04.2)

  • nvidia-settings (340.24-0ubuntu1 ~ xedgers14.04.1)

  • nvidia-settings-304 (340.24-0ubuntu1 ~ xedgers14.04.1)

  • nvidia-libopencl1-331 (331.89-0ubuntu1 ~ xedgers14.04.2)

  • nvidia-opencl-dev: amd64 (5.5.22-3ubuntu1)

  • nvidia-opencl-icd-331 (331.89-0ubuntu1 ~ xedgers14.04.2)

  • заголовки opencl (1.2-2013.10.23-1)

Список модулей ядра, связанных с NVIDIA, по данным lsmod :

 NVIDIA
nvidia_uvm
 

Список специальных файлов устройств, связанных с NVIDIA ( ls -l / dev / nvidia * ) должно читаться так:

 crw-rw-rw- 1 root root 195, 0 28 июля 21:13 / dev / nvidia0
crw-rw-rw- 1 root root 195, 255 28 июля 21:13 / dev / nvidiactl
crw-rw-rw- 1 root root 250, 0 28 июля 21:13 / dev / nvidia-uvm
 

Помните, что старшие / младшие числа (например,грамм. 250/0 для / dev / nvidia-uvm в этом примере) может отличаться в зависимости от вашей системы.

Поддержка

OpenCL часто отключается в Linux — как я могу предотвратить это? — темный стол

Blockquote
sudo apt list —installed | grep ‘nvidia’
[sudo] пароль для brian:
ВНИМАНИЕ: apt не имеет стабильного интерфейса командной строки. С осторожностью используйте скрипты.
libnvidia-cfg1-460 / focal-updates, focal-security, сейчас 460.39-0ubuntu0.20.04.1 amd64 [установлен]
libnvidia-common-460 / focal-updates, focal-updates, focal-security, focal-security, сейчас 460.39-0ubuntu0.20.04.1 все [установлено]
libnvidia-compute-460 / focal-updates, focal-security, сейчас 460.39-0ubuntu0.20.04.1 amd64 [установлено]
libnvidia-compute-460 / focal-updates, focal-security, сейчас 460.39-0ubuntu0.20.04.1 i386 [установлен, автоматически]
libnvidia-decode-460 / focal-updates, focal-security, сейчас 460.39-0ubuntu0.20.04.1 amd64 [установлен]
libnvidia-decode-460 / focal-updates, focal-security, теперь 460.39-0ubuntu0.20.04.1 i386 [установлен, автоматически]
libnvidia-encode-460 / focal-updates , focal-security, сейчас 460.39-0ubuntu0.20.04.1 amd64 [установлен]
libnvidia-encode-460 / focal-updates, focal-security, сейчас 460.39-0ubuntu0.20.04.1 i386 [установлен, автоматически]
libnvidia-extra -460 / focal-updates, focal-security, сейчас 460.39-0ubuntu0.20.04.1 amd64 [установлено]
libnvidia-fbc1-460 / focal-updates, focal-security, теперь 460.39-0ubuntu0.20.04.1 amd64 [установлен]
libnvidia-fbc1-460 / focal-updates, focal-security, теперь 460.39-0ubuntu0.20.04.1 i386 [установлен, автоматически]
libnvidia-gl-460 / focal-updates , focal-security, сейчас 460.39-0ubuntu0.20.04.1 amd64 [установлен]
libnvidia-gl-460 / focal-updates, focal-security, сейчас 460.39-0ubuntu0.20.04.1 i386 [установлен, автоматически]
libnvidia-ifr1 -460 / focal-updates, focal-security, сейчас 460.39-0ubuntu0.20.04.1 amd64 [установлено]
libnvidia-ifr1-460 / focal-updates, focal-security, теперь 460.39-0ubuntu0.20.04.1 i386 [установлен, автоматически]
nvidia-compute-utils-460 / focal-updates, focal-security, сейчас 460.39-0ubuntu0.20.04.1 amd64 [установлен]
nvidia-dkms-460 / focal -updates, focal-security, сейчас 460.39-0ubuntu0.20.04.1 amd64 [установлен]
nvidia-driver-460 / focal-updates, focal-security, теперь 460.39-0ubuntu0.20.04.1 amd64 [установлен]
nvidia-kernel -common-460 / focal-updates, focal-security, сейчас 460.39-0ubuntu0.20.04.1 amd64 [установлен, автоматически]
nvidia-kernel-source-460 / focal-updates, focal-security, сейчас 460.39-0ubuntu0.20.04.1 amd64 [установлено, автоматически]
nvidia-prime-applet / ulyssa, ulyssa, now 1.2.6 all [установлено]
nvidia-prime / focal-updates, focal-updates, теперь 0.8.15.3 ~ 0.20.04.1 все [установлено, автоматически]
nvidia-settings / focal-updates, сейчас 440.82-0ubuntu0.20.04.

Обновлено: 29.08.2021 — 00:37

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *