如何为高性能计算应用程序提供云原生体验
扫描二维码
随时随地手机看文章
高性能计算(HPC)是企业获得创新能力、洞察力、商业竞争力的动力,是这个数字时代不可或缺的资源。例如,采用高性能计算(HPC)运行的复杂计算机模型来测量和分析近几十年天气变化,帮助改善预测并模拟气候变化和其他破坏性事件(如飓风)的影响。
而在一系列的制造、工程和工业环境中,采用高性能计算(HPC)技术可以缩短金融交易时间,加强合规性、风险检测、数据分析,甚至加快原型设计。
高性能计算(HPC)非常适合计算、数字和数据密集型任务,原来主要应用于大型企业、政府部署、研究机构的少数领域。但云计算一直是IT变革的催化剂。它提供了超级计算能力,并为规模较小的实体提供了大量的计算能力;推动‘云优先‘的思想。当然,这与更广泛的市场数字化密切相关,越来越多的业务应用程序从内部数据中心转移出来,以提高灵活性,并降低成本。
当今的发展如今,超大规模的云计算供应商占据了大部分的高性能计算(HPC)市场,提供了更高的弹性以及几乎无限的计算可扩展性。在以往,超级计算数据中心的技术更新通常需要两年或更长时间。该过程包括审查现有技术,然后进行试验或概念验证阶段,并广泛公布征求建议书(RFP)要求。毫不奇怪的是,这些设施中通常部署了Cray、IBM、HPE、NEC等公司的服务器。
但是,超大规模云计算构建者可以将一些快速网络与一系列GPU和一些复杂的中间件有效地融合在一起,以便管理模拟和建模工作负载,然后称之为真正的高性能计算(HPC),这种想法是错误的。该模型不适合高性能计算(HPC)。这些应用程序复杂而密集,并且要求苛刻。虽然对于某些高性能计算(HPC)而言,通常是以最低成本获得最多计算能力,但其成功交付以及高性能计算(HPC)应用程序的最佳运行,在很大程度上依赖于性能和速度。
大型云计算提供商通过大量使用自己的服务器来响应对高性能计算(HPC)集群的需求。通过这些硬件可以提高性能,而服务器的CPU则可以通过商用GPU进行扩充,以用于更大规模的高性能计算(HPC)应用。但这并不是最佳选择。依靠“大量计算”并不能简单地构建一个出色的高性能计算(HPC)环境,即在最佳条件下部署应用程序并尽可能高效地运行。要实现这一目标,企业需要一个定制的云环境,其中应用程序优先提供真正的高性能计算(HPC)。
最近,研究机构在Amazon Web Services、Microsoft Azure、私有的高性能计算(HPC)云平台上实施了相同高性能计算(HPC)配置的OpenFOAM压力测试,以更好地了解性能影响。为了反映合理的中型高性能计算(HPC)工作量,元素数量从20万个增加到4160万个。
针对每个高性能计算(HPC)云平台配置尝试了五次运行,揭示了在使用少量核心时,在AWS云平台中的扩展结果可重复性非常好,但随着CPU数量的增加,可变性也随之增加。并会产生负面影响。而采用物理服务器并没有发生这种情况,全面加快了30%。在Microsoft Azure云平台上扩展OpenFOAM模拟也存在一些值得注意的问题。
超大规模公共云是广泛的企业、办公室和云平台支持的应用程序和工作负载的理想计算资源,提供广泛的可扩展性、灵活的访问点、定价计划,以适应任何部署和时间表。但是它们依赖于虚拟化的服务器,这些服务器通常是跨越国界的,并且通常远离存储设备。在考虑位置时,还要做出关于最佳地理位置的战略决策。例如,一些地点还可以采用可再生能源,这可能对组织的利润及其环境足迹产生巨大影响。
而且,对于要求更高的高性能计算(HPC)用户,尤其是那些希望在近期内接受定制机器和深度学习应用程序的用户,或者为了从原型阶段过渡到生产产品的人工智能初创公司需要对此重新思考。不幸的是,定制配置机器以适应他们自己的应用程序也违背了超大规模的原则。公共云需要高度的同质性,以便能够大规模地运营基础设施。对于运行定制或高度自定义应用程序的高性能计算(HPC)用户,这些应用程序需要高性能计算(HPC)工程师进行精确配置或增加支持时间以优化其部署,用户将无法在超大规模云平台中找到它。对于这些专业应用,用户需要采用“量身定制”服务。
Hyperion公司报告称,10%的高性能计算(HPC)现在在云平台中实施。随着企业越来越依赖高性能计算(HPC)输出,他们必须寻找一个真正优化的环境,在这个环境中,高性能计算(HPC)集群能够以可重复的方式部署,并且电力和成本是可持续的,并且不会有经济损失。曾几何时,“优化”意味着使用作业调度程序将集群放在一个地方。而如今,每个复制的部署都必须记录,并随着时间的推移而实施自动化,以保持性能完整性。
最终,在云中运行复杂的高性能计算(HPC)应用程序的潜力是巨大的,但如果人们真正获得好处,必须面对并解决性能、速度、成本的基本挑战。