我必须找到其中包含超过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条记录的小得多的数据集)。任何人都有关于如何使其适应大型数据集的建议吗?