并行计算基础:通讯判据与当代并行机系统

需积分: 35 20 下载量 45 浏览量 更新于2024-08-20 收藏 8.4MB PPT 举报
"这篇讲义来自国家高性能计算中心(合肥),涵盖了并行计算的结构、算法和编程。内容包括并行计算机系统结构模型、当代并行机系统(如SMP、MPP和Cluster)、并行计算性能评测、并行算法设计基础、基本通信操作、数值算法、并行程序设计等。特别提到了通讯判据,强调任务的通讯性质、局部通讯、通讯并行性和同步任务的计算并行性对于并行计算效率的影响。" 并行计算是一种处理大量数据和复杂计算的方法,通过同时使用多个处理器或计算资源来提高计算速度和效率。在评估并行计算的有效性时,通讯判据起着关键作用: 1. **所有任务是否执行大致相当的通讯**:在并行计算环境中,如果各个任务之间的通讯负载均衡,可以更有效地利用计算资源,避免部分处理器因等待通讯而空闲。 2. **是否尽可能的局部通讯**:局部通讯指的是相邻处理器之间的通讯,它通常比远程通讯更快,因此,设计算法时应优先考虑减少跨处理器的通讯,提高整体性能。 3. **通讯操作是否能并行执行**:并行执行通讯操作可以减少通讯延迟对计算时间的影响。例如,使用消息传递接口(MPI)可以实现通讯和计算的重叠,提高系统效率。 4. **同步任务的计算能否并行执行**:在同步机制下,如果计算任务可以并行进行,那么整个系统可以充分利用所有处理器,避免因为同步等待而损失计算时间。 讲义中,第一篇介绍了并行计算的基础,包括并行计算机系统的结构模型,以及不同类型的并行计算机系统,如对称多处理(SMP)、大规模并行处理(MPP)和集群(Cluster)。这些结构各有特点,适用于不同的应用场景。 第二篇关注并行算法设计,从基础理论到一般设计方法和技术,再到具体设计过程,旨在帮助读者掌握如何设计高效的并行算法。 第三篇涉及并行数值算法,包括基本通信操作、稠密矩阵运算、线性方程组求解和快速傅里叶变换(FFT),这些都是科学计算中的常见问题,通过并行化可以显著提升计算速度。 第四篇则讨论了并行程序设计,涵盖基础、编程模型、分布式存储系统编程以及并行程序设计环境和工具,为实际编写并行代码提供了指导。 通过深入学习这些内容,读者将能够理解和应用并行计算原理,优化通讯策略,设计并行算法,并在不同的并行计算平台上编写高效程序。