24 / 24 / 6
Регистрация: 12.04.2013
Сообщений: 122
|
|
1 | |
OpenCL - работа с памятью GPU23.01.2015, 17:16. Показов 6091. Ответов 27
Метки нет (Все метки)
Кто знает OpenCL? Откликнитесь!
У меня тут необъяснимые проблемы при обращении к динамическим данным по указателю в ядре (__kernel). Возвращается вообще полный бред
1
|
23.01.2015, 17:16 | |
Ответы с готовыми решениями:
27
#Вычисления на GPU (GPGPU - вычислений на видеокартах): CUDA, OpenCL, AMD APP и DirectCompute Работа с OpenCL Снова про OpenCL в Delphi + программное измерение загрузки CPU & GPU (работающий пример) Работа с GPU |
24 / 24 / 6
Регистрация: 12.04.2013
Сообщений: 122
|
|
23.01.2015, 21:35 [ТС] | 21 |
1
|
24.01.2015, 03:31 | 22 |
DENIS94,
1) не понял зачем нужен OpenCL если ядро запускается в 1 поток? Ну да ладно, он тоже должен работать. 2) описал выделения памяти под 2 массива m_rkw и ms_out. Так же заполнил ms_out. Однако в ядре 3 массива. Что там с ms_in? Память то выделена? 3) почти каждая ф-ия OpenCL возвращает код ошибки. Обязательно проверяйте их все. Особенно на ранних стадиях освоения OpenCL.
0
|
24 / 24 / 6
Регистрация: 12.04.2013
Сообщений: 122
|
|
24.01.2015, 14:37 [ТС] | 23 |
1) Тестирую. потом будут запуски в больших измерениях.
2) Я писал, что ms_in пока не используется. Под него память выделяется. Она по размеру точно такая же как и под ms_out. По задумке в ms_in с хоста копируются данные при создании буфера. Потом блок шифруется при использовании раундовых ключей m_rkw и все записывается в ms_out.
0
|
24 / 24 / 6
Регистрация: 12.04.2013
Сообщений: 122
|
||||||
25.01.2015, 18:47 [ТС] | 24 | |||||
Я наконец то нашел в чем была проблема!
Не по теме:
Я не знаю как именно воспринимает типы данных компилятор OpenCL. Но походу unsigned long int и unsigned int для него к рай разные типы. Я поменял все типы указателей с unsigned long int на unsigned int и все сразу же заработало как полагается.
даже строчка: std::cout « sizeof(unsigned int) « "\n" « sizeof(unsigned long int); в MVS 2013 выдает: 4 4 В общем, будьте внимательнее с типами данных при работе с этим языком. Там не всегда все так как хотелось бы.
0
|
25.01.2015, 19:14 | 25 |
Насколько мне известно, в OpenCL нет типа unsigned long int.
Открой для себя CheatSheet. Полезная штука) Я бы не стал сравнивать встроенные типы MSVS и встроенные типы OpenCL. У них всё-таки разные стандарты.
0
|
24 / 24 / 6
Регистрация: 12.04.2013
Сообщений: 122
|
|
25.01.2015, 19:38 [ТС] | 26 |
Не открывается)
И я просто unsigned long пробовал. То же не работало..
0
|
25.01.2015, 19:43 | 28 |
Вот. Или набери в гугле "opencl cheatsheet", там будут ссылки на www.khronos.org
unsigned long в OpenCL имеет размер 64 бита, unsigned int - 32. Да да да..
1
|
25.01.2015, 19:43 | |
25.01.2015, 19:43 | |
Помогаю со студенческими работами здесь
28
Нужна книга, где рассматриваются работа с прерываниями, указатели, работа с памятью, ассемблерные вставки Работа с комплексными числами на gpu Зависание , черный экран , работа GPU кулеров на 100% После запуска игры gpu загружается на 99%, игра начинает выдавать 5fps и даже после завершения gpu не падает Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |