Есть машина, в которой установлены NVidia GTX 280 и ATI 5870.
У каждой карты - по своему монитору.
Установлен ATI SDK 2.0 beta 4
CLinfo оттуда находит одно OpenCL-устройство и это - NVidia. Пример NBody работает черезвычайно медленно, подозреваю что на CPU.
C NVidia SDK проблем нет, свою карту находит и примеры запускает.
Вопрос: можно ли как-то заставить оба SDK работать на такой машине или карты придется перетыкать?
Comments
Предлагаю коректировать сорцы, принудительно выбирать ATI, как это делает NV для своих видеокарт.
Вообще я всегда хотел узнать возможно ли совмещать два вендора на одном борту.
Интересно второй слот PCI Express тоже 16x (32x)? У меня один 16x, а второй 8х.
Разобрался (хотя для этого NVidia пришлось временно вытащить)
Программы хотят opencl.dll (неудивительно). NVidia-вский лежит в путях раньше, поэтому ровно он и берется всеми программамми.
Заодно выяснил, что примеры от NVidia работают на ATI без перекомпиляции, что есть чудо (ради которого все и затевалось с ATI, собственно).
Не все, некоторые ругаются что capabilities не хватает, но некоторые - вполне работают.
Да, оба слота x16, но это я материнку такую специально выбирал, с добавочным Nforce pro. Чтобы стандартные программы (всякие настройки и т.п.) работали, пришлось к каждой карте по монитору подключить.
А вот принудительно выбрать ATI - пока просто не понимаю как (для OpenCL).
Могу только посоветовать посмотреть
\NVIDIA GPU Computing SDK\OpenCL\common\src\oclUtils.cpp
функция oclGetPlatformID - там специально отдается предпочтение NV
Да, вдогонку.
opencl.dll может быть, естественно, только один в одном приложении. Но подсовывать можно вперемешку, это не проблема, ну, почти.
И он репортит только свою платформу, а не обе сразу. Прям хоть враппер пиши.
Ну у меня все примеры NVidia честно говорят такое:
shrLog("WARNING: NVIDIA OpenCL platform not found - defaulting to first platform!\n\n");
После чего часть примеров работает, а часть - нет.
Но направление куда копать - стало понятнее, спасибо.
http://news.modnews.ru/view/6026
А OpenCL работает с этой штукой?
Какой в ней вообще смысл, вот у меня две карты (от двух производителей) и так в машине, эта гидра SLI между ними сделает?