GLX(OpenGL) 원격 직접 렌더링

GLX(OpenGL) 원격 직접 렌더링

SSH를 통해 OpenGL 2.1+ 애플리케이션을 실행하려고 합니다.

[내 컴퓨터] --- SSH 연결 --- [원격 컴퓨터] (응용 프로그램)

저는 이 응용 프로그램을 실행하기 위해 X 전달을 사용하고 있으며 이를 염두에 두고 이 응용 프로그램이 3D 그래픽을 수행하는 여러 가지 방법이 있다고 생각했습니다.

  1. LIBGL_ALWAYS_INDIRECT를 사용하면 내 컴퓨터의 그래픽 하드웨어가 작동합니다. ~에 따르면이 게시물이는 일반적으로 OpenGL 버전 1.4로 제한됩니다.
  2. 원격 컴퓨터에서 Mesa 소프트웨어 렌더링을 사용하십시오. 이는 최신 버전의 OpenGL을 지원하지만 CPU를 사용합니다.

하지만 제 경우에는 원격 컴퓨터에 괜찮은 그래픽 카드가 있습니다. 그래서 대신소프트웨어렌더링이 가능한지 알고 싶습니다하드웨어하지만 원격 렌더링.

또한, 내 컴퓨터의 그래픽 카드를 다른 방법으로 활용할 수 있다면 좋을 것 같습니다.

답변1

반드시 간접 렌더링과 소프트웨어 렌더링 사이에서 선택하는 것이 아니라 직접 렌더링과 간접 렌더링 사이에서 선택해야 합니다. 직접 렌더링은 X 클라이언트(원격 컴퓨터)에서 수행된 다음 렌더링 결과가 표시를 위해 X 서버로 전송됩니다. 간접 렌더링은 GL 명령을 X 서버로 전송하며, 이는 서버의 하드웨어를 사용하여 렌더링됩니다. 원격 시스템에서 3D 하드웨어를 사용하려면 직접 렌더링을 선택해야 합니다(그리고 렌더링된 래스터 이미지를 네트워크를 통해 전송하는 오버헤드를 허용해야 합니다).

응용 프로그램이 OpenGL 1.4를 사용할 수 없는 경우 직접 렌더링이 유일한 옵션입니다.

답변2

저는 패치된 OpenGL 드라이버를 실행하기 위해 SSH 원격 설정을 사용하곤 했습니다. 그러나 여기에는 렌더링을 위해 원격 X 서버를 하이재킹하는 등의 일부 해킹이 포함됩니다(원격 시스템에 로그인하고 ssh를 사용하여 DISPLAY를 0으로 설정). 귀하의 경우 오프 스크린 xserver를 분리하는 것이 더 합리적입니다. 오프스크린 모드에서 원격으로 xserver를 시작할 수 있는지 기억이 나지 않지만 GPU 드라이버가 로드되어 있습니다. VirtualGL 프로젝트는 당신이 찾고 있는 것을 정확하게 지원한다고 약속하는 것 같습니다. 아직 시도하지는 않았지만 웹사이트가 유망해 보입니다.

http://www.virtualgl.org/About/소개

다른 대안은 vnc와 xdmcp입니다. 이를 통해 완전한 원격 데스크톱 환경에 액세스할 수 있습니다.

관련 정보