并行计算与软件部署全解析
1. 并行计算概述
并行计算是一个庞大的主题,我们目前只是触及了其表面,包括可实现的目标、现有的并行机制以及实现各种策略的库。科学计算中的并行算法实现与常见的基于网络的并行计算有很大不同。以下是一些值得探索的并行系统:
- OpenMP :基于预处理器,易于使用,适用于C、C++和Fortran的低级并行。
- GNU Portable Threads :适用于C、C++和Fortran的跨平台线程系统。
- IPython Parallel :IPython使用的基于ZeroMQ的并行架构。
- Twisted :用于Python Web应用程序的事件驱动并行。
同时,我们还应熟悉以下概念:
- 衡量规模有多种方式。
- 有些问题很容易并行化,而有些则非常困难。
- 高性能计算系统用于处理非简单并行问题。
- 高吞吐量计算系统适用于简单并行或异构问题。
- 单进程下,非并行算法比并行代码更快。
- 数值计算时避免使用Python线程。
- 多任务处理适用于约一千个进程以内的问题。
- 需要大规模扩展时使用MPI。
2. 软件部署的重要性
软件开发者通常希望自己的代码有用户使用,对于科学程序来说更是如此,因为科学依赖声誉系统。即使开发者不希望有用户,用户的反馈也非常有帮助。新用户能指出程序的盲点,这个过程从安装就开始了。
新用户若阅读文档后仍不理解项目内容
超级会员免费看
订阅专栏 解锁全文

3840

被折叠的 条评论
为什么被折叠?



