2015-03-13 3 views
0

Это должно быть просто, но по какой-то причине я не могу заставить его работать. Я нанял Softlayer Bare Metal Server, который поставляется с графическим процессором Nvidea Tesla.Запуск OpenGL на сервере Windows 2012 R2

Я удаляю программу (openScad), которая требует OpenGL> 2.0, чтобы правильно экспортировать файл PNG. Когда я вызываю openScad и экспортирую модель, я получаю файл png 0kb в качестве вывода, явный признак того, что поддержка OpenGL> 2.0 отсутствует.

Чтобы убедиться, что я запускал openGL> 2.0, я подключился к своему серверу через RD и запустил GlView. К моему удивлению, я увидел, что сервер не поддерживает ничего, кроме openGL 1.1.

После небольшого исследования выяснилось, что для стандартных сеансов RD графический процессор не используется, поэтому имеет смысл, что я вижу только openGL 1.1. Проблема в том, что когда я запускаю openscad remotley, кажется, что GPU также не используется.

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

PS: Я проверил с поддержкой SOFTLAYER и они не принимают никакой ответственности

ответ

3

Большинство (в настоящее время все) реализация OpenGL, использующая GPU предположить, что существует система отображения какого-то с помощью этого GPU; в случае Windows, который будет GDI. Однако на безголовом сервере Windows обычно не запускает GDI на GPU, но использует некоторый фреймбуфер.

Графические процессоры NVidia Tesla продаются как вычислительные устройства, и, следовательно, их драйвер не поддерживает графические функции (обратите внимание, что это маркетинговое ограничение, реализованное в программном обеспечении, так как кремний отлично работает с графикой). Или, другими словами: если вы можете реализовать свои графические операции с помощью CUDA или OpenCL, вы можете использовать его для создания изображений. В противном случае (т. Е. Для OpenGL или Direct3D) это бесполезно.

Обратите внимание, что NVidia продает свои продукты «GRID» для удаленного/облачного рендеринга.

+0

Большое спасибо за помощь datenwolf. Можете ли вы придумать какое-либо обходное решение для «имитации» GDI, подключенного к серверу? – cyberjoac

+0

@cyberjoac: Ты мало что можешь сделать, мне жаль тебе говорить. NVidia поддерживает жесткие обертывания на внутренних устройствах GPU. Помимо обратной инженерии (драйверы нуворишей, которые являются лишь рудиментарными), вы заперты в использовании программного обеспечения от NVidia. А в случае графических процессоров Tesla драйверы не решают «OpenGL для вас», и все. Теперь вы можете вообще не использовать OpenGL и вместо этого использовать CUDA или OpenCL-рендеринг (например, Luxrender). Возможно, вам придется внедрить новый бэкэнд для OpenScad. – datenwolf

1

Я отвечаю, потому что столкнулся с аналогичной проблемой в прошлом; также пытается запустить приложение, которое необходимо было открыть openGL 4 на сервере Windows.

Windows удаленный рабочий стол действительно не вызывает opengl. Однако, если вы используете tigervnc вместо этого, а затем запустите приложение openScad, оно может распознать ваши драйверы opengl. По крайней мере, этот трюк сделал это для меня. (при открытии контекста openGL в программе, которую он сканирует для мониторов/прикрепленных к нему дисков RD).

надеюсь, что это поможет.

 Смежные вопросы

  • Нет связанных вопросов^_^