OpenCL под ATI

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

OpenCL под ATI

Сообщение MageSlayer » 11.11.2010 23:44:31

Привет всем

Решил попробовать потестировать свою видеокарту Ati Radeon HD4670 (чипсет RV730XT). Система - Gentoo Linux x86, ядро 2.6.36.
Поглядел в дистрибутив FPC - вроде бы Скалогрыз уже и cl.h портировал под паскаль. Спасибо ему!

-Снес открытые драйвера.
-С грехом пополам поставил официальные проприетарные (версии 10.10) с поддержкой OpenCL. KMS конфликтует - ну да черт с ним.
-Установил ati-stream-sdk 2.2. Прописал в /etc/OpenCL/vendors/atiocl32.icd строку libatiocl32.so.
-Погонял примеры на С - вроде все работает.

Теперь под FPC:
-Добавил поддержку Linux в cl.pp (просто объявил функции как cdecl + dynlink). См. ниже
-Пример собрался.
-Пытаюсь запустить пример Скалогрыза - падает с sigfpe.
-По-запускал без особой надежды strace на собранном gcc и fpc - strace для gcc показывает что вроде используется pthreads.so. Ок. Подключил cthreads первым модулем. Результат тот же.

Сделал минимальный пример под gcc и fpc.
Максимально близкий. Делается вызов всего одной функции. Проблема та же. gcc версия работает без проблем, fpc - падает внутри вызова clGetPlatformIDs.

-если удаляю /etc/OpenCL/vendors/atiocl32.icd, то fpc версия clGetPlatformIDs ругается нормальным кодом ошибки. То есть проблема, вроде бы не в неправильном методе вызова функций в cl.pp.

Примеры под gcc и fpc приаттачил.
Может кто-нибудь чего подскажет?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
MageSlayer
постоялец
 
Сообщения: 216
Зарегистрирован: 07.09.2006 12:30:44

Re: OpenCL под ATI

Сообщение Sergei I. Gorelkin » 12.11.2010 11:57:20

Если падает с sigfpe - наверняка где-то портится FPU/SSE control word. В этом отношении FPC не очень дружит с gcc библиотеками, т.к. каждый пытается перетянуть одеяло на себя.
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
 
Сообщения: 1406
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Re: OpenCL под ATI

Сообщение MageSlayer » 12.11.2010 20:40:52

Sergei I. Gorelkin писал(а):Если падает с sigfpe - наверняка где-то портится FPU/SSE control word. В этом отношении FPC не очень дружит с gcc библиотеками, т.к. каждый пытается перетянуть одеяло на себя.


Честно говоря, это первое о чем я подумал. Неясно только что в этом случае делать.

В принципе сейчас, в моем случае, я решение нашел.
Оказалось, что sigfpe вываливается только в том случае, если приложение - консольное.
Если собрать обычное оконное приложение, то все работает.
Вроде бы у ATI в документации есть какая-то оговорка, чтобы их реализация OpenCL работает только с запущенным X сервером :)

Опять же неясно почему версия под gcc работает и в консольном варианте тоже.

P.S.
Добавил свой патч на багтрекер - http://bugs.freepascal.org/view.php?id=17917 .
MageSlayer
постоялец
 
Сообщения: 216
Зарегистрирован: 07.09.2006 12:30:44

Re: OpenCL под ATI

Сообщение Sergei I. Gorelkin » 12.11.2010 22:24:58

Так в линуксах консольные приложения не отличаются от неконсольных. Разница только в том, что при запуске из консоли stdout - это терминал, а при запуске не из консоли перенаправляется в какой-нибудь ~/.xsession-errors.

Я бы для начала попробовал грузить библиотеку с помощью SafeLoadLibrary вместо LoadLibrary (хотя при текущей реализации это реально сделать только исправив модуль dynlibs и пересобрав все начиная с RTL).
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
 
Сообщения: 1406
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Re: OpenCL под ATI

Сообщение MageSlayer » 14.11.2010 02:03:53

Sergei I. Gorelkin писал(а):Так в линуксах консольные приложения не отличаются от неконсольных. Разница только в том, что при запуске из консоли stdout - это терминал, а при запуске не из консоли перенаправляется в какой-нибудь ~/.xsession-errors.

Я в курсе.
Боюсь, что ребята из ATI просто как-то завязались на DRI и теперь никак не отвяжутся :)
MageSlayer
постоялец
 
Сообщения: 216
Зарегистрирован: 07.09.2006 12:30:44


Вернуться в Free Pascal Compiler

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4

Рейтинг@Mail.ru