Меню

Opencl nvidia как установить

Как установить и использовать в расчетах OpenCL

OpenCL в клиентском терминале MetaTrader 5

Прошло уже больше года как стало возможным писать программы для OpenCL в MQL5, и теперь при старте терминала MetaTrader 5 в Журнал выводятся сообщения о найденных устройствах с поддержкой OpenCL, как показано на картинке.

Если на вашем компьютере уже есть подходящее устройство с поддержкой OpenCL версии 1.1 и выше, то можете смело пропускать описание и сразу же переходить к разделу Сравнение производительности, чтобы своими глазами увидеть выигрыш в скорости для задач, допускающих распараллеливание.

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

Все дело в том, что для запуска любой MQL5 программы, использующей OpenCL, необходимо установить соответствующее программное обеспечение. Поэтому многие так и не сумели запустить скрипт расчета фрактала Мандельброта и многие другие программы, представленные на форуме MQL5.community.

Что такое OpenCL

Другими словами OpenCL позволяет задействовать для вычислений одной задачи все ядра центрального процессора или все вычислительные мощности видеокарты, что, в конечном счете, уменьшает время выполнения программы. И поэтому использование OpenCL является очень полезным для задач, связанных с трудоемкими и ресурсозатратными вычислениями.

Например, применительно к MQL5, увеличение быстродействия может быть очень полезно для некоторого скрипта (индикатора или эксперта), который проводит сложный и длительный анализ исторических данных по нескольким символам и таймфреймам (здесь стоит отметить, что MQL5 программа, претендующая на параллельное исполнение, должна быть написана специальным образом при помощи OpenCL API).

Поддержка OpenCL

Поддержка OpenCL в MQL5 начинается с версии стандарта 1.1, который появился в июне 2010 года. Поэтому, для использования параллельных вычислений, необходимо иметь относительно свежее программное и аппаратное обеспечение, соответствующее этому стандарту.

Конечно, по быстродействию распределенных вычислений центральные процессоры значительно уступают своим соперникам из «графического цеха», однако и хорошего многоядерного центрального процессора Вам будет вполне достаточно для получения значительного увеличения быстродействия. Но мы отвлеклись, идем дальше.

Производитель Устройства Операционные системы
Intel Процессоры:

AMD Radeon HD Graphics начиная с серии 6400;
ATI Radeon HD Graphics начиная с серии 5400;
ATI FirePro Graphics серии A300, S, W, V;
ATI Mobility Radeon HD начиная с серии 5400;
ATI FirePro M7820 M5800 (подробнее здесь).

Процессоры семейства K8 и старше:

Opteron, Athlon 64, Athlon 64 FX, Athlon 64 X2, Sempron, Turion 64, Turion 64 X2, Phenom, Phenom II (подробнее здесь).

APU (гибридный процессор, включающий в себя центральный и графический процессоры):

Процессоры серий A, C, E, E2, G, R.

Windows Vista SP2, 7, 8;
openSUSE 11.x;
Ubuntu 11.04;
Red Hat 6.x.
NVidia Видеокарты (использующие архитектуру CUDA):

Tesla, Quadro, GeForce (подробнее здесь).

Windows XP, Vista, 7, 8
Linux и Mac OS
(подробнее здесь)

Проверьте, установлено ли на вашем персональном компьютере хотя бы одно устройство (CPU или GPU) и операционная система, которые поддерживают OpenCL 1.1. Если таковые имеются, то Вы смело можете переходить к следующему параграфу, который описывает процедуру настройки OpenCL в зависимости от производителя аппаратного обеспечения.

Настройка OpenCL

Ставить для центрального процессора специальный комплект средств разработки (SDK) потребуется только в том случае, если на компьютере не установлена подходящая видеокарта.

Важно: Если уже есть установленная видеокарта с поддержкой OpenCL, то ставить софтверную версию для эмуляции OpenCL на центральном процессоре не нужно!

Ну, разве что для проведения экспериментов, так как видеокарты для использования OpenCL имеют безусловное преимущество.

Следующие параграфы описывают процедуру настройки OpenCL в зависимости от производителя. Вы можете перейти сразу на интересующую Вас инструкцию настройки, нажав на соответствующую ссылку:

1. Intel

Для использования OpenCL на процессорах Intel необходимо скачать и установить «Intel SDK for OpenCL Applications«. Для этого перейдем на страницу сайта разработчика, с которой это можно сделать.

Рис. 1.1. Страница загрузки Intel SDK для OpenCL.

Здесь представлена общая информация об OpenCL, а также список доступных пакетов для скачивания. Чтобы скачать представленные пакеты нужно нажать на кнопку «Compare and Download Products» в правом верхнем углу страницы.

Рис. 1.2. Информация о доступных пакетах и требованиях для установки.

После нажатия на кнопку появится окошко, в котором будет представлена информация о том, для каких типов процессоров и операционных систем подходят указанные пакеты. Выбираем и загружаем подходящий пакет, нажав на кнопку «Download» над его изображением.

Рис. 1.3. Ссылки для скачивания SDK.

Рис. 1.4. Начало установки Intel SDK для OpenCL.

На экране появится окно установки «Intel SDK for OpenCL Applications» с поддержкой OpenCL 1.2. Жмем «Next» и следуем инструкции по установке.

Рис. 1.5. Принятие лицензионного соглашения.

Рис. 1.6. Интеграция SDK c Visual Studio.

Если на Вашем ПК установлена «Microsoft Visual Studio» начиная с 2008 года, то будет предложено провести интеграцию для использования OpenCL также внутри нее. Далее остается лишь выбрать для каких пользователей будут доступны установленные компоненты и путь для установки SDK, после чего нажать «Install«.

Рис. 1.7. Процесс установки.

Начнется процесс установки, который займет пару минут, после чего на экране отобразится результат успешного выполнения. Нажимаем «Finish» и заканчиваем установку.

Рис. 1.8. Завершение установки.

2.1. Видеокарты и APU от AMD

Для установки OpenCL на видеокарту от AMD обновим ее драйвер до последней версии. Для этого переходим на страницу загрузки драйверов.

Рис. 2.1.1. Страница загрузки драйвера AMD.

Если вы знаете характеристики Вашей видеокарты, то драйвер можно найти, заполнив форму в левой части страницы. После выбора нужных строк из списков, жмем на «Display Results» для поиска подходящего драйвера.

Рис. 2.1.2. Загрузка AMD Catalyst.

Система подберет несколько драйверов в наборе «Catalyst Software Suite«, в том числе и драйвер для OpenCL. Загружаем «Catalyst» и запускаем полученный файл.

Рис. 2.1.3. Страница загрузки приложения для определения типа видеокарты и версии драйвера.

Рис. 2.1.4. Приложение для определения и загрузки подходящего драйвера.

Рис. 2.1.5. Программа установки AMD Catalyst.

Рис. 2.1.6. Процесс установки.

Процесс установки займет пару минут, после чего появится уведомление об успешном завершении.

Рис. 2.1.7. Завершение установки.

2.2. Процессоры от AMD

Для установки OpenCL на процессор от AMD необходимо скачать и установить «AMD APP SDK» последней версии. Для этого переходим на следующую страницу на официальном сайте разработчика.

Рис. 2.2.1. Страница загрузки AMD APP SDK.

Рис. 2.2.2. Таблица доступных для скачивания SDK.

3. NVidia

Если у Вас имеется видеокарта от NVidia, то для установки OpenCL также необходимо обновить ее драйвер до последней версии. Для этого откроем страницу загрузки драйверов на сайте разработчика.

Рис. 3.1. Страница загрузки драйвера NVidia.

На странице расположено меню, которое позволит найти интересующий драйвер либо вручную, либо в автоматическом режиме. В ручном режиме необходимо ввести тип видеокарты, серию, тип операционной системы и нажать на «Поиск«. После этого система подберет самый свежий драйвер подходящий для Вашей видеокарты, и предложит скачать его.

Рис. 3.2. Загрузка выбранного драйвера.

В автоматическом режиме нужно нажать на «Графические драйверы«, после чего вам будет предложено выполнить сканирование вашей системы при помощи java-приложения «GPU_Reader«.

Рис. 3.3. Запуск приложения для определения типа видеокарты и версии драйвера.

Запускаем приложение, нажав на «Run«. Ждем несколько секунд, после чего на странице появится информация о Вашей видеокарте, текущей версии установленного драйвера и версии самого свежего, рекомендованного для установки драйвера. Жмем на «Download» и попадаем на страницу загрузки, показанную на рисунке 3.2.

Рис. 3.4. Результат автоматического определения типа видеокарты и версии драйвера.

Нажимаем «Загрузить сейчас» и соглашаемся с лицензионным соглашением, нажав на «Принять и скачать«.

Рис. 3.5. Принятие лицензионного соглашения и скачивание драйвера.

Рис. 3.6. Принятие лицензионного соглашения на первом этапе установки.

Рис. 3.7. Выбор режима установки.

Рис. 3.8. Процесс установки.

И всё, драйвер установлен, осталось лишь перезагрузить систему, и Вы сможете использовать OpenCL внутри терминала MetaTrader 5.

Рис. 3.9. Завершение установки.

Сравнение производительности

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

Помимо самой картинки в журнал «Эксперты» выводится время расчета функций каждым из способов, что позволяет легко убедиться в преимуществе и целесообразности использования OpenCL в MQL5. Увеличим значение шага и получим результаты работы скрипта:

Расчет значений функции и их раскраска двумя способами.

Суммарное время расчета функций на CPU с OpenCL уменьшилось более чем в 5 раз, а ведь это еще далеко не предел! Хорошо известно, что расчеты на современных видеокартах с поддержкой OpenCL выполняются на порядок быстрее, чем на процессорах. Этот факт хорошо отражают результаты выполнения скрипта на разных устройствах с OpenCL, представленные в следующей таблице:

Устройство с OpenCL Время выполнения без OpenCL в миллисекундах Время выполнения с OpenCL в миллисекундах Выигрыш
AMD Radeon HD 7970 20 361 мс 171 мс 119.07 раз
NVidia GeForce GT 630 24 742 мс 578 мс 42.8 раз
Intel Core i5 430M 27 222 мс 5 428 мс 5.01 раз
AMD Athlon X2 Dual-Core QL-65 45 723 мс 9 516 мс 4.8 раз

Источник

Как скачать opencl.dll и исправить ошибки при запуске игр и программ

Opencl.dll — ещё один файл, который часто вызывает ошибки как при входе в Windows 10, 8.1 и Windows 7, так и при запуске игр или программ, такие как «Не удается продолжить выполнение кода, поскольку система не обнаружила opencl.dll», «Запуск программы не возможен, так как на компьютере отсутствует opencl.dll», «Системная ошибка» при запуске amdrsserv.exe и другие.

В этой инструкции подробно о том, как скачать и установить opencl.dll x64 и 32-бит и исправить рассматриваемые ошибки в Windows.

Как исправить системные ошибки, вызванные отсутствием opencl.dll

Opencl.dll — одна из библиотек DLL, используемых в программах, использующих технологии OpenCL (Open Computing Language) для просчета графики или других операций с использованием GPU (видеокарты). Технология поддерживается NVIDIA, Intel и AMD.

Скачивать этот файл отдельно со стороннего сайта и пробовать его зарегистрировать в Windows вручную можно, но не является лучшим методом. В случае видеокарт AMD ранее был доступен отдельный OpenCL Driver, но сегодня для систем Windows 10, 8.1 или Windows 7 он не актуален.

Файл opencl.dll присутствует в комплекте драйверов для всех современных дискретных и интегрированных видеокарт: NVIDIA GeForce, AMD Radeon и Intel HD Graphics. Поэтому лучшее и наиболее часто работающее решение — установка этих драйверов:

После выполнения указанных действий файлы opencl.dll должны автоматически оказаться в папке C:\Windows\System32, а в Windows x64 — еще и в C:\Windows\SysWOW64, а ошибки «Не удается продолжить выполнение кода, поскольку система не обнаружила opencl.dll», «Системная ошибка amdrsserv.exe» (напрямую связанная с драйверами AMD, которые при появлении этой ошибки следует переустановить вручную) и подобные не должны вас больше побеспокоить.

Дополнительная информация

Если эта статья — не первая, которую вы находите на тему ошибок opencl.dll, вы вероятнее встречали рекомендацию скачать этот файл, скопировать в ранее упоминавшиеся папки и выполнить команду regsvr32.exe opencl.dll (или иные варианты этой команды). Простое копирование файла иногда может исправить ошибку. А проблема с этим методом в том, что зарегистрировать (установить) эту DLL таким методом не получится.

Вы получите сообщение о том, что «Точка входа DllRegisterServer» не найдена, иначе говоря, файл не поддерживает механизм регистрации с помощью regsvr32.dll. Отдельно следует отметить, что в папках System32 и SysWOW64 должны быть разные файлы opencl.dll — для x64 и x86, а обычно предлагается один, что может приводить к ошибкам.

Как итог — чаще всего из-за незнания подобных нюансов ручные манипуляции оказываются безуспешными (но иногда срабатывают, хотя шаг с regsvr32 и лишний). Однако, бывает иная ситуация: в системе присутствует и всегда был в наличии оригинальный opencl.dll (был установлен с драйверами), но сообщения об ошибках продолжают появляться. В этой ситуации можно рекомендовать выполнить проверку целостности системных файлов (инструкция для Windows 10, но подойдет и для предыдущих систем) — это может сработать.

Загрузка и установка opencl.dll — видео инструкция

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

Источник

HackWare.ru

Этичный хакинг и тестирование на проникновение, информационная безопасность

Как в Linux взламывать пароли видеокартой и центральным процессором

Драйверы и программы для взлома на графической карте и центральном процессоре в hashcat

В этой статье показано, какие драйверы и программы установить для того, чтобы hashcat и аналогичные программы для брут-форса могли использовать видеокарту и процессор для взлома паролей.

В настоящее время hashcat использует OpenCL. Как написано в Википедии, OpenCL (англ. Open Computing Language — открытый язык вычислений) — фреймворк для написания компьютерных программ, связанных с параллельными вычислениями на различных графических и центральных процессорах, а также FPGA. В OpenCL входят язык программирования, который основан на стандарте языка программирования Си C99, и интерфейс программирования приложений. OpenCL обеспечивает параллелизм на уровне инструкций и на уровне данных и является осуществлением техники GPGPU. OpenCL является полностью открытым стандартом, его использование не облагается лицензионными отчислениями.

Цель OpenCL состоит в том, чтобы дополнить открытые отраслевые стандарты для трёхмерной компьютерной графики и звука OpenGL и OpenAL возможностями GPU для высокопроизводительных вычислений. OpenCL разрабатывается и поддерживается некоммерческим консорциумом Khronos Group, в который входят много крупных компаний, включая AMD, Apple, ARM, Intel, Nvidia, Sony Computer Entertainment и другие.

То есть благодаря такой универсальности OpenCL, программы для выполнения вычислений, в том числе и hashcat, запускают свои задачи универсальным способом на любых устройствах, поддерживающих OpenCL.

OpenCL поддерживают видеокарты AMD, NVIDIA, а также Intel GPU.

Информацию о поддерживаемых процессорах Intel вы найдёте на странице https://github.com/intel/compute-runtime (поддержка «Intel Graphics Compute Runtime for oneAPI Level Zero and OpenCL» появилась с Gen8) и https://www.intel.ru/content/www/ru/ru/support/articles/000005524/graphics-drivers.html (поддержка OpenCL разными поколениями и моделями процессоров).

Видеокарты AMD, NVIDIA также в большинстве поддерживают OpenCL, кроме совсем старых.

Для работы OpenCL необходима установка драйвера и инструментов взаимодействия с OpenCL. Данная статья посвящена установке OpenCL в Linux. Аналогичные инструкции для Windows даны в статье «Инструкция по hashcat: запуск и использование программы для взлома паролей» (смотрите раздел «Драйверы для hashcat»).

Итак, требования для работы hashcat с OpenCL следующие:

Для устаревших процессоров (до Broadwell) используется «OpenCL 2.0 GPU Driver Package for Linux» (Iris, Iris Pro).

В этой статье будет показано, как установить всё необходимое для использования OpenCL на видеокартах NVIDIA и современных процессорах Intel. Инструкции будут даны на примере Kali Linux (также должны подходить для Debian, Linux Mint, Ubuntu и их производных) и Arch Linux (BlackArch).

Как включить OpenCL на Kali Linux (Debian, Linux Mint, Ubuntu) для hashcat

Включение OpenCL для NVIDIA

Начните с полного обновления системы и затем перезагрузитесь:

После того, как мы обновили систему, нужно проверить модули ядра nouveau (свободные драйвера Nvidia, они будут конфликтовать с проприетарными)

Если предыдущая команда хоть что-то вывела, например:

это означает, что они включены. Поэтому необходимо добавить их в чёрный список:

После изменения параметров ядра, нам нужно обновить наши initramfs и перезагрузиться.

После перезагрузки и проверки, что модули nouveau не загружены, мы переходим к установке загрузчика OpenCL ICD, драйверов и набора инструментов CUDA.

Во время установки драйверов система создаёт новые модули ядра, поэтому требуется ещё одна перезагрузка.

Проверка установленных драйверов

Теперь наша система должна быть готова, нам нужно проверить, что драйверы корректно загружены. Мы можем быстро в этом убедиться запустив инструмент nvidia-smi.

Вывод показывает, что наш драйвер и GPU в порядке — можно приступать к взлому паролей. Перед продолжением, давайте ещё раз сделаем проверку и убедимся, что hashcat и CUDA работают вместе.

Если вы получили ошибку clGetDeviceIDs(): CL_DEVICE_NOT_FOUND с отметкой Platform ID Vendor: Mesa, то запустите:

Продолжим запуском теста производительности. Бенчмарк

Включение OpenCL для Intel

Если ваш центральный процессор поддерживает OpenCL, то установите следующие пакеты:

Просмотрим список устройств ещё раз (должно добавиться новое устройство):

И выполним бенчмар ещё раз:

Как включить OpenCL на Arch Linux (BlackArch) для hashcat

Включение OpenCL для NVIDIA

Удалите xf86-video-nouveau есть он есть:

Установите проприетарный драйвер NVIDIA:

Установите драйвер CUDA и другие необходимые пакеты, а также hashcat:

Включение OpenCL для Intel

Теперь проверим список устройств:

Пакет beignet

beignet — это реализация OpenCL для Intel IvyBridge и Haswell iGPUs. В настоящее время этот пакет считается устаревшим и его должен заменить intel-compute-runtime. У меня в системе установить beignet, то появляется дополнительное устройство OpenCL — как на Kali Linux, где также видно 3 устройства OpenCL. Но это устройство работает нестабильно с Hashcat.

Вы можете протестировать, как себя ведёт beignet на вашей системе. Возможно, для более старых процессоров это единственная опция.

OpenCL для AMD

Если вы владелец AMD карты, то поделитесь вашим опытом установки драйвера AMD с поддержкой OpenCL. Пишите ваши команды для установки в комментариях — и я добавлю в статью новый раздел. Если есть возможность, сделайте скриншоты и/или бенчмарки.

Источник

Читайте также:  Как правильно установить стеклоподъемник на маз