Presentation is loading. Please wait.

Presentation is loading. Please wait.

OpenMP简介和开发教程 广州创龙电子科技有限公司

Similar presentations


Presentation on theme: "OpenMP简介和开发教程 广州创龙电子科技有限公司"— Presentation transcript:

1 OpenMP简介和开发教程 广州创龙电子科技有限公司
Guangzhou Tronlong Electronic Technology Co., Ltd

2 01 OpenMP 简介 02 OpenMP 基本语法介绍 03 OpenMP 案例讲解

3 01 OpenMP 简介 第 1 部分

4 OpenMP 基本知识 共享内存并行编程 API 将程式并行化、多线程化的API 支持C/C++/Fortran 不能在非共享内存系统上使用
04 广州创龙电子科技有限公司

5 OpenMP 两大模型 执行模型 两大模型 内存模型 05 广州创龙电子科技有限公司

6 执行模型 1. 主线程在遇到并行区域时会创建一组线程: 每个C66x核心运行一个OpenMP线程 主线程在DSP1开始执行
2. host加载目标区域代码到目标设备上,一直等待目标区域执行完成 06 广州创龙电子科技有限公司

7 内存模型 每个设备,包括host设备都具有初始化的数据环境 不同数据环境中的变量可以共享存储
数据映射子句决定如何将主机设备的数据映射到目标设备 线程能够访问到共享内存区域 线程具有私有内存空间 07 广州创龙电子科技有限公司

8 02 OpenMP 基本语法介绍 第 2 部分

9 #pragma omp 指令 [子句[子句]…]
指令的基本格式: #pragma omp 指令 [子句[子句]…] • #pragma omp target • #pragma omp declare target • #pragma omp target data • #pragma omp target update • #pragma omp parallel for 09 广州创龙电子科技有限公司

10 #pragma omp target 功能: 用于指定应该在目标设备上运行的代码区域 10 广州创龙电子科技有限公司

11 #pragma omp declare target
功能: 指明变量或函数是映射到设备 11 广州创龙电子科技有限公司

12 #pragma omp target data
功能: 通过映射host的buffer到目标设备来创建设备的数据环境 12 广州创龙电子科技有限公司

13 #pragma omp target update
功能: 同步host、device的数据 13 广州创龙电子科技有限公司

14 #pragma omp parallel for
功能: 将for循环分配到多个核心并行计算 14 广州创龙电子科技有限公司

15 03 OpenMP 案例讲解 第 3 部分

16 target_update example
程序功能: 利用AM5728的两个DSP核心进行对两个数组进行并行求和,并将最后结果返回给A15核心。 16 广州创龙电子科技有限公司

17 参考资料 TI OpenMP DSP Wiki: OpenMP Accelerator Model User's Guide: OpenMP Application Program Interface: 17 广州创龙电子科技有限公司

18 广州创龙电子科技有限公司 谢谢 官网: 论坛:51ele.net


Download ppt "OpenMP简介和开发教程 广州创龙电子科技有限公司"

Similar presentations


Ads by Google