文档帮助中心
编译用于GPU计算的mex函数
mexcuda文件名
mexcuda
mexcuda option1……optionN文件名
例子
mexcuda文件名将源文件编译并链接到一个名为MEX-file的共享库中,可在MATLAB中执行®.该函数编译使用CUDA编写的mex文件®c++框架与NVIDIA®学校网站编译器,允许文件定义和启动GPU内核。此外,mexcuda函数公开了GPU MEX API,允许MEX文件读取和写入gpuArrays。
文件名
学校网站
mexcuda是MATLAB的扩展墨西哥人函数。所支持的编译器的一个子集万博1manbetx墨西哥人支持万博1manbetxmexcuda.支持的编万博1manbetx译器依赖于MATLAB支持的CUDA Toolkit版本。
墨西哥人
mexcudaoption1……optionN文件名使用指定的生成选项生成。的option1……optionN参数补充或覆盖默认值mexcuda构建配置。您可以使用中的大多数可用选项墨西哥人与mexcuda.
mexcudaoption1……optionN文件名
option1……optionN
全部折叠
编译一个简单的mex函数来创建函数myMexFunction从一个CUDA c++源文件。
myMexFunction
mexcudamyMexFunction.cu
示例源文件可在matlabroot/工具箱/并行/ gpu /走读生/ src /墨西哥人/ mexGPUExample.cu.
matlabroot/工具箱/并行/ gpu /走读生/ src /墨西哥人/ mexGPUExample.cu
matlabroot
使用verbose模式显示编译和链接命令以及其他对故障排除有用的信息。
mexcuda- vmyMexFunction.cu
用一个命令编译和链接多个源文件。
mexcudamyMexFunction.cuotherSource1.cppotherSource2.cpp
首先编译,然后链接创建函数。
mexcuda- cmyMexFunction.cumexcudamyMexFunction.obj
第一行编译为myMexFunction.obj(Windows®)或myMexFunction.o(UNIX®),以及创建函数的第二个链接myMexFunction.
myMexFunction.obj
myMexFunction.o
编译使用动态并行性的代码,定义启动其他内核的内核。
mexcuda动态myMexFunction.cu
编译一个利用CUDA图像原语库的mex函数,npp,安装在C:\Program Files\NVIDIA GPU计算工具包\CUDA\v7.5\lib\x64\nppi.lib.
npp
C:\Program Files\NVIDIA GPU计算工具包\CUDA\v7.5\lib\x64\nppi.lib
mexcuda'-LC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5\lib\x64'-lnppimyMexFunction.cu
作为字符向量指定的一个或多个文件名,包括名称和文件扩展名。如果文件不在当前文件夹中,请指定文件的完整路径。文件名可以是以下任意组合:
C或c++语言的源文件
对象文件
库文件
列出的第一个源代码文件文件名是二进制mex -文件的名称。要重写此命名约定,请使用与产出的选择。
与产出的
数据类型:字符
字符
作为这些值之一指定的一个或多个构建选项。选项可以在任何平台上以任何顺序出现,除非有指示。
大多数选项可用墨西哥人支持功能。万博1manbetx此外,还可以使用以下选项。
动态
动态并行:编译定义启动其他内核的内核的mex文件。
- g
为设备代码生成调试信息。这使得在NVIDIA的调试应用程序(NSight或cuda-gdb)中逐行遍历内核代码成为可能。打开主机代码使用的调试开关- g.
以下墨西哥人不支持函数选项。万博1manbetx
-compatibleArrayDims
MATLAB大数组处理API的使用是隐式的,不能重写。
所有其他选项墨西哥人是支持万博1manbetxmexcuda.有关以下内容,请参阅文档墨西哥人获取详细信息。
如果CUDA工具包没有被检测到或者不是一个支持的版本,MATLAB使用NVIDIA编译CUDA代万博1manbetx码学校网站编译器安装与MATLAB。检查哪个编译器mexcuda是用,是用- v中verbose输出的标志mexcuda命令。
- v
MATLAB中安装的CUDA工具包并不包含CUDA工具包中所有可用的库。如果你想链接一个没有安装在MATLAB中的特定库,请安装CUDA工具包。你可以检查MATLAB需要使用哪个CUDA工具包版本gpuDevice.有关CUDA工具箱的更多信息,请参见CUDA工具包.
gpuDevice
你点击一个链接对应于这个MATLAB命令:
通过在MATLAB命令窗口中输入命令来运行命令。Web浏览器不支持MATLAB命令。万博1manbetx
选择一个网站,在那里获得翻译的内容,并看到当地的活动和优惠。根据您的位置,我们建议您选择:.
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。
与当地办事处联系
得到审判现在