使用 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 消息之外还将标识自己。