Python 在pycuda中使用字典

Python 在pycuda中使用字典,python,cuda,pycuda,Python,Cuda,Pycuda,我有一个字典,我想知道是否可以将它用作内核的参数 比如说 我有cuda内核签名 __global__ void calTab(Tableaux) Tableaux是一个C结构,对应于 typedef struct { float *Tab1; float *Tab2; } Tableaux; 在python Tableaux中,对应于以下词典: Tableaux={} Tableaux["Tab1"]=[] Tableaux["Tab2"]=[] 是否可以在不使用C API

我有一个字典,我想知道是否可以将它用作内核的参数

比如说

我有cuda内核签名

__global__ void calTab(Tableaux)
Tableaux是一个C结构,对应于

typedef struct
{
    float *Tab1;
    float *Tab2;
} Tableaux;
在python Tableaux中,对应于以下词典:

Tableaux={}
Tableaux["Tab1"]=[]
Tableaux["Tab2"]=[]
是否可以在不使用C API的情况下将字典用作C结构


提前谢谢你

你的提议都不可能实现。在PyCUDA,你不能

将字典传递给内核 将列表传递给内核 在设备代码中直接将字典翻译成C++结构 直接将列表转换为设备中的C++线性数组

pycUDA可以使用Python类作为C++结构,它具有类似于GPU的类似NUMPY数组。所以第3点和第4点是可能的,但不是你想做的。这两种技术都在文档中进行了讨论。

您好,谢谢您的帮助,但是我在哪里可以找到合适的文档???@SOCKet:请参阅我的编辑中的链接。如果你接受这个答案只是为了把这个问题从未回答的队列中解脱出来,并且为了更容易找到下一个与类似问题同时出现的人,那就太好了