GPU CUDA 和 MEX 编程
使用高级 GPU CUDA® 和 MEX 编程进一步加快代码执行速度
如果在 GPU 上运行 MATLAB® 函数不足以加快代码执行速度,或者您需要使用高级 GPU CUDA 功能,您可以编写自己的 CUDA 代码,并在 MATLAB 中运行该代码,具体方法是使用 mexcuda
生成可执行 MEX 文件,或使用 parallel.gpu.CUDAKernel
生成可执行内核。
一般来说,使用 MEX 文件比使用 CUDAKernel
对象更灵活。有关详细信息,请参阅运行包含 CUDA 代码的 MEX 函数。
函数
主题
- 运行包含 CUDA 代码的 MEX 函数
所有 MEX 文件(包括包含 CUDA 代码的文件)都有一个称为
mexFunction
的入口点。MEX 函数包含与来自 MATLAB 的gpuArray
对象交互并启动 CUDA 代码的主机端代码。MEX 文件中的 CUDA 代码必须符合 CUDA 运行时 API。 - 在 GPU 上运行 CUDA 或 PTX 代码
本页介绍如何从 CUDA C++ 源文件(CU)创建可执行内核,并在 MATLAB 中的 GPU 上运行该内核。内核在 MATLAB 中由
CUDAKernel
对象表示,该对象可以对存储在主机内存中的数组或 GPU 数组进行操作。