Куда ядра что это

Нужны ли графические ядра Nvidia CUDA для игр?

Куда ядра что это. Смотреть фото Куда ядра что это. Смотреть картинку Куда ядра что это. Картинка про Куда ядра что это. Фото Куда ядра что это

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

CUDA долгое время была одной из самых выдающихся записей в спецификациях любой видеокарты GeForce. Однако не все до конца понимают, что такое ядра CUDA и что конкретно они означают для игр.

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

Что такое ядра видеокарты CUDA?

CUDA является аббревиатурой от одной из запатентованных технологий Nvidia: Compute Unified Device Architecture. Его цель? Эффективные параллельные вычисления.

Одиночное ядро ​​CUDA аналогично ядру ЦП, основное отличие в том, что оно менее изощренное, но реализовано в большем количестве. Обычный игровой процессор имеет от 2 до 16 ядер, но количество ядер CUDA исчисляется сотнями, даже в самых низких современных видеокартах Nvidia GeForce. Между тем, у высококлассных карт сейчас их тысячи.

Что делают ядра CUDA в играх?

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

И как ядра CUDA влияют на производительность в игре?

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

Ядра CUDA или потоковые процессоры?

Там, где у Nvidia GeForce есть ядра CUDA, у их основного конкурента AMD Radeon есть потоковые процессоры.

Ядра CUDA лучше оптимизированы, поскольку аппаратное обеспечение Nvidia обычно сравнивают с AMD, но нет никаких явных различий в производительности или качестве графики, о которых вам следует беспокоиться, если вы разрываетесь между приобретением Nvidia или AMD GPU.

Сколько ядер CUDA вам нужно?

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

Многие другие спецификации, такие как пропускная способность VRAM, более важны для рассмотрения, чем количество ядер CUDA, а также вопрос оптимизации программного обеспечения.

Для общего представления о том, насколько мощен графический процессор, мы рекомендуем проверить UserBenchmark. Однако, если вы хотите увидеть детальное и всестороннее тестирование, есть несколько надежных сайтов, таких как GamersNexus, TrustedReviews, Tom’s Hardware, AnandTech и ряд других.

Вывод

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

Источник

CUDA: Как работает GPU

Внутренняя модель nVidia GPU – ключевой момент в понимании GPGPU с использованием CUDA. В этот раз я постараюсь наиболее детально рассказать о программном устройстве GPUs. Я расскажу о ключевых моментах компилятора CUDA, интерфейсе CUDA runtime API, ну, и в заключение, приведу пример использования CUDA для несложных математических вычислений.

Вычислительная модель GPU:

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

CUDA и язык C:

Дополнительные типы переменных и их спецификаторы будут рассмотрены непосредственно в примерах работы с памятью.

CUDA host API:

Перед тем, как приступить к непосредственному использованию CUDA для вычислений, необходимо ознакомиться с так называемым CUDA host API, который является связующим звеном между CPU и GPU. CUDA host API в свою очередь можно разделить на низкоуровневое API под названием CUDA driver API, который предоставляет доступ к драйверу пользовательского режима CUDA, и высокоуровневое API – CUDA runtime API. В своих примерах я буду использовать CUDA runtime API.

Понимаем работу GPU:

Как было сказано, нить – непосредственный исполнитель вычислений. Каким же тогда образом происходит распараллеливание вычислений между нитями? Рассмотрим работу отдельно взятого блока.

Задача. Требуется вычислить сумму двух векторов размерностью N элементов.

Нам известна максимальные размеры нашего блока: 512*512*64 нитей. Так как вектор у нас одномерный, то пока ограничимся использованием x-измерения нашего блока, то есть задействуем только одну полосу нитей из блока (рис. 3).
Куда ядра что это. Смотреть фото Куда ядра что это. Смотреть картинку Куда ядра что это. Картинка про Куда ядра что это. Фото Куда ядра что это
Рис. 3. Наша полоса нитей из используемого блока.

Заметим, что x-размерность блока 512, то есть, мы можем сложить за один раз векторы, длина которых N // Функция сложения двух векторов
__global__ void addVector( float * left, float * right, float * result)
<
//Получаем id текущей нити.
int idx = threadIdx.x;

Таким образом, распараллеливание будет выполнено автоматически при запуске ядра. В этой функции так же используется встроенная переменная threadIdx и её поле x, которая позволяет задать соответствие между расчетом элемента вектора и нитью в блоке. Делаем расчет каждого элемента вектора в отдельной нити.

Пишем код, которые отвечает за 1 и 2 пункт в программе:

#define SIZE 512
__host__ int main()
<
//Выделяем память под вектора
float * vec1 = new float [SIZE];
float * vec2 = new float [SIZE];
float * vec3 = new float [SIZE];

//Инициализируем значения векторов
for ( int i = 0; i //Указатели на память видеокарте
float * devVec1;
float * devVec2;
float * devVec3;


dim3 gridSize = dim3(1, 1, 1); //Размер используемого грида
dim3 blockSize = dim3(SIZE, 1, 1); //Размер используемого блока

Теперь нам остаеться скопировать результат расчета из видеопамяти в память хоста. Но у функций ядра при этом есть особенность – асинхронное исполнение, то есть, если после вызова ядра начал работать следующий участок кода, то это ещё не значит, что GPU выполнил расчеты. Для завершения работы заданной функции ядра необходимо использовать средства синхронизации, например event’ы. Поэтому, перед копированием результатов на хост выполняем синхронизацию нитей GPU через event.

Код после вызова ядра:

//Выполняем вызов функции ядра
addVector >>(devVec1, devVec2, devVec3);

//Хендл event’а
cudaEvent_t syncEvent;

cudaEventCreate(&syncEvent); //Создаем event
cudaEventRecord(syncEvent, 0); //Записываем event
cudaEventSynchronize(syncEvent); //Синхронизируем event

Рассмотрим более подробно функции из Event Managment API.

Куда ядра что это. Смотреть фото Куда ядра что это. Смотреть картинку Куда ядра что это. Картинка про Куда ядра что это. Фото Куда ядра что это
Рис. 4. Синхронизация работы основоной и GPU прграмм.

На рисунке 4 блок «Ожидание прохождения Event’а» и есть вызов функции cudaEventSynchronize.

Ну и в заключении выводим результат на экран и чистим выделенные ресурсы.

cudaFree(devVec1);
cudaFree(devVec2);
cudaFree(devVec3);

Думаю, что описывать функции высвобождения ресурсов нет необходимости. Разве что, можно напомнить, что они так же возвращают значения cudaError_t, если есть необходимость проверки их работы.

Заключение

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

Источник

Что такое ядра CUDA и как они улучшают компьютерные игры?

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

Это все изменится. Мы расскажем вам об основах ядер CvA от Nvidia и о том, как они помогают вашему ПК лучше воспроизводить графику.

Что такое ядра CUDA?

Куда ядра что это. Смотреть фото Куда ядра что это. Смотреть картинку Куда ядра что это. Картинка про Куда ядра что это. Фото Куда ядра что этоИзображение предоставлено: kampfbox / Pixabay

Ядра CUDA звучат круто, но они, к сожалению, не имеют ничего общего с барракудой. CUDA расшифровывается как «Compute Unified Device Architecture», которая мало что объясняет, что конкретно делают ядра CUDA. Эти высокотехнологичные ядра фактически специализируются на параллельной обработке. Другими словами, они способны работать вместе, чтобы выполнить задачу.

Вы знакомы с тем, как работают процессоры?

Что такое процессор и что он делает?

Что такое процессор и что он делает?
Вычислительные сокращения сбивают с толку. Что такое процессор в любом случае? И нужен ли мне четырехъядерный или двухъядерный процессор? Как насчет AMD или Intel? Мы здесь, чтобы помочь объяснить разницу!
Прочитайте больше

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

Ядра CUDA работают так же, как и ядра ЦП (за исключением того, что они находятся внутри графических процессоров). Хотя вы обычно можете подсчитать количество ядер ЦП на обеих руках, количество ядер CUDA в графическом процессоре может исчисляться сотнями или тысячами. Как правило, вы не увидите GPU только с одним ядром CUDA — у GPU обычно их сотни и более.

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

Почему CUDA Core имеет значение в играх?

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

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

Ядра CUDA только выполняют задачи, связанные с графикой, и именно здесь ядра CUDA выделяются из ядер ЦП. В то время как ядра ЦП работают для выполнения различных несвязанных задач, ядрам CUDA приходится беспокоиться только о графике.

Что касается вашего игрового опыта, ядра CUDA помогают сделать вашу игру реалистичной, предоставляя графику с высоким разрешением, которая создает реалистичный 3D-эффект. Вы также заметите, что ваши игры выглядят более детально и имеют улучшенное освещение и затенение.

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

В чем разница между ядрами CUDA и потоковыми процессорами?

Если вы поклонник AMD, то, вероятно, вы знаете о потоковых процессорах AMD. Большинство людей знают потоковые процессоры как версию ядер CUDA от AMD, что по большей части верно.

Потоковые процессоры имеют то же назначение, что и ядра CUDA, но оба ядра работают по-разному. Ядра CUDA и потоковые процессоры определенно не равны друг другу — 100 ядер CUDA не эквивалентны 100 потоковым процессорам.

Итак, что же отличает потоковые процессоры от ядер CUDA? В основном это связано с тем, как построен графический процессор. Структура графических процессоров AMD и Nvidia сильно различается, и это приводит к тому, что ядра работают по-разному.

Сколько ядер CUDA вам действительно нужно?

Чем больше у вас ядер CUDA, тем лучше будет ваш игровой опыт. Однако, если вы ищете доступную видеокарту

6 лучших бюджетных видеокарт для дешевых игр

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

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

Ядра CUDA не просто популярны среди геймеров. Они имеют несколько различных применений в областях, которые имеют дело с огромным количеством данных, таких как инжиниринг и майнинг биткойнов. Вам понадобится большое количество ядер CUDA в этих областях, но сколько вам нужно, чтобы просто играть в компьютерную игру?

Ответ на самом деле зависит от того, сколько денег в вашем кошельке и насколько хорошо вы хотите свою видеокарту. При этом видеокарта с большим количеством ядер CUDA не обязательно означает, что она лучше, чем карта с меньшим числом. Качество видеокарты действительно зависит от того, как другие ее функции взаимодействуют с ядрами CUDA.

Чтобы получить точное сравнение между двумя картами, вы должны взглянуть на тесты производительности

10 лучших бесплатных тестовых программ для Windows

10 лучших бесплатных тестовых программ для Windows
Используйте это фантастическое и бесплатное тестовое программное обеспечение для Windows, чтобы устранить неполадки в вашей системе и поддерживать ее в актуальном состоянии.
Прочитайте больше

,

Заменят ли когда-нибудь графические процессоры?

Разработка ядер CUDA заставляет задуматься о том, может ли графический процессор полностью заменить процессор. Ядра CUDA способны вместить тысячи ядер, но достаточно ли этого для замены?

С начала 2000-х годов Nvidia работает над созданием графического процессора для общих вычислений. В 2003 году исследователи из Стэнфордского университета создали модель программирования под названием Brook, которая позволит Nvidia еще на шаг приблизиться к созданию универсального графического процессора. В то время некоторые люди думали, что внедрение Brook положит конец процессорам (как вы можете видеть, этого еще не произошло).

Лидер исследовательской группы, Ян Бак, в конце концов присоединился к Nvidia, начав рассказ о ядре CUDA. Nvidia выпустила CUDA в 2006 году, и с тех пор она доминирует в сфере глубокого обучения

Глубокое обучение против машинного обучения против искусственного интеллекта: как они идут вместе?

Глубокое обучение против машинного обучения против искусственного интеллекта: как они идут вместе?
Пытаетесь понять разницу между искусственным интеллектом, машинным обучением и глубоким обучением? Вот что они все значат.
Прочитайте больше

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

Обновление вашей видеокарты

Использование видеокарты, оснащенной ядрами CUDA, даст вашему ПК преимущество в общей производительности, а также в играх. Больше ядер CUDA означает более четкую и реалистичную графику. Только не забудьте учесть и другие особенности видеокарты.

Если все элементы работают вместе для достижения наилучшей производительности, вы будете знать, что сделали правильный выбор.

Не знаете, с чего начать поиск следующей видеокарты? Наше руководство по покупке видеокарт

Лучшие видеокарты для любого бюджета

Лучшие видеокарты для любого бюджета
Найти высокопроизводительный бюджетный графический процессор может быть непросто. Мы собрали лучшие видеокарты для любого бюджета.
Прочитайте больше

поможет вам сделать осознанную покупку, которая соответствует вашему бюджету.

Как пиратская игра престолов и другие шоу могут принести вам вредоносное ПО

Источник

Вычисления на графических процессорах

Куда ядра что это. Смотреть фото Куда ядра что это. Смотреть картинку Куда ядра что это. Картинка про Куда ядра что это. Фото Куда ядра что это

Куда ядра что это. Смотреть фото Куда ядра что это. Смотреть картинку Куда ядра что это. Картинка про Куда ядра что это. Фото Куда ядра что это

Вычисления на графических процессорах

CUDA SDK позволяет программистам реализовывать на специальном упрощённом диалекте языка программирования Си алгоритмы, выполнимые на графических процессорах NVIDIA и включать специальные функции в текст программы на Cи. CUDA даёт разработчику возможность по своему усмотрению организовывать доступ к набору инструкций графического ускорителя и управлять его памятью, организовывать на нём сложные параллельные вычисления.

История

В 2003 г. Intel и AMD участвовали в совместной гонке за самый мощный процессор. За несколько лет в результате этой гонки тактовые частоты существенно выросли, особенно после выхода Intel Pentium 4.

После прироста тактовых частот (между 2001 и 2003 гг. тактовая частота Pentium 4 удвоилась с 1,5 до 3 ГГц), а пользователям пришлось довольствоваться десятыми долями гигагерц, которые вывели на рынок производители (с 2003 до 2005 гг.тактовые частоты увеличились 3 до 3,8 ГГц).

Куда ядра что это. Смотреть фото Куда ядра что это. Смотреть картинку Куда ядра что это. Картинка про Куда ядра что это. Фото Куда ядра что это

Работа GPU относительно простая. Она заключается в принятии группы полигонов с одной стороны и генерации группы пикселей с другой. Полигоны и пиксели независимы друг от друга, поэтому их можно обрабатывать параллельно. Таким образом, в GPU можно выделить крупную часть кристалла на вычислительные блоки, которые, в отличие от CPU, будут реально использоваться.

Куда ядра что это. Смотреть фото Куда ядра что это. Смотреть картинку Куда ядра что это. Картинка про Куда ядра что это. Фото Куда ядра что это

Первые расчёты на GPU

В дальнейшем, некоторые исследователи из проекта Brook перешли в команду разработчиков NVIDIA, чтобы представить программно-аппаратную стратегию параллельных вычислений, открыв новую долю рынка. И главным преимуществом этой инициативы NVIDIA стало то, что разработчики отлично знают все возможности своих GPU до мелочей, и в использовании графического API нет необходимости, а работать с аппаратным обеспечением можно напрямую при помощи драйвера. Результатом усилий этой команды стала NVIDIA CUDA.

Области применения параллельных расчётов на GPU

При переносе вычислений на GPU, во многих задачах достигается ускорение в 5-30 раз, по сравнению с быстрыми универсальными процессорами. Самые большие цифры (порядка 100-кратного ускорения и даже более!) достигаются на коде, который не очень хорошо подходит для расчётов при помощи блоков SSE, но вполне удобен для GPU.

Это лишь некоторые примеры ускорений синтетического кода на GPU против SSE-векторизованного кода на CPU (по данным NVIDIA):

• Флуоресцентная микроскопия: 12x.

• Молекулярная динамика (non-bonded force calc): 8-16x;

• Электростатика (прямое и многоуровневое суммирование Кулона): 40-120x и 7x.

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

Куда ядра что это. Смотреть фото Куда ядра что это. Смотреть картинку Куда ядра что это. Картинка про Куда ядра что это. Фото Куда ядра что это

Перечень основных приложений, в которых применяются вычисления на GPU: анализ и обработка изображений и сигналов, симуляция физики, вычислительная математика, вычислительная биология, финансовые расчёты, базы данных, динамика газов и жидкостей, криптография, адаптивная лучевая терапия, астрономия, обработка звука, биоинформатика, биологические симуляции, компьютерное зрение, анализ данных (data mining), цифровое кино и телевидение, электромагнитные симуляции, геоинформационные системы, военные применения, горное планирование, молекулярная динамика, магнитно-резонансная томография (MRI), нейросети, океанографические исследования, физика частиц, симуляция свёртывания молекул белка, квантовая химия, трассировка лучей, визуализация, радары, гидродинамическое моделирование (reservoir simulation), искусственный интеллект, анализ спутниковых данных, сейсмическая разведка, хирургия, ультразвук, видеоконференции.

Преимущества и ограничения CUDA

Куда ядра что это. Смотреть фото Куда ядра что это. Смотреть картинку Куда ядра что это. Картинка про Куда ядра что это. Фото Куда ядра что это

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

Программно-аппаратная архитектура для вычислений на GPU компании NVIDIA отличается от предыдущих моделей GPGPU тем, что позволяет писать программы для GPU на настоящем языке Си со стандартным синтаксисом, указателями и необходимостью в минимуме расширений для доступа к вычислительным ресурсам видеочипов. CUDA не зависит от графических API, и обладает некоторыми особенностями, предназначенными специально для вычислений общего назначения.

Преимущества CUDA перед традиционным подходом к GPGPU вычислениям

CUDA обеспечивает доступ к разделяемой между потоками памяти размером в 16 Кб на мультипроцессор, которая может быть использована для организации кэша с широкой полосой пропускания, по сравнению с текстурными выборками;

• более эффективная передача данных между системной и видеопамятью;

• отсутствие необходимости в графических API с избыточностью и накладными расходами;

• линейная адресация памяти, и gather и scatter, возможность записи по произвольным адресам;

• аппаратная поддержка целочисленных и битовых операций.

Основные ограничения CUDA:

• отсутствие поддержки рекурсии для выполняемых функций;

• минимальная ширина блока в 32 потока;

• закрытая архитектура CUDA, принадлежащая NVIDIA.

Слабыми местами программирования при помощи предыдущих методов GPGPU является то, что эти методы не используют блоки исполнения вершинных шейдеров в предыдущих неунифицированных архитектурах, данные хранятся в текстурах, а выводятся во внеэкранный буфер, а многопроходные алгоритмы используют пиксельные шейдерные блоки. В ограничения GPGPU можно включить: недостаточно эффективное использование аппаратных возможностей, ограничения полосой пропускания памяти, отсутствие операции scatter (только gather), обязательное использование графического API.

Основные преимущества CUDA по сравнению с предыдущими методами GPGPU вытекают из того, что эта архитектура спроектирована для эффективного использования неграфических вычислений на GPU и использует язык программирования C, не требуя переноса алгоритмов в удобный для концепции графического конвейера вид. CUDA предлагает новый путь вычислений на GPU, не использующий графические API, предлагающий произвольный доступ к памяти (scatter или gather). Такая архитектура лишена недостатков GPGPU и использует все исполнительные блоки, а также расширяет возможности за счёт целочисленной математики и операций битового сдвига.

CUDA открывает некоторые аппаратные возможности, недоступные из графических API, такие как разделяемая память. Это память небольшого объёма (16 килобайт на мультипроцессор), к которой имеют доступ блоки потоков. Она позволяет кэшировать наиболее часто используемые данные и может обеспечить более высокую скорость, по сравнению с использованием текстурных выборок для этой задачи. Что, в свою очередь, снижает чувствительность к пропускной способности параллельных алгоритмов во многих приложениях. Например, это полезно для линейной алгебры, быстрого преобразования Фурье и фильтров обработки изображений.

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

Недостатки CUDA

Альтернативы CUDA

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

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

• CAL/IL(Compute Abstraction Layer/Intermediate Language)

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

NVDIA CUDA в российской научной среде.

По состоянию на декабрь 2009 г., программная модель CUDA преподается в 269 университетах мира. В России обучающие курсы по CUDA читаются в Московском, Санкт-Петербургском, Казанском, Новосибирском и Пермском государственных университетах, Международном университете природы общества и человека «Дубна», Объединённом институте ядерных исследований, Московском институте электронной техники, Ивановском государственном энергетическом университете, БГТУ им. В. Г. Шухова, МГТУ им. Баумана, РХТУ им. Менделеева, Российском научном центре «Курчатовский институт», Межрегиональном суперкомпьютерном центре РАН, Таганрогском технологическом институте (ТТИ ЮФУ).

Источник

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

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