MatCL是MathWorks Matlab OpenCL接口。这MEX-based工具箱旨在提供一个简单和易于使用的解决方案将内存和发射OpenCL内核使用一个命令从Matlab。
相比其他Matlab OpenCL的解决方案,MatCL不仅仅是OpenC金宝搏官方网站L API包装器但封装了底层主机API调用必要的初始化设备,从Matlab工作区创建OpenCL缓冲变量和构建和启动内核。
MatCL主要是为了帮助OpenCL内核的开发和测试,允许从Matlab和透明地传递数据。
因为MatCL处理整个低级过程,这个工具箱可以执行内核没有深入了解主机实现必须支持OpenCL内核的执行。金宝app
OpenCL的MatCL也是优化允许有效执行内核在Matlab加速计算密集型任务,而无需依靠Nvidia CUDA。除了内核执行简单的命令,MatCL还允许独立的两步内核编译并启动工作流保存内核编译时,允许高效的重复内核执行。
测试使用Nvidia(特斯拉,GTX), AMD (Ryzen Radeon R9机型,FirePro)和英特尔(至强,核心,HD图形)设备和Matlab R2016b。
用法:
列举OpenCL设备:
(名称、dev_class max_mem) = cl_get_devices;
名称:名称的所有可用设备
dev_class:设备类(CPU、GPU或其他其他或未知的加速器)
max_mem:可用设备内存字节
构建内核:
[comp_time,内核]= cl_run_kernel (ocl_dev_id‘kernel_url.cl’,‘定义’);
OpenCL的ocl_dev_id: ID设备使用
kernel_url。cl:内核文件的URL
定义:OpenCL编译器定义的列表
内核:列表名称的所有可用的内核
运行内核:
[run_time, copy_time] = cl_run_kernel (ocl_dev_id”、“kernel_function”, local_range global_range in1,着干活,[rw_flags]);
OpenCL的ocl_dev_id: ID设备使用
kernel_function:执行内核函数的名称
global_range:全球OpenCL范围(见NDRange)
local_range:本地OpenCL范围(见NDRange)
着干活,三机一体:通过从/到内核变量的列表
rw_flags:读/写内核变量的国旗,这可以是标量(所有变量都读和写)或一个向量和一个条目为每个变量:0 -读写/内核只读1 - / 2 -内核只编写
构建和运行的内核:
[run_time] = cl_run_kernel (ocl_dev_id kernel_url。cl”、“定义”、“kernel_function”, local_range global_range in1,着干活,[rw_flags]);
OpenCL的ocl_dev_id: ID设备使用
kernel_url。cl:内核文件的URL
定义:OpenCL编译器定义的列表
kernel_function:执行内核函数的名称
global_range:全球OpenCL范围(见NDRange)
local_range:本地OpenCL范围(见NDRange)
着干活,三机一体:通过从/到内核变量的列表
rw_flags:读/写内核变量的国旗,这可以是标量(所有变量都读和写)或一个向量和一个条目为每个变量:0 -读写/内核只读1 - / 2 -内核只编写
构建和运行的内核与内核printf(重定向):
[run_time] = cl_dbg_kernel (ocl_dev_id kernel_url。cl”、“定义”、“kernel_function”, local_range global_range in1,着干活,[rw_flags]);
OpenCL的ocl_dev_id: ID设备使用
kernel_url。cl:内核文件的URL
定义:OpenCL编译器定义的列表
kernel_function:执行内核函数的名称
global_range:全球OpenCL范围(见NDRange)
local_range:本地OpenCL范围(见NDRange)
着干活,三机一体:通过从/到内核变量的列表
rw_flags:读/写内核变量的国旗,这可以是标量(所有变量都读和写)或一个向量和一个条目为每个变量:0 -读写/内核只读1 - / 2 -内核只编写
引用作为
菲利普Heinisch (2023)。MatCL——OpenCL包装GitHub (https://github.com/philipheinisch/MatCL)。检索。
例子
版本使用GitHub缺省分支不能下载
版本 | 发表 | 发布说明 | |
---|---|---|---|
1.0.0.0 | 添加描述 |
|