社区
Windows SDK/API
帖子详情
openmp 多线程效率问题
学渣扛把子
2017-11-15 10:16:16
使用openmp对C语言程序并行改进,并行区域设置如下:
#pragma omp parallel sections num_threads(2)
{
#pragma omp section { 处理数据 }
#pragma omp section {处理数据 }
}
线程里面没有加锁,为何效率很低,特别是线程数增加的时候(CPU是4核,硬件没有问题)。
...全文
542
回复
打赏
收藏
openmp 多线程效率问题
使用openmp对C语言程序并行改进,并行区域设置如下: #pragma omp parallel sections num_threads(2) { #pragma omp section { 处理数据 } #pragma omp section {处理数据 } } 线程里面没有加锁,为何效率很低,特别是线程数增加的时候(CPU是4核,硬件没有问题)。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
论文研究-一种
多线程
负载均衡分析方法研究.pdf
为了精确分析负载均衡
问题
,以优化程序运行性能,确定了负载均衡分析单元,度量了负载不均衡程度以及潜在的并行调整
效率
,提出了一种以负载均衡分析单元为分析对象来检测、分析、调整
OpenMP
多线程
程序负载均衡的方法。该方法在隐含同步显示化的基础上,使用指导语句改写的方法对源程序进行插桩并获取性能数据;在负载均衡方面,对程序进行性能分析,根据潜在的并行调整
效率
有选择地对程序进行负载均衡调整。实验表明该方法是可行有效的。
论文研究-基于
OpenMP
的压缩感知多描述并行处理算法.pdf
针对压缩感知算法重建时间长、图像重建质量不高等不足, 在认真分析压缩感知算法的基础上, 提出一种压缩感知多描述并行算法。为了提高系统运行速度和重建图像质量, 将经过稀疏变换后的系数进行交织抽取, 分成多个子图像, 再利用
OpenMP
将子图像分配到各线程中并行实现分块压缩感知。实验结果表明, 随着抽取数的增加, 图像的重建质量呈上升趋势, 在32-抽取时图像的重建质量比单抽取的高出了724 dB; 随着线程数的增加, 程序的执行
效率
不断提高, 最高可达单线程的735倍, 有效地解决了压缩感知算法重建时间长以及图像重建质量差的
问题
。
OpenMP
并行计算程序设计基础
OpenMP
是由The Board of the
OpenMP
Architecture Review Board(ARB)提出的一套用于共享内存并行系统的
多线程
程序设计标准。目前,
OpenMP
仅支持C、C++和Fortran语言。由于
OpenMP
是一种共享存储的标准,所以在非共享存储系统上不能使用,如集群(Cluster)(目前在非共享存储系统上并行主要采用MPI)。简而言之,
OpenMP
就是一种
多线程
程序设计的标准,适合在个人计算机上进行并行计算。它提供了对并行算法的抽象描述,程序员只需在源代码中加入专用的pragma来指明,编译器将自动将程序进行并行。 主要内容: 一、一个简单的
OpenMP
例子 1 二、
OpenMP
概述 5 三、并行数目与并形体对运行
效率
的影响 8 四、求π例子 13 五、循环结构的并行 17 1、范围条件 17 2、shedule条件 22 3、threadprivate指令 24 六、分段并行 25 七、嵌套并行 29 八、
OpenMP
中的常用函数 33 1、设置线程数目 33 2、获取线程数目 33 3、获取最
多线程
数目 33 4、返回线程ID 33 5、获取程序可用的处理器数目 33 6、获取时间 34 7、是否处于并行中 34 九、同步 35 1、互斥同步 39 2、事件同步 42
论文研究-基于
OpenMP
的Winograd并行矩阵乘算法应用研究.pdf
为了提高半经典分子动力学模拟中矩阵乘法
效率
, 通过一种稀疏矩阵分解方法化简矩阵乘法, 基于
OpenMP
实现矩阵相乘的Winograd并行算法。该算法将Winograd算法中各部分依次采用
OpenMP
并行计算, 降低了数据通信。在16核服务器上测试表明, 该方法能够显著提高半经典分子动力学模拟中矩阵乘法
效率
, 并行加速比能够达到9. 47, 并具有良好的可扩展性, 为大分子体系的模拟提供了可能。
一种针对汽车三维虚拟仿真系统的
多线程
渲染优化方法 (2014年)
针对汽车三维虚拟现实仿真系统在多核平台下的渲染
效率
和CPU利用率较低的这一
问题
,提出了一种基于
OpenMP
的
多线程
渲染优化方法。该方法采取了设置动态线程数量、策略调度以及渲染帧并行绘制等策略,对汽车三维虚拟现实仿真系统渲染过程中的初始化阶段、逻辑阶段以及渲染阶段进行并行优化。在多核平台上进行了实验,结果表明,该方法能有效地提高系统的渲染
效率
和CPU 利用率,改善CPU的负载均衡。
Windows SDK/API
1,221
社区成员
8,136
社区内容
发帖
与我相关
我的任务
Windows SDK/API
C++ Builder Windows SDK/API
复制链接
扫一扫
分享
社区描述
C++ Builder Windows SDK/API
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章