Nvidia opencl – OpenCL | NVIDIA Developer

OpenCL от nVidia / Habr


Как известно, технология 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.

habr.com

NVIDIA представляет драйвер OpenCL для разработчиков|NVIDIA

За дополнительной информацией обращайтесь:

Ирина Шеховцова
NVIDIA Corporation
Тел: +7 495 981 03 00 ext 10777
[email protected]

NVIDIA представляет драйвер OpenCL для разработчиков

САНТА-КЛАРА, КАЛИФОРНИЯ — 20 АПРЕЛЯ, 2009 — Компания NVIDIA, изобретатель GPU, сегодня объявила о выпуске драйвера OpenCL и SDK пакета (Software Development Kit) для разработчиков, участвующих в программе OpenCL Early Access. NVIDIA информирует, что участники программы OpenCL Early Access уже сегодня смогут принять участие в тестировании бета-версии. Для участников программы GPU Computing Registered Developers бета-версия драйвера OpenCL будет доступна позже.

«Стандарт OpenCL был разработан на графических процессорах NVIDIA, и NVIDIA первой продемонстрировала работу кода OpenCL на GPU», — сказал Тони Тамаси (Tony Tamasi), вице-президент по технологиям и контенту в NVIDIA. «То, что NVIDIA первой выпустила драйвер OpenCL для разработчиков, укрепляет ее лидирующие позиции на рынке вычислений на GPU и становится важной вехой на пути к превращению GPU в душу современного компьютера».

Стратегия NVIDIA по вычислениям на GPU базируется на архитектуре параллельных вычислений CUDA (//www.nvidia.ru/cuda), которую компания продвигает с 2006 года. Архитектура CUDA сегодня доступна через стандартные в индустрии среды программирования, включая C, Java, Fortran и Python, и поддерживает все вычислительные интерфейсы, являясь отличным дополнением к OpenCL. CUDA уже работает на более чем 100 миллионах графических процессоров NVIDIA, достигая невиданного уровня производительности в широком спектре приложений.

Для участия в программе OpenCL Early Access разработчики могут подать заявку по адресу: www.nvidia.ru/opencl

О компании NVIDIA
Компания NVIDIA (Nasdaq: NVDA) — лидер в области технологий программируемой графики и изобретатель GPU — высокопроизводительного процессора, который генерирует захватывающую интерактивную графику на рабочих станциях, персональных компьютерах, игровых приставках и мобильных устройствах. Продукты на базе графических процессоров GeForce® предназначены для рынка игр и развлечений, продукты на базе Quadro GPU фокусируются на рынке профессионального дизайна и визуализации, а компьютерные решения Tesla™ поставляются на рынок вычислений, требующих высокой производительности. Главный офис NVIDIA расположен в Санта-Кларе, Калифорния, а филиалы компании находятся в Азии, Европе и Америке. Подробнее на сайте

www.nvidia.ru.

# # #

© 2009 компания NVIDIA. Все права защищены. Все названия компаний и/или названия продуктов могут являться торговыми именами, товарными знаками и/или или зарегистрированными товарными знаками соответствующих компаний, с которыми они ассоциируются. Возможности, цены, наличие и спецификации могут изменяться без предупреждения

www.nvidia.ru

Ссылки | OpenCL

Ссылки | OpenCL

 


Стандарты

  • Стандарт OpenCL 1.1 (pdf)
     

Cкачать SDK с поддержкой OpenCL

  • NVIDIA CUDA Toolkit
  • AMD Accelerated Parallel Processing
  • Intel OpenCL SDK
     

Тематические и обучающие ресурсы

  • Графические процессоры для высокопроизводительных вычислений на Parallel.ru 
  • Англоязычный сайт о вычислениях на GPU
  • Структурированный Online-мануал по OpenCL
  • Документация ATI Stream SDK
  • Документация по OpenCL от AMD
  • Документация по OpenCL от Nvidia
  • GPGPU.ru — русскоязычный ресурс о вычислениях на General Purpose GPU
  • GPGPU.org — англоязычный ресурс о вычислениях на General Purpose GPU
  • enja.org — Adventures in OpenCL: Part 1, Getting Started
  • enja.org — Adventures in OpenCL: Part 1.5, C++ Bindings
  • enja.org — Adventures in OpenCL: Part 2. Particles with OpenGL
  • youtube-канал khronosgroup

 


Книги

  • Основы работы с технологией CUDA (рус.)
  • The OpenCL Programming Book (англ.).
  • Programming Massively Parallel Processors (англ.)
  • OpenCL Programming Guide (англ.)
  • OpenCL in Action (англ.)
  • Heterogeneous Computing with OpenCL (англ.)
     

Форумы

  • Форум nVidia по OpenCL и CUDA
  • Форум AMD по OpenCL

 


Дополнительное программное обеспечение

  • OpenCL-Z — утилита, показывающая информацию о процессоре с поддержкой OpenCL
  • nVidia Parallel Nsight — встраиваемый в MS Visual Studio набор программного обеспечения для GPGPU-разработки
  • OpenCLcc  — OpenCL Compiler Wrapper, программное обеспечение для компиляции и отладки OpenCL-ядер
  • OpenCL Studio — IDE для разработки с использованием OpenCL
  • gDEBugger — ПО для отладки, профилирования и анализа использования памяти для OpenCL на основе MS Visual Studio
  • Anjuta DevStudio — IDE с поддержкой OpenCL (при добавлении в эту IDE компонента OpenCL Wizard)

 


OpenCL-биндинги

  • С++
  • Java
  • Python:
    • CLyther
    • PythonCL
    • PyOpenCL
  • .NET:
  • Nemerle:
  • Common Lisp
  • Erlang
  • Haskell
  • Scala
  • Ruby
  • Delphi

 

opencl.ru

Обновлено: 06.08.2019 — 08:11

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

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