OpenCL <> OpenGL interop on Optimus Intel<>NVIDIA machine?

OpenCL <> OpenGL interop on Optimus Intel<>NVIDIA machine?

Quick question...

I have an Optimus-enabled laptop with a Skylake HD 530 integrated GPU and a Quadro M1000M discrete GPU.  The laptop has both HDMI and Thunderbolt 3 outputs.

I also have an OpenCL<>GL interop application.

Optimus lets you choose which GPU your app should use for rendering but, if I understand correctly, the final surface scan-out is still handled by the HD 530.

All this seems to work fine except when I'm driving an external monitor via Thunderbolt.  When connected via TBOLT, the NVIDIA GPU appears to have full control of the monitor.

So my question is, should I be able to run my OpenCL kernels on the HD 530 and render via OpenCL-toGL interop to the NVIDIA discrete GPU?

In this situation I don't care about performance so an implicit host-readback is OK.

Documentation on multi-GPU OpenCL interop seems sparse!

2 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

I think I resolved this issue... if the GPUs are under different platforms then I'll have to manually move data between the contexts.

Leave a Comment

Please sign in to add a comment. Not a member? Join today