LINUX.ORG.RU

QtOpenCL

 ,


0

0

OpenCL — это открытый набор библиотек для параллельного программирования в гетерогенной среде. Что это значит? OpenCL позволяет запускать C-код на вычислительных мощностях вашей видеокарты. Или же на вашем центральном процессоре — ему всё равно. Кроме того, OpenCL управляет распределением нагрузки между всеми ядрами CPU и GPU, до которых он только сможет дотянуться. Идея в том, что программисту не нужно предпринимать дополнительных усилий по написанию очередей обработки — OpenCL делает это для вас, и ваше приложение без каких-либо изменений масштабируется для выполнения на одном, двух или же на двадцати четырёх ядрах.

QtOpenCL — это обёртка для OpenCL 1.0 API, предоставляющая интерфейс в Qt-стиле. Она позволяет автоматизировать такие шаги, как инициализация OpenCL, компиляция и запуск программ. Кроме того, QtOpenCL предоставляет функции для конвертирования между структурами данных Qt (такими, как QImage) и OpenCL.

QtOpenCL находится в ранней стадии разработки, и распространяется как отдельный модуль.

>>> Подробности



Проверено: isden ()

Ответ на: комментарий от trimm

Одно дело увлекаться «частностями» и спорить о 2D, 3D и «громко пукать в лужу». А другое дело видеть картину в целом, которую пытаются воплотить в концепции «все в одном». И в такой концепции рано или поздно найдется устройство с качественной поддержкой и 2D, и 3D. И всего остального.

Твои слова равнозначны тому, что ты можешь, например, долго «кричать»: «Зачем контроллер памяти должен размещаться в процессоре?!» и не понимать картины в целом, но оставаться при этом высококлассным специалистом в какой-то из областей IT.

egaiafree
()
Ответ на: комментарий от trimm

>у многих стоит встроенная графика, но пользуюцца они полноценной видюхой

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

Игрушки и свистоперделки - это уже не элементарное формирование 3д графики, а и обсчеты, к которым проц уже не способен

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

anonymous
()
Ответ на: комментарий от egaiafree

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

trimm
()
Ответ на: комментарий от anonymous

ТАких ноутов, дружок, меньшинство. Либо пруф доли рынка конкретно интел графики, где точно нет и не может быть видюх (сразу откидываем все десктопы), либо бздишь в лужу и не краснеешь.

А ты мои посты почитай. Формирование и обсчет 3д графики - это не одно и то же. Ты читай внимательнее, а не перди.

Книжки я читал. И опыт фактический имею. В отличии от тебя.

trimm
()
Ответ на: комментарий от trimm

>ТАких ноутов, дружок, меньшинство. Либо пруф доли рынка конкретно интел графики, где точно нет и не может быть видюх (сразу откидываем все десктопы), либо бздишь в лужу и не краснеешь.

А пукнул ведь опять ты ;) Звучно и протяжно.

http://hotline.ua/gd/12/

Видеоадаптер
ATI (339)
NVidia (294)
интегрированный (623)

Формирование и обсчет 3д графики - это не одно и то же.


Расскажи это пользователям, которые юзают это самое 3д на интеграшках. А я сразу сказал, что разговор сведется к крусисам, между прочим.

anonymous
()
Ответ на: комментарий от anonymous

А я тебе сразу ответил, что, еси думаешь о крусисах, то твой уровень развития понятен, хоч и не в такой форме. Угу. Точно - на интеграшка играют в игрушки, транскодируют видео, архивят, декодят, юзают фотошоп и т.п. Щаз же.

Перднул в лужу ты. Я попросил не модельные ряды устройств, а количество устройств с интеграшками в долях рынка.

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

trimm
()
Ответ на: комментарий от trimm

>на интеграшка играют в игрушки, транскодируют видео, архивят, декодят, юзают фотошоп и т.п. Щаз же.

Ого, второй косяк пошел? А что на них делают, по-твоему? Только эксели гоняют?

Я попросил не модельные ряды устройств, а количество устройств с интеграшками в долях рынка.

Было уже, по проданным девайсам. В чем дело?

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

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

anonymous
()
Ответ на: комментарий от anonymous

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

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

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

Извини, но первый в лужу пердеть начал ты, следовательно, сначала пруфы с тебя, ибо я не еврей, а турок -> жду ответа перед тем, как задавать новый вопрос.

trimm
()
Ответ на: комментарий от trimm

>Давай делись.

Неее, тебе больше нельзя ;)

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

У кого «у них», что «это», какой «такой»? Тебе рынок ненавязчиво намекает, что большинство потребителей болт ложили на кодирование видео видяхами, чего еще?

А не количество проданных девайсов, на которые не поставили видюшку постфактум.

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

жду ответа перед тем, как задавать новый вопрос

Я уже ссылки приводил, так что очередь таки твоя ;)

anonymous
()
Ответ на: комментарий от trimm

> ибо нет девайсов более разнородных, чем видюха и проц.

Согласен. Гибридных систем может и нет на рынке (хотя где-то я слыхал о новом Atom, являющимся одним кристаллом CPU и GPU, в отличие от Core i3 и i5), но в разработках и тестировании они появляются. Если слухи о Atom правдивы, и если AMD действительно предоставила «некоторым приближенным» Fusion, тогда в обозримом будущем они появятся на рынке.

даже не представляю архитектуру их

В технической реализации «железа» - да. Но в программной.. openCL пришелся бы очень даже кстати, в отличии от CUDA, привязанной только к продуктам NVIDIA. Особенно на начальном этапе развития таких продуктов.

egaiafree
()
Ответ на: комментарий от egaiafree

Почему-то Apple использует не CUDA, а именно openCL (и, к тому же, является одним из разработчиков стандарта openCL). Быть «на поводу» NVIDIA не очень то нравится.

egaiafree
()
Ответ на: комментарий от egaiafree

> Почему-то Apple использует не CUDA, а именно openCL (и, к тому же, является одним из разработчиков стандарта openCL). Быть «на поводу» NVIDIA не очень то нравится.

Ты разницу между куда и опенцл понимаешь? Куда - как ассемблер, а опенцл, как С.

Более того, таким образом эппл себе сделал платформу дял простого перехода к конкурентам, еси шо.

trimm
()
Ответ на: комментарий от anonymous

Не жадничай.

У интела - у них.

Мне рынок ничего не намекает, ибо статистика нерепрезентативна абсолютно по причинам, изложенным выше.

Приведи статистику, дальше обсудим, много ли покупают второй девайс.

А дальше уж и я статистику приведу всего, чего пожелаешь.

trimm
()
Ответ на: комментарий от egaiafree

Есть. Нвидиевский ИОН уже есть. ПОлностью гибридная, еси я правильно понимаю. НО там от процессора мало что осталось.

ТАк куда - просто самая качественная. У амд есть стрим, но оно - такое говно, как и все от амд.

trimm
()
Ответ на: комментарий от trimm

>Ты разницу между куда и опенцл понимаешь? Куда - как ассемблер, а опенцл, как С.

Ясно. Теперь понятны твои познания в CUDA. Не буду говорить от себя. Скажу от Wiki: «CUDA - технология GPGPU, позволяющая программистам реализовывать на упрощенном языке программирования Си алгоритмы, выполнимые на графических процессорах ускорителей GeForce восьмого поколения и старше.. Фактически, CUDA позволяет включать в текст программы на C специальные функции. Эти функции пишутся на особом диалекте С, и выполняются на графическом процессоре.».

Ты вот отписывал людям, да и мне в том числе о «незнаниях каких-то», или о «пердежах в лужах». Почитай лучше курс пользователя. Для начала. Тоже мне «профессор».

egaiafree
()
Ответ на: комментарий от egaiafree

Блин. У тебя с аналогиями проблемы, чи шо? И читать плохо умеешь, еси не заметил «как». Еси бы я сказал, что куда - это С и опенцл - это С, то это явно бы не показало разницу между кудой и опенцл. Куда намного более низкоуровнева и дает полный контроль над вычислениями, но и гемора больше.

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

И да. Внезапно, но куда - это не только вычислительные ядра, как написала твоя любимая вики. C 3й версии там даже появилось наследование и С++, но лично не щупал - не наю, как оно.

trimm
()
Ответ на: комментарий от trimm

> Куда - как ассемблер, а опенцл, как С.

Ты хоть понимаешь, о чем говоришь? Объясню, имея лишь скромный опыт программирования на С++.

CUDA использует упрощенный С, не соответствующий даже стандарту С99. OpenCL - использует язык С. Версию С99, которая является на данный момент последним стандартом. При компиляции программ С++ можно выполнить «трансляцию» кода С++ на С. В первые времена использования С++ именно такой подход использовался. Вот тебе и использование в openCL С++.

А то, что ты говоришь о использовании C++ в CUDA.. Неужели не понятно, что такой возможностью изначально обладал OpenCL? И NVIDIA предприняла попытки «наверстать» то же и в CUDA. Писать программы на таком типа «ассемблере» долго никто не будет. А ты попал под влияние своей CUDA и ничего другого вокруг не замечаешь.

«Показать разницу», как по мне, ты не умеешь. И так понятно, что openCL более «абстрактный», чем CUDA, которая привязана только к картам NVIDIA. Никакая компания не собирается находится в «лапах» NVIDIA. Будущее как минимум за открытыми стандартами, а не за «закрытыми дверями».

egaiafree
()
Ответ на: комментарий от egaiafree

Ну уж прости меня грешного - показал, как смог.

Ты знаешь, будут. НЕдавно видел статью по оптимизации на иФон приложений. Человек вполне серьезно использовал нативные асмовые вставки, что дало прирост по скорости на 15% процентов.

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

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

Открытые стандарты - да. НО сиравно ниже лазать будут. ПРимеры и с асмом, и с кудой это показывают. НЕ понимаю, почему ты так вцепился в куду именно. Стрим тебя не смущает, штоле? Типа, фанатичная ненависть к нвидии? ТЕбя же не смущает, что на любой платформе есть закрытый ассемблер и тебе не дадут ХДЛ описание его?

trimm
()
Ответ на: комментарий от egaiafree

ТАки да. Спать ща пойду. А что? Неужто, как добрый человек, решил отсыпать? Чисто для успокоения нервов.

trimm
()
Ответ на: комментарий от egaiafree

Есть исходный код OpenCL и CUDA. Что нужно для ихнего выполнения и как это происходит.

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

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

Смущает то, что CUDA только для NVIDIA, и только для видеокарт. Понятно, что использование процессора начинается, когда отсутствует что-либо, т.е. то, что не является CUDA.

С массивами понятно. Или другими объектами. А как, например, обстоят у нее дела с инструкциями логическим, наподобие if и т.п. Логическая реализация, используемая в картах, такая же, как и у NVIDIA, или приходится заменять ее процессором?

egaiafree
()
Ответ на: комментарий от egaiafree

Это взгляд со стороны, не вдаваясь в терминологию OpenCL или CUDA. Там, вроде, драйвер просто обозначает устройство или что-то подобное.

egaiafree
()
Ответ на: комментарий от egaiafree

Да. Атишный стрим туда же, куда и куду, ибо ягоды одного поля.

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

Но вообще там логические операции есть.

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

trimm
()
Ответ на: комментарий от trimm

Вот это меня интересовало. Спасибо. Честно. Без обид. У процессоров предсказания ветвлений вроде большие. Поэтому было бы очень классно, если бы они были столь просты в применении и здесь. Может, поэтому начинают создавать такие гибриды, которые предоставят это?

egaiafree
()
Ответ на: комментарий от egaiafree

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

Да не за что. Самому приятно было пообщацца.

trimm
()
Ответ на: комментарий от trimm

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

egaiafree
()
Ответ на: комментарий от trimm

>У интела - у них.

Ок. И тем не менее, продаются они лучше всех. А своей нерепрезентативностью тряси дальше — даже если к интеграшкам еще что-то ставят, это не отменяет того факта, что большинству кроме неё больше ничего не надо.

anonymous
()
Ответ на: комментарий от mono

>gtk - это тулкит, а qt - фреймворк

А в чем разница?

elf
()
Ответ на: комментарий от anonymous

Большинству - то как раз надо. Перди дальше.

Слился, ибо нет данных и начал выделять метан просто в огромных количествах? Бедняжка.

trimm
()
Ответ на: комментарий от trimm

>Большинству - то как раз надо.

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

anonymous
()
Ответ на: комментарий от anonymous

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

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

trimm
()
Ответ на: комментарий от trimm

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

Если ты - идиот и к интегрированной графике всегда докупаешь дискретную видяху, это не значит, что все поступают так же (с)

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

Какое отношение это имеет к тому, что ты обозвал мифом существующие девайсы? ;)

anonymous
()
Ответ на: комментарий от anonymous

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

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

Смотри не обосрись, когда в лужу пердеть от моего поста начнешь.

trimm
()
Ответ на: комментарий от anonymous

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

trimm
()
Ответ на: комментарий от trimm

>Поскольку ты статистику не смог привести, то ты слился.

Это аутотренинг такой? Повтори еще пару раз, цифры от этого никуда не денутся.

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

Пол-инета их так называет и не парится, но истина содержится в бреде какого-то лоровского аналитика? Пиши еще.

anonymous
()
Ответ на: комментарий от anonymous

Цифр нет. ПРедоставить ты их не смог. Перди дальше.

Миллионы мух... Отличный отсыл к пол-инета по безграмотности. Перди истчо больше.

trimm
()
Ответ на: комментарий от trimm

Цифры давно есть, просто тебе сливать не хочется.

Миллионы мух...

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

anonymous
()
Ответ на: комментарий от trimm

Есть. То, что ты их не желаешь признавать, это твои проблемы. И с всего инета на анонима ты легко съехал, ага.

anonymous
()
Ответ на: комментарий от anonymous

Цифры нерепрезентативны. Перди еще.

Аноним безграмотен. Ты поддерживаешь, следовательно, ты также безграмотен. Перди больше.

trimm
()
Ответ на: комментарий от trimm

Категоричность впечатляет. Жаль, что не подтверждена компетенцией.

Перди еще.

По два раза в последних постах. Ты мазохист, чтоле?

anonymous
()
Ответ на: комментарий от anonymous

Ты очень критичен к себе. Не могу не согласицца, что ты некомпетентен. Перди еще.

А мне - то что? Сам свой метан и нюхаешь. Иди форточку открой, а то задохнешься еще.

trimm
()
Ответ на: комментарий от egaiafree

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

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

trimm
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.