1. 安装 Gcc

这一步不说了,自己去官网下就好了。

如果是Mac用户,因为MacOS默认有 GCC ,不过链接的是Clang编译器,安装了自己的GCC后,想在终端调用,需要使用 gcc-x (x指版本),否则 gcc 命令使用的是 Clang 编译器。如果想使用 gcc 调用自己安装的GCC,可以看下面的解决办法。
MacOS 切换 Clang 为 GCC

2. 设置 Clion 编译器为自己下载的 gcc

设置成你自己安装的GCC
使用 Clion 编译 openMP

3. 编辑项目的 CMakeLists.txt

添加以下内容:

FIND_PACKAGE(OpenMP REQUIRED)
if(OPENMP_FOUND)
    set(CMAKE_C_FLAGS "${OpenMP_C_FLAGS}")
endif()

测试

可以使用下面的代码测试

#include <stdio.h>
#include <stdlib.h>
#include <omp.h>

void Hello(void);

int main(int argc, char* argv[]) {
   int thread_count = strtol(argv[1], NULL, 10); 

#  pragma omp parallel num_threads(thread_count) 
   Hello();

   return 0; 
}

void Hello(void) {
   int my_rank = omp_get_thread_num();
   int thread_count = omp_get_num_threads();

   printf("Hello from thread %d of %d\n", my_rank, thread_count);
}

相关文章:

  • 2021-06-27
  • 2022-12-23
  • 2021-09-26
  • 2022-01-06
  • 2021-04-14
  • 2022-12-23
  • 2022-03-04
猜你喜欢
  • 2021-08-23
  • 2022-12-23
  • 2021-06-21
  • 2021-08-22
  • 2021-04-24
  • 2021-05-28
相关资源
相似解决方案