深度学习自学(五):NCNN中openmp加速模块学习总结
一、omp_get_thread_num() VS omp_get_num_threads()
两个函数omp_get_thread_num()和omp_get_num_threads(),看起来很像的两个函数。omp_get_thread_num是获取当前线程的线程id(从结果也可以看到主线程的线程id是0)。omp_get_num_threads是获取线程数目。
- parallel指令用于定义一个并行区域。
- parallel并行区域是否并行由if子句决定。
- parallel并行区域内生成的线程数量依次决定于:num_threads子句、omp_set_num_threads()函数、OMP_NUM_THREADS环境变量、编译器实现(一般为核心数)。只有前一个没有指定的时候,才使用后面的来决定,所以默认不进行任何设置,就是根据编译器实现来决定。
- if和num_threads是两个子句,目前的结论是只用于parallel中.
二、pragma omp parallel
自动将下面语句执行N次,(N为电脑CPU核数),然后把每份指派给一个核去执行,而且多核之间为并行执行。
#pragma omp parallel for
并行执行相同代码段
自动将下面的for循环分成N份,(N为电脑CPU核数),然后把每份指派给一个核去执行,而且多核之间为并行执行。
#pragma omp parallel sections 和 #pragma omp parallel section
并行执行不同代码段,每个section都是一个线程,独立运行。
#pragma omp parallel for reduction(+:sum)
归约
#pragma omp critical
线程内互斥的代码段
OpenMP Tutorial学习笔记(4)OpenMP指令之同步构造(Parallel)
https://blog.csdn.net/gengshenghong/article/details/6956878
openmp 快速入门 常用技巧 parallel for sections reduction critical
https://blog.csdn.net/billbliss/article/details/44131591
openmp开启后计算结果错误原因
https://blog.csdn.net/fuwenyan/article/details/79500765
一起来学OpenMP(2)——常用的库函数
https://blog.csdn.net/donhao/article/details/5651782
深度学习自学(五):NCNN中openmp加速模块学习总结相关推荐
- Python学习篇(五) Python中的循环
文章目录 前言 一.range函数 二.while循环 2.1四步循环法 三.for in 循环 四.流程控制语句 4.1 break 4.2 continue 五.else语句 六.嵌套循环 七.二 ...
- python中的glob 模块学习文件路径查找
glob glob.glob(pathname), 返回所有匹配的文件路径列表.它只有一个参数pathname,定义了文件路径匹配规则,这里可以是绝对路径,也可以是相对路径. import glob ...
- python使用教程cmd啥意思-Python 中的cmd模块学习
Python中的cmd模块类型提供了一个创建命令行解析器的框架.简单的来说,可以继承Cmd来创建命令行界面,然后对所有想处理的命令command执行do_command方法.默认情况下,它使用read ...
- JavaScript学习总结(五)——Javascript中==和===的区别
一.JavaScript"=="的作用 当==两边的内容是字符串时,则比较字符串的内容是否相等. 当==两边的内容是数字时,则比较数字的大小是否相等. 当==两边的内容是对象或者是 ...
- Python中的pandas模块学习
本文是基于Windows系统环境,学习和测试pandas模块: Windows 10 PyCharm 2018.3.5 for Windows (exe) python 3.6.8 Windows x ...
- python中re_Python中re(正则表达式)模块学习
今天学习了Python中有关正则表达式的知识.关于正则表达式的语法,不作过多解释,网上有许多学习的资料.这里主要介绍Python中常用的正则表达式处理函数. re.match re.match 尝试从 ...
- python中re模块_Python中re(正则表达式)模块学习
今天学习了Python中有关正则表达式的知识.关于正则表达式的语法,不作过多解释,网上有许多学习的资料.这里主要介绍Python中常用的正则表达式处理函数. re.match re.match 尝试从 ...
- 【Python2】使用python中的turtle模块学习海龟绘图(有趣的python初体验)(最全最详细的turtle介绍使用)
目录 海龟绘图 Python中tkinter的mainloop函数实质 turtle模块里的方法 Python绘图Turtle库详解 turtle绘图的基础知识: 海龟绘图 海龟绘图是Python中非 ...
- python中的random模块学习
我将random模块中的各函数作为代码中的注释说明了: 下面是运行结果 参考文献 http://www.jb51.net/article/50066.htm
最新文章
- 批量替换_批量替换图框
- bzoj1875 边点互换+矩乘
- SQL 2005 中的数据约束
- C++类中不能定义自身类类型成员变量
- 秉承初心,砥砺奋进!华为云助力锦江都城开启云服务时代
- [教程]在Windows 2012 R2上安装Intel I217-V/I218-V网卡驱动
- 通过90行代码学会HTML5 WebSQL的4种基本操作 1
- 苹果鼠标驱动_EFI引导目录drivers64UEFI文件夹(.efi)文件驱动介绍
- Shiro总结和常见面试题
- 战地4无限加入服务器,战地1怎么加入服务器
- python爬去淘宝客订单_Python 应用淘宝客API接口简单获取优惠券的实现
- matplotlib绘图配色colormap问题
- 第三方支付风险控制研究 ——以支付宝为例
- 最全的数据中心(IDC)机房整体工程介绍
- 如何修改Oracle VM virtualbox虚拟机的屏幕大小
- 视频画中画效果制作,原来这么简单就可以做出
- LTE学习笔记--LTE无线连接过程--UE Attach过程和Detach过程
- linux系统getopt函数详解
- 解决qq安全防护更新进程总提示的方法
- 计算机应用基础统试题及答案,计算机应用基础统试题及答案