要使用C++ OMP加速循環(huán),首先需要包含<omp.h>頭文件,并在需要并行化的循環(huán)前添加#pragma omp parallel for指令。下面是一個(gè)示例代碼:
#include <iostream>
#include <omp.h>
int main() {
int n = 10000;
int sum = 0;
// 使用OMP加速循環(huán)
#pragma omp parallel for reduction(+:sum)
for (int i = 0; i < n; i++) {
sum += i;
}
std::cout << "Sum: " << sum << std::endl;
return 0;
}
在上面的示例中,使用#pragma omp parallel for指令將循環(huán)并行化,并使用reduction(+:sum)來指定sum變量的歸約操作,確保多個(gè)線程對sum變量的操作不會發(fā)生沖突。在編譯時(shí)需要添加-fopenmp選項(xiàng)來啟用OMP支持。