Pull to refresh

Comments 26

поддерживаю, вменяемого текста, который может дать отправную точку изучения технологии, очень мало. а собирать общую картину из разрозненного материала тяжело, я пока не осилил.
за статью спасибо, она значительно больше похожа на желаемую отправную точку) чем всё остальное что я читал.
This source code was highlighted with Source Code Highlighter.

Хабр уже достаточно давно поддерживает тег source
О, спасибо. Я просто посмотрел на 2-3 статьи и сделал по аналогии с ними. В будующем исправлюсь.
«Так же быстрой памятью является „__privatE “. Это память к которой имеет доступ только отдельный поток (work-item). Всего на поток выделяется 32 регистра этой памяти.»…
Одкуда вы взяли 32 регистра? Приватная и локальная память очень совместимы, часто локальная это сумма всех приватных. Причём и это тоже не всегда правда. На каждом HW поразному…

«Вторая процедура (использующая оптимизацию) выполняется в 35 раз быстрее.»
На каком HW? ctrl+c & ctrl+v?

А где синхронизация с хоста?

«Сэмплер — это штука, которая будет оптимизировать вашу работу с изображением. У него есть три параметра:,, .»… запятая запятая и точка?

Это не введение, это что-то не продуманное с кучей скопированных примеров с сайта с которого вы учились :-).

" На каждом HW поразному…"
Ну, про тот же local везде пишут что он разный. Про private я в 2х местах натыкался про 32 регистра. Хотя на официальном сайте этого пожалуй нет. Что он любой может быть — спорить не буду, но что 32 — это очень часто на сегодняшний день встречающаяся конфигурация, всё-таки возьмусь утверждать.

«На каком HW? ctrl+c & ctrl+v?»
Откуда взят пример — я писал. Там у автора nVidia. У меня две разных карточки ADM 5700 серии. Примерно один и тот же результат на всём. Естественное, говорить строго «в 35 раз» может не правильно, но на мой взгляд было нужно показать порядок ускорения при использовании native кода.

«А где синхронизация с хоста?»
Показать ещё 5 вещей которые я тут не включил в описание? :-) Мне показалось что это менее нужная вещь чем те что я включил.

«запятая запятая и точка?»
Спасибо, сейчас поправлю. Какой-то глюк при копировании из ворда…

«Это не введение, это что-то не продуманное с кучей скопированных примеров с сайта с которого вы учились»
Во-первых, не с одного сайта а с 5-6 разных, разбавленных авторским текстом. Во-вторых, у каждого свой взгляд на мир, мне кажется что тут более-менее продуманно и структурировано для любого начинающего программиста. В принципе во избежание таких дискуссий я в первым абзаце написал что собой представляет эта статья.
Спасибо за ответ.

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

Меня все-равно радует, что хоть кто-то об и на OpenCL пишет! Я бы тоже писал, да меня с моей критикой слили в унитаз.
Хотелось бы следующую статью и потом следующую!
Я может и немного строго, но всетаки душа хочет качества, когда разговор идёт об OpenCL.
Я сам на OpenCL только с весны начал писать. Да и по работе лишь к одному проекту и то по мелочи его подключал. В основном для себя баловался. Так что что-то сильно глубокое по OpenCl выдать не смогу…
Интересно, а вы его где-нибудь использовали? Я до сих пор только несколько проектов серьёзных на CUDA видел и ни одного на CL.
Я в университете писал на OpenCL. А так в практике мне не разрешают такие «бешенства» использовать, потому, что если я уйду, никто не сможет удерживать продукт. Планирую себе найти работу в будующем с OpenCL.
Ага, я читал, оно забавно. Но сам пока не сподобился написать код и помучать его. Как будет время — поиграюсь напишу что-нибудь.

ЗЮ, Я плюсанул:)
Я когда-то мучал мозг этой статьёй. Очень приятное занятие! :-)
UFO just landed and posted this here
Хотите смотреть на граф с разницами в один или два процента? Google.
OpenMP будет немного быстрее, у него немножко другая архитектура. Но не на десятки процентов.
UFO just landed and posted this here
ИМХО, написание прогаммы в ОпенЦЛ займёт примерно в 2-3 раза дольше времени…
Да, это точно. На OpenMP всё уже оптимизировано к тому же. Не факт, что удастся получить код того же качества для сложного проекта.
Это смешные тесты! Потому, что OpenCL вы должны >>сами
парсер лох…
Вы должны сами оптимализировать код (векторы, функции, итд..), у OpenMP за вас это делает компилятор. Когда кернел подргужается, компилируется или подгружается сразу скомпилированным, тогда это тоже время жрёт.
У ОпенМП всё уже в бинарном виде.
UFO just landed and posted this here
Загрузка изображений возможна в типы image2d_t и image3d_t. Первые — это обычные изображения, вторые — двухмерные.

Может трехмерные? :-)
Блин… Поймал себя на мысли что: читаю — OpenCL, думаю — биткоины…
А за статью спасибо )
>> Так как в основе языка лежит практически стандартный с++…

Вы уверены?
Sign up to leave a comment.

Articles