并行计算—OpenMP—for指令

傷城~ 2022-07-14 23:15 528阅读 0赞
  1. // OpenMP1.cpp : 定义控制台应用程序的入口点。
  2. //
  3. #include "stdafx.h"
  4. #include "omp.h"
  5. #include <stdlib.h>
  6. int _tmain(int argc, _TCHAR* argv[])
  7. {
  8. #pragma omp for
  9. for(int j=0;j<4;j++)
  10. printf("j=%d,ThreadId=%d\n",j,omp_get_thread_num());
  11. system("pause");
  12. return 0;
  13. }

运行结果:

Center

学习心得:

for指令用来将一个for循环分配到一个线程组的多个线程中执行。

  1. // OpenMP1.cpp : 定义控制台应用程序的入口点。
  2. //
  3. #include "stdafx.h"
  4. #include "omp.h"
  5. #include <stdlib.h>
  6. int _tmain(int argc, _TCHAR* argv[])
  7. {
  8. #pragma omp parallel for
  9. for(int j=0;j<4;j++)
  10. printf("j=%d,ThreadId=%d\n",j,omp_get_thread_num());
  11. system("pause");
  12. return 0;
  13. }

运行结果:

Center 1

学习心得:

parallel和for联合使用,循环被分配到两个不同的线程中执行。

发表评论

表情:
评论列表 (有 0 条评论,528人围观)

还没有评论,来说两句吧...

相关阅读

    相关 并行计算简介

    1 什么是并行计算? 串行计算: 传统的软件通常被设计成为串行计算模式,具有如下特点: 一个问题被分解成为一系列离散的指令; 这些指令被顺次执行;

    相关 CUDA 并行计算

    CUDA 并行计算 并行计算可以被定义为同时使用许多计算资源 (核心或计算机) 来执行并发计算,一个大的问题可以被分解成多个小问题,然后在不同的计算资源上并行处理这些小