Re[5]: Ищется OpenCL
От: koandrew Канада http://thingselectronic.blogspot.ca/
Дата: 30.11.12 20:53
Оценка: 5 (1)
Здравствуйте, PanychY, Вы писали:

PY> (Между прочим DirectX проблему решил: либо устройство поддерживает все фичи спецификации, либо скатертью дорожка)


И это офигенно удобно, потому как сильно уменьшило фрагментацию рынка. Теперь движки надо делать под "некое" устройство с FEATURE_LEVEL_10, FEATURE_LEVEL_10_1 и FEATURE_LEVEL_11, а не сто разных версий под разные комбинации поддерживаемых фич, как это было во времена DX9...
... << RSDN@Home 1.2.0 alpha 5 rev. 1539>>
[КУ] оккупировала армия.
Re: Ищется OpenCL
От: Mauller Россия  
Дата: 23.11.12 06:57
Оценка: 3 (1)
http://www.khronos.org/opencl/resources

this?
Re: Ищется OpenCL
От: watch-maker  
Дата: 23.11.12 09:45
Оценка: -1
Здравствуйте, PanychY, Вы писали:

PY>ибо это не OpenCL — а vendor-locked решения, что является абсолютной противоположностью OpenCL.


Что? OpenCL — это стандарт на API, призванный обеспечить совместимость программ на уровне исходных текстов. Если программу нужно портировать на другую платформу, то берётся нужный SDK и программа собирается с ним. В этом случае следование стандарту OpenCL является некой гарантией, что программа не только соберётся, но даже заработает. Разумеется, наличие реализаций от производителей ничему тут не противоречит (собственно, обычно только такие реализации и нужны). Так же не противоречило бы и наличие канонической публичной реализации, если бы она была (вот только она практически никому не нужна).

Пока не ясно, что же именно вы хотите скачать.
Ищется OpenCL
От: PanychY  
Дата: 23.11.12 01:01
Оценка:
Приветствую

Собственно сабж. Ищется OpenCL либа/хидеры/SDK.
CUDA, AMD APP SDK, Intel SDK for OpenCL Applications не предлагать, ибо это не OpenCL — а vendor-locked решения, что является абсолютной противоположностью OpenCL.
Нужны платформы Windows и Linux(или хотя бы одна).


Премного благодарен
Re[2]: Ищется OpenCL
От: PanychY  
Дата: 25.11.12 21:01
Оценка:
Здравствуйте, Mauller, Вы писали:

M>http://www.khronos.org/opencl/resources


M>this?

Да, там нашлось именно то что мне нужно. Спасибо. Как-то я мимо него почему-то прошел.
Re[2]: Ищется OpenCL
От: PanychY  
Дата: 25.11.12 21:33
Оценка:
Здравствуйте, watch-maker, Вы писали:

WM>Здравствуйте, PanychY, Вы писали:


PY>>ибо это не OpenCL — а vendor-locked решения, что является абсолютной противоположностью OpenCL.


WM>Что? OpenCL — это стандарт на API,

WM>Пока не ясно, что же именно вы хотите скачать.

Чего же тут не понятного? Нужно что-бы я один раз откомпилировал свой HelloWorld, и запускал его с разным железом без дополнительно геморроя. Принес на машину с NVidia на борту — заработало на нем, с AMD Radeon на борту — заработало, Intel Graphics/MIC — заработало, железка с названием "Шайтан устройство" производства фирмы "Рога-энд-копыта" — заработало без малейшей заминки, да хоть все вместе взятые, в любой комбинации — софтина нашла их все, выбрала одно или все сразу и заработала.
Впрочем, господин Mauller уже сильно мне помог пнув в нужную сторону.
Re[3]: Ищется OpenCL
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 26.11.12 08:59
Оценка:
Здравствуйте, PanychY, Вы писали:

PY>Чего же тут не понятного? Нужно что-бы я один раз откомпилировал свой HelloWorld, и запускал его с разным железом без дополнительно геморроя. Принес на машину с NVidia на борту — заработало на нем, с AMD Radeon на борту — заработало, Intel Graphics/MIC — заработало, железка с названием "Шайтан устройство" производства фирмы "Рога-энд-копыта" — заработало без малейшей заминки, да хоть все вместе взятые, в любой комбинации — софтина нашла их все, выбрала одно или все сразу и заработала.


1. Не факт, что у тебя получится. Не все устройства одинаково поддерживают стандарт, даже если он в них заявлен.
2. Кроме того, программа на OpenCL может компилироваться динамически драйвером конкретного устройства. Тогда какая разница с использованием какого SDK ты её написал?
3. Оптимально твоя программа будет работать только на том устройстве, под которое ты будешь писать. Даже если взять только видеокарты, то под AMD и Nvidia надо оптимизировать по-разному. Более того, надо оптимизировать под конкретную архитектуру даже внутри модельного ряда одного производителя. Например, Nvidia зарезала в последних сеирях карточек скорость выполнения операций с двойной точностью. И AMD изменила архитектуру своих видеокарт. Я не говорю уже про работу на х86 или АРМах.
Re[4]: Ищется OpenCL
От: PanychY  
Дата: 26.11.12 23:50
Оценка:
Здравствуйте, Nuzhny, Вы писали:

N>1. Не факт, что у тебя получится. Не все устройства одинаково поддерживают стандарт, даже если он в них заявлен.

Ну собственно это глобальная проблема, касающаяся всех технологий. Не думаю что мне суждено заниматься её решением. Думаю ядра спецификации реализованного на большинстве устройств мне хватит с головой. (Между прочим DirectX проблему решил: либо устройство поддерживает все фичи спецификации, либо скатертью дорожка)
N>2. Кроме того, программа на OpenCL может компилироваться динамически драйвером конкретного устройства.
Я в курсе, пункт 5.6.1 спецификации OpenCL 1.2. Собственно на это и рассчитано. Я бы даже сказал "обязана компилироваться" в целью максимальной оптимизацию под устройство. Но это не мне решать.
N>Тогда какая разница с использованием какого SDK ты её написал?
Для меня достоверный источник — исключительно Khronos group. Не хочу ломать голову потому-что, NVidia, AMD и, как пить дать, Intel налепили отсебятины в хидеры и либы. Но вот почему-то именно от Khronos group я их так и не нашел. И да, а с какого перепугу Intel-овское SDK на отрез отказывается устанавливаться на XP, в то время как NVidia и AMD-ные спокойно стали и работают без лишних вопросов? Либо они чего-то прячут, либо я — полный идиот.
N>3. Оптимально твоя программа будет работать только на том устройстве, под которое ты будешь писать. Даже если взять только видеокарты, то под AMD и Nvidia надо оптимизировать по-разному. Более того, надо оптимизировать под конкретную архитектуру даже внутри модельного ряда одного производителя. Например, Nvidia зарезала в последних сеирях карточек скорость выполнения операций с двойной точностью. И AMD изменила архитектуру своих видеокарт. Я не говорю уже про работу на х86 или АРМах.
Я буду писать в соответствии с OpenCL. Да, в отдельных случаях стоит предусмотреть те или иные вариации кода ядер, но не святые горшки лепят, и эта задача вполне себе выполнима. Если OpenCL-железка в состоянии отрапортовать о своих тараканах, то проблем нету. В крайнем случае на моём HelloWorld будет написано большими красными буквами "Такая-то железка такого-то производителя имеет такие-то тараканы, и заявленные качества работы продукта при её использовании не гарантированы". Что мне из шкуры вылазить? Пусть вендор вылазит, это его продукт, его репутации и прибыль от продаж.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.