论文部分内容阅读
随着集群技术的发展,集群越来越广泛的被运用于科学计算领域。从理论上分析,集群模型既能提供高可用性和高性能,也能提供可管理性、可扩展性。但目前,这仅仅是模型上的理论阶段,为实现这个伟大梦想,集群软件还有很长的路要走。当集群开始被科学高性能计算领域应用时,可靠性就已经作为一个问题被提出了。随着系统硬件和软件复杂性的日益增加,越来越多的科学计算应用程序在提高性能的同时,也伴随着容错性与健壮性的保障。 本文构建了高性能计算容错不死系统,面向科学计算应用程序,以向用户提供保障服务和优质服务为己任。其中保障服务指的是用户只需向系统提交任务一次,系统就能在节点失效等多种恶劣条件下,顽强完成任务,最后返回计算结果给用户;优质服务指的是在系统中添加了可以预测系统性能和任务性能的智能模块,通过调整网格环境内各节点的负载情况,进行有效的子任务迁移,最终缩短总任务的运行时间。 本文针对并行计算问题,总结出由用户、管理节点和工作节点组成的任务模型,提出目录式、文件式和参数化的任务统一描述思路,便于任务的划分和有效管理。保障服务的实现主要依赖两项技术,单节点内任务复活技术和多节点间任务复活技术。任务复活指的是任务在意外终止的情况下能重启并恢复到原先状态继续运行。优质服务的实现也主要依赖两项技术,性能预测技术和任务迁移技术。其中性能预测指的是系统能根据网格内各节点的负载情况,判断并选择运行该任务最适宜的节点,任务迁移技术指的是任务从一个节点迁移到另外的节点继续运行。 在实现保障服务和优质服务的各种技术中,最关键和最基本的技术是检查点技术,检查点技术现有很多的实现方式,涉及用户级和系统级、修改源码和无需源码等多个方面。本文综合比较并分析了多种典型的检查点技术,然后融合几种检查点技术,根据自身试验环境的特点,提出容错不死系统的解决方案。最后经过实例分析,指出系统的特长与不足,以及未来展望。