并发优化笔记
来源:互联网 发布:php培训机构排名 编辑:程序博客网 时间:2024/06/07 17:44
0. 前言
多核并发编程。
当前的计算环境通常是多核CPU、多台服务器,本文简单介绍常用的并发方案。
1. OpenMP
OpenMP适用于统一/共享的内存模型(unified/shared memory),比如多核CPU共享同一个内存,各个核心通过内存分享交换数据。
所以OpenMP通常用于多核处理器计算优化。
OpenMP:线程级(并行粒度);共享存储;隐式(数据分配方式);可扩展性差;
2. MPI
MPI比较复杂,需要程序员自己管理数据分发,并且手动实现各个进程之间的通信、同步。成本相对较大。
MPI通常用于分布式(多台机器)。
MPI:进程级;分布式存储;显式;可扩展性好。
3. OpenCL
OpenCL可能更为合适,虽然有一定的学习成本,但模型比MPI简单,扩展性比OpenMP更好,更关键的,是目前各个并行计算厂商都在支持的实际标准(de facto standard),适用于CPU和GPU平台,虽然转移平台仍需要人工去做一定修改,但OpenMP和MPI只支持CPU平台.特别的,如今一块顶级GPU的浮点数计算能力已经达到了我所在学校2004年建设的半个超级计算机集群的运算能力(50台).
作者:Laughing man
链接:https://www.zhihu.com/question/20188244/answer/24461742
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
4. OpenMP & MPI性能
阅读全文
0 0
- 并发优化笔记
- 数据库学习 - 大规模并发优化学习笔记
- 《Java程序性能优化》学习笔记 JVM和并发优化
- Java虚拟机学习笔记(优化及并发)
- Java高并发程序设计笔记(七)锁的优化
- golang学习笔记之并发优化(一)
- golang学习笔记之并发优化(二)
- Tomcat优化之并发优化
- 优化Apache,提高并发
- MyISAM读写并发优化
- nginx并发优化
- (读书笔记),Mysql并发优化
- mysql 并发插入优化
- php-fpm并发优化
- Tomcat 并发优化
- Nginx并发访问优化
- Tomcat7并发优化
- IIS7并发数优化
- java实现邮箱群发功能
- 根据两点的经纬度求方位角和距离
- 模型评估
- ztree树---setting属性
- java PriorityBlockingQueue——按优先级排序的阻塞式线程安全列表
- 并发优化笔记
- 1122. Hamiltonian Cycle (25)
- kafka安装
- popwindow缩放显示消失动画
- PCRE is not compiled with PCRE_UTF8错误
- vueJs(2.x)+router+vuex简易博客系统<一>
- 开发框架-Spring-Spring Boot属性文件及多环境配置
- Linux更改命令提示符信息
- MASKRCNN(之三)demo.