使用 OpenMP 并行 hello world
#include <omp.h>
#include <stdio.h>
int main (int argc, char *argv[])
{
#pragma omp parallel
{
printf ("Hello world! I'm thread %d out of %d threads.\n",
omp_get_thread_num(), omp_get_num_threads());
}
return 0;
}
这段代码简单地创建了一个线程团队(根据环境变量 OMP_NUM_THREADS
- 如果没有定义,将在系统上为每个逻辑核心创建一个),并且每个线程除了打印典型的 Hello world 消息之外还将标识自己。