这里先简单书写一个并行版的hello world 作为入门,后续的文章再更新相关的概念。
#include #include #include 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 World from thread %d of %d\n",my_rank,thread_count);
}
接着运行一下,先看一下结果
在源文件的文件夹下打开终端输入:gcc -g -Wall -fopenmp -o test test.c
得到一个文件名为test的文件,接着输入:./test 4,得到运行结果