MatCL——OpenCL包装

为Matlab OpenCL包装器

332下载

更新2018年6月9日

从GitHub

查看许可GitHub

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)。检索

MATLAB版本兼容性
创建R2017a
兼容任何释放
平台的兼容性
窗户 macOS Linux
类别
找到更多的在GPU计算帮助中心MATLAB的答案

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!

版本使用GitHub缺省分支不能下载

版本 发表 发布说明
1.0.0.0

添加描述
更新描述
增加了更多的标签

问题在这个视图或报告GitHub插件,参观GitHub库
问题在这个视图或报告GitHub插件,参观GitHub库