Omp atomic特性依赖10.3.0及以上的系统GCC版本
Omp atomic特性依赖系统GCC的libgcc,低于10.3.0的系统GCC版本可能引发运行结果异常。如果需要使用请保证系统GCC版本满足要求。使用Omp atomic特性的具体用例如下:
1 2 3 4 5 6 7 8 9 | void foo(double *Ptr, double M, double N) { double sum = 0; #pragma omp parallel for for (int i = 0; i < 100; ++i){ Ptr[i] = i+(M*2 + N); #pragma omp atomic sum += Ptr[i]; } } |
父主题: OpenMP兼容性