温馨提示×

使用C++ OMP加速循环的方法

c++
小樊
157
2024-08-06 05:56:11
栏目: 编程语言

要使用C++ OMP加速循环,首先需要包含<omp.h>头文件,并在需要并行化的循环前添加#pragma omp parallel for指令。下面是一个示例代码:

#include <iostream>
#include <omp.h>

int main() {
    int n = 10000;
    int sum = 0;

    // 使用OMP加速循环
    #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指令将循环并行化,并使用reduction(+:sum)来指定sum变量的归约操作,确保多个线程对sum变量的操作不会发生冲突。在编译时需要添加-fopenmp选项来启用OMP支持。

0