论文部分内容阅读
集群系统是当前大数据计算、云计算等实现过程中必不可少的环节之一,其内部节点间通信时长在很大程度上决定集群整体的并行处理能力。透明进程间通信协议TIPC专为集群系统开发,面向集群系统各节点间单次通信数据量小且通信建立拆除频繁的特性进行优化,具有简洁、高效且移植性强等特点。本文基于该协议展开应用研究,构筑其在并行计算中的应用渠道。 本文针对并行计算消息传递接口标准MPI的一种具体实现MPICH2进行自顶而下源码分析,着重针对相关通信函数调用关系进行阐释,明确MPICH2三层源码结构以及默认采用的TCP传输方式实现的具体流程。随后,介绍分析TIPC协议并将之与传统TCP协议作理论分析对比以及通信实验对比,阐述TIPC协议相较TCP协议而言在高可用集群通信传输环境下的优势所在。在MPICH2底层TCP通信通道源码基础上通过连接地址转换、重构连接建立拆除方式以及重写相关发送接收函数等技术途径,设计实现基于TIPC协议的MPICH2并行程序接口,并在消息发送接收阶段加入一种流量控制监测功能。 本文基于TIPC网络描述服务设计一种网络拓扑监测模块并将其加入运行MPICH2的各集群节点,将当前网络中运行的各节点注册到拓扑订阅结构中,针对集群网络中新增节点、拆除节点以及查询节点三项功能提供相应实现,保证各节点快速准确查询当前集群整体网络结构以及目的节点可达性。在此基础上,本文设计了一种集群任务分配方法,通过0-1整数规划构建数学模型求解并与相应传统求解方式做实验对比。 最后,本文通过俄亥俄州立大学大学公布的MPI并行通信测试程序对基于TIPC网络协议的MPICH2并行程序与原MPICH2程序的通信函数进行一系列单边双边延迟带宽测试,测试结果表明经基于TIPC协议的MPICH2并行程序在带宽利用率及通信延时上均优于传统MPICH2。