Copy the reduction variable to a single variable in the OMP thread context so that accesses to it does not have the false sharing problem like when they are accessed as part of the reduction array.  Copy that single variable back into the array once at the end outside the loop.
Copy the reduction variable to a single variable in the OMP thread context so that accesses to it does not have the false sharing problem like when they are accessed as part of the reduction array.  Copy that single variable back into the array once at the end outside the loop.

IntelLabs/ParallelAccelerator.jl,malekbr/julia-to-tiramisu