主要内容

parallel.gpu.CUDAKernel

从PTX和CU代码中创建GPU CUDA内核对象

语法

KERN = parallel.gpu.CUDAKernel (PTXFILE CPROTO)
KERN = parallel.gpu.CUDAKernel (PTXFILE CPROTO函数)
KERN = parallel.gpu.CUDAKernel (PTXFILE CUFILE)
KERN = parallel.gpu.CUDAKernel (PTXFILE CUFILE函数)

描述

KERN = parallel.gpu.CUDAKernel (PTXFILE CPROTO)KERN = parallel.gpu.CUDAKernel (PTXFILE CPROTO函数)创建一个CUDAKernel对象,可以用来调用GPU上的CUDA内核。PTXFILE是包含PTX代码的文件的名称,或PTX文件的内容作为字符向量;和CPROTO内核的C原型是这样调用的吗克恩代表。如果指定的,函数必须是字符向量,明确定义PTX文件中适当的内核条目名称。如果函数省略时,PTX文件必须只包含一个入口点。

KERN = parallel.gpu.CUDAKernel (PTXFILE CUFILE)KERN = parallel.gpu.CUDAKernel (PTXFILE CUFILE函数)创建一个内核对象,你可以使用它在GPU上调用CUDA内核。此外,他们读取CUDA源文件CUFILE,并查找内核定义以“__global__”中定义的CUDA内核的函数原型PTXFILE

有关执行内核对象的信息,请参见运行一个CUDAKernel

例子

如果simpleEx.cu包含以下:

/* *向向量添加一个常量。*/ __global__ void addToVector(float * pi, float c, int vecLen) {int idx = blockIdx。x * blockDim。x + threadIdx.x;if (idx < vecLen) {pi[idx] += c;}}

simpleEx.ptx包含编译产生的PTXsimpleEx.cu在PTX中,以下两个语句都返回一个内核对象,您可以使用该内核对象调用addToVectorCUDA内核。

kern = parallel.gpu.CUDAKernel (“simpleEx.ptx”...“simpleEx.cu”);kern = parallel.gpu.CUDAKernel (“simpleEx.ptx”...“*浮动,浮动,int”);
介绍了R2010b