0
我在opencl中引用一個變量時遇到了麻煩,因爲沒有明確的例子表明這是否可以完成。如何在opencl中引用變量?
我有一個變量,「double foo」,我有一個指針「double * fooptr」。我想讓指針保存foo的地址。 OpenCL有可能嗎?
double foo=//some value
double* fooptr;
fooptr=&foo;
我可以在OpenCL中做到這一點嗎?
我在opencl中引用一個變量時遇到了麻煩,因爲沒有明確的例子表明這是否可以完成。如何在opencl中引用變量?
我有一個變量,「double foo」,我有一個指針「double * fooptr」。我想讓指針保存foo的地址。 OpenCL有可能嗎?
double foo=//some value
double* fooptr;
fooptr=&foo;
我可以在OpenCL中做到這一點嗎?
指針在OpenCL中工作,但不能將指針從主機代碼傳遞到客戶端代碼(在CL設備上運行的代碼)。這很有意義,因爲你的GPU顯然不能引用CPU的內存,因爲它有自己的專用內存 - 它具有完全不同的地址空間。
你在哪裏試圖執行此操作?它應該在你的內核代碼中運行良好。
是的,它的工作原理。你試過了嗎? OpenCL C中不允許的指針是函數指針。 – Dithermaster
我還沒有嘗試過,但聽起來不錯,我會用這個方案編寫內核。 – jas
是的,這是有效的。非常感謝。 – jas