mirror of
https://gitlab.kitware.com/vtk/vtk-m
synced 2024-09-16 17:22:55 +00:00
Merge topic 'correct_openmp_reduce_odd_processor_count'
c90c3a675 OpenMP optimzed reduce support odd processor counts Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Allison Vacanti <allison.vacanti@kitware.com> Merge-request: !1795
This commit is contained in:
commit
d553a55e43
@ -368,7 +368,7 @@ struct ReduceHelper
|
||||
ReturnType accum = f(data[2 * tid], data[2 * tid + 1]);
|
||||
|
||||
vtkm::Id i = numThreads * 2;
|
||||
const vtkm::Id unrollEnd = (numVals / 4) * 4;
|
||||
const vtkm::Id unrollEnd = ((numVals / 4) * 4) - 4;
|
||||
VTKM_OPENMP_DIRECTIVE(for schedule(static))
|
||||
for (i = numThreads * 2; i < unrollEnd; i += 4)
|
||||
{
|
||||
@ -377,8 +377,9 @@ struct ReduceHelper
|
||||
accum = f(accum, t1);
|
||||
accum = f(accum, t2);
|
||||
}
|
||||
// Let thread 0 mop up any remaining values:
|
||||
if (tid == 0)
|
||||
// Let the last thread mop up any remaining values as it would
|
||||
// have just accessed the adjacent data
|
||||
if (tid == numThreads - 1)
|
||||
{
|
||||
for (i = unrollEnd; i < numVals; ++i)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user