OpenCL在180万条记录的向量中找到Max

时间:2017-03-28 13:25:25

标签: c++ opencl

我必须找到其中包含超过180万条记录的向量的最小值和最大值,我目前的方法是:

__kernel void minimum(__global const double* TemperatureValues, __global double* C) {
int id = get_global_id(0);
int N = get_global_size(0);
for (int i = 0; i < N; i++)
    {
        if (TemperatureValues[i] < C[0])
        { 
            C[0] = TemperatureValues[i];
        }
    }
}

但是作为线性搜索,当处理完整数据集时,这会使计算机崩溃(处理大约180,000条记录的小得多的数据集)。任何人都有关于如何使其适应大型数据集的建议吗?

0 个答案:

没有答案