小编Dev*_*erp的帖子

在c ++中复制和操作大型,密集的2D数组的最快方法是什么

我正在尝试优化我的代码,利用多核处理器来复制任何操作大型密集阵列.

对于复制:我有一个大密集阵列(大约6000x100000),我需要从中拉出15x100000子阵列,在管道上进行多次计算.该管道由许多线性代数函数组成,这些函数由blas处理,这是多核的.与线性代数相比,提取数据的时间是否真的重要是一个悬而未决的问题,但我要谨慎一点,并确保数据复制得到优化.

对于操作:我有许多不同的函数,通过元素或行来操作数组.如果每个都做多核,那将是最好的.

我的问题是:最好是使用正确的框架(OpenML,OpenCL)并让编译器发生所有的魔术,还是有更好的功能/库可以更快地完成这项工作?

c++ arrays parallel-processing performance opencl

10
推荐指数
1
解决办法
926
查看次数

标签 统计

arrays ×1

c++ ×1

opencl ×1

parallel-processing ×1

performance ×1