论文部分内容阅读
云计算以服务的形式提供按需获取的、即用即付和随时可扩展的计算资源和存储资源。相比云计算的高可扩展性,传统计算模式中有限的资源显示出逐渐不能满足高性能计算对大规模资源的需求;另外,传统模式中大量的计算资源在非作业高峰期长期处于闲置状态,造成了资源的浪费,使传统高性能计算模式具有投入成本高,资源使用不灵活的弊端。针对这一现状,在开展高性能计算时,将复杂科学应用从传统计算模式移植到云环境中进行研究将是一项有意义的工作。本文通过移植基于有限元方法的3D齿面接触分析的高性能计算软件ZaKo3D到微软Windows Azure云平台,对在云环境中开展计算密集型高性能计算的应用部署、执行和作业动态调度等关键问题进行了详细研究,主要工作包括:(1)云环境中高性能计算应用的部署模型和并行执行框架的研究由于云平台目前还没有统一标准,各种云平台应用接口的不同和配置的复杂性导致迁移和部署云应用是困难的。本文基于微软Windows Azure云平台提出了一种在云环境中部署高性能计算应用的模型,同时以ZaKo3D应用做用例研究,研究了一种在云环境中执行高性能计算应用的并行执行框架。(2)不同计算模式中应用执行的性能及成本分析和适用场景研究相比传统计算模式,云计算更注重节省成本花费,而用户在执行应用时,对所选的计算平台的性能也有一定的要求,过高的性能配置会导致成本的增加,过低的性能配置则无法满足用户对高性能计算的需求。如何平衡的选择性能配置和成本花费是一个有意义的研究问题,本文分别对传统高性能计算集群和云计算平台开发了成本量化模型,并从性能和成本两个方面评估传统高性能计算集群和云环境这两种计算模式,研究在不同计算模式中开展高性能计算时,如何根据应用的特点在不同计算资源中选择适合的高性能计算模式。(3)云环境中动态作业调度方法云环境的异构分布式系统存在的各种难以预知的不稳定因素导致并行计算作业的各节点产生冗余开销,使得节点间呈现负载不均衡的状态,从而违背了使用云计算资源保证成本效益这个特点。本文设计了一种在云环境中基于Master-Worker模式的动态MPI并行作业调度方法。此方法以各个云计算节点的实时工作负载为依据,动态分配并行计算作业,实验结果表明,这种动态调度方法降低了并行计算节点的冗余开销,从而最大化了各个节点上执行任务的均衡性,并缩短了并行计算的总运行时间。本文研究结果表明,基于云环境的高性能计算资源有更好的扩展性。云应用部署模型提供了便于用户在云环境中执行高性能计算应用的方法。本文的研究为组织或企业选择云计算资源开展高性能计算给予了指导性意见,针对传统资源和云资源各自的特性,用户需要根据应用的需求和自身情况在两种计算模式中进行合理的选择。通过使用动态作业优化调度方法,云环境中的应用并行计算能够为用户带来优于传统高性能计算方法的成本效益。