cancel
Showing results for 
Search instead for 
Did you mean: 

Archives Discussions

tugrul_512bit
Adept III

Does clEnqueueMigrateMemObjects use pci-e to pci-e connection?

I'm developing an open-source API that uses multiple OpenCL devices to compute kernels, adding features like pipelining and load balancing, but now I need to add a device-to-device pipeline such that a GPU will send data to another GPU without touching  system RAM, only through inter-pci-e connection. What is the OpenCL API command for that? I guess this command

clEnqueueMigrateMemObjects

should have that but its documentation in Khronos site doesn't tell anything about it.

Details about my project:

wiki: Home · tugrul512bit/Cekirdekler Wiki · GitHub

tutorial: Easy OpenCL Multiple Device Load Balancing and Pipelining For C#: Cekirdekler API - CodeProject

thank you for your time.

0 Likes
1 Solution
dipak
Big Boss

It's depends on the implementation. AFAIK, on AMD platform, MigrateMemObjects currently still uses system memory.

cl_amd_bus_addressable_memory extension is there which supports direct transfer,  however I've doubt whether it would be applicable in this scenario or not. Also this extension available for FirePro boards only.

Regards,

View solution in original post

0 Likes
2 Replies
dipak
Big Boss

It's depends on the implementation. AFAIK, on AMD platform, MigrateMemObjects currently still uses system memory.

cl_amd_bus_addressable_memory extension is there which supports direct transfer,  however I've doubt whether it would be applicable in this scenario or not. Also this extension available for FirePro boards only.

Regards,

0 Likes

Then  a HD7870 has to visit RAM before talking to R7-240.

0 Likes