У меня есть программа, которая использует CUDA тяги :: уменьшить распараллелить суммы: например,сила тяги CUDA в :: уменьшить, чтобы выполнить, не параллельности
thrust::device_ptr<double> tmp(aux);
double my_sum = thrust::reduce(tmp, tmp + G);
где double* aux
указывает на G
смежных двойников на устройстве. Мне нужно сравнить время выполнения всей распараллеленной программы с версией без параллельных вычислений. Есть ли способ запустить thrust::reduce
, используя только один поток на устройстве? Наиболее удобным вариантом будет глобальный коммутатор.