AnsweredAssumed Answered

How to copy buffer from one context to another context buffer which resides in same graphics card, fastest?

Question asked by tugrul_512bit on May 11, 2017
Latest reply on May 12, 2017 by marty1885

In other words, does opencl have sharing context with other opencl contexts similar to opengl interop or  clMigrateMemObjects but without event dependency, with pure copying, not moving any buffer.


I 'm working on a project and it has multiple contexts for multiple GPUs and I want to add dynamcity to it so it will move stages of a pipeline from one device to another, effectively using same device(but without touching pci-e since all buffers are in same graphics card).


If I break the root of the project to do all pipelines in single opencl context, it will corrupt the open-close principle I've been applying. Maybe it was my mistake to not think everything from the beginning? But this time wouldn't it be premature optimization hence the root of evil?

If its impossible to do pure-gpu data movement between multiple opencl contexts in a single graphics card, will it be added in future?


Thank you for your time.