AccelerEyes于2012年12月宣布,它与Mathworks在GPU代码上合作,并已停止其产品Jacket for MATLAB:
http://blog.accelereyes.com/blog/2012/12/12/exciting-updates-from-accelereyes/
不幸的是,他们不再销售Jacket牌照了.
据我所知,基于ArrayFire的Jacket GPU阵列解决方案比MATLAB提供的gpuArray解决方案快得多.
我开始使用gpuArray,但我发现很多函数都实现得很差.例如一个简单的
myArray(:) = 0
Run Code Online (Sandbox Code Playgroud)
非常慢 我编写了一些自定义的CUDA内核,但是实现得很差的标准MATLAB功能增加了很多开销,即使在整个代码中使用gpuArrays也是如此.我通过用手写的CUDA代码替换MATLAB代码来解决一些问题 - 但我不想重新实现MATLAB标准功能.
我缺少的另一个功能是稀疏GPU矩阵.
所以我的问题是:
如何加快MATLAB提供的严格实现的默认GPU实现?特别是,如何使用GPU加速MATLAB中的稀疏矩阵运算?
我正在研究用于光谱聚类的并行算法,我需要计算K个最大特征值.我正在使用Jacket插件进行Matlab,但遗憾的是它不支持matlab中的EIGS函数(它无法计算K个特征值)并行)任何人都可以建议一些其他工具/库在GPU上完成这项任务吗?或者我还可以在GPU辅助的Matlab中做到这一点吗?