服务器 频道

分析:买HPC 要先算投入产出比

    【IT168 专稿】近几年,随着大型RISC SMP系统、安腾服务器尤其是X86工业标准机群服务器的发展,国内的高性能计算(HPC)市场日渐火热。无论是IBM、HP、SUN、DELL等国际厂商,还是曙光、浪潮、联想等国产厂商,都把HPC当作不可或缺的战略性业务来对待。

     而为了满足技术创新和市场竞争的需要,教育、科研、国防、计算中心、政府乃至许多大型企业也开始大批量采购HPC系统。但用户到底需要什么样的HPC系统呢?是价格最便宜的,还是性能最强劲的?以往,我们在评估HPC系统时,大多以运算峰值、LINPACK值、使用效率等指标来计算。这是否真的合理呢?或许美国麻省理工学院对HPC系统的评估方法——在效益成本比率(BCR,benefit-cost ratio)的基础上计算投资回报率(ROI,return on investment)——能给我们带来新的思考。为此,我们编译了美国竞争力委员会Suzy Tichenor和MIT林肯实验室Albert Reuther撰写的这篇文章,以供国内用户参考。

HPC带来了什么?

    高性能计算(HPC,High performance computing),又称超级计算(supercomputing),不仅对科技进步和国家安全做出了巨大贡献,对工商业领域中的创新和竞争同样意义非凡。继理论和实验之后,使用HPC进行建模和模拟已经成为科技界和工业设计领域的第三条腿。有研究表明,在全球化的市场竞争中,拥有强大的HPC资源就意味着快速的市场反应速度、减少的成本和高人一筹的产品质量。

    比如,许多机构使用HPC系统(超级计算机)来设计汽车和飞机,寻找和开发新的能源,预测天气变化,发现新的药物乃至保卫我们的国家安全。HPC背后的效益往往是非常巨大的:

· 1980年,波音公司为其767客机测试了77架机翼。而在后期7E7 Dreamliner系列飞机的设计中,由于使用了HPC模拟,波音公司只需要测试11架机翼就可以了。
· 娱乐业的领导者DreamWorks Animation SKG通过采用超级计算机,为三维动画电影设立了全新的标准。结果,美国动漫产业在全球市场上占据了领导地位。
· 在宝洁公司,从纸尿布的原料吸收性的测试,到洗涤剂塑料瓶的重量和抗损性分析,HPC模拟都得到了极为广泛的应用。
· HPC在沃尔玛供应链管理中扮演着极为重要的角色,如通过每日数据分析来决定全球范围内的每个超市销售哪些商品,甚至可以让所有的店面按时打开灯光。
· Chevron及其合作伙伴在墨西哥海湾深水区勘探石油的过程中,HPC也起到了至关重要的作用,并最终发现了一块蕴藏30-150亿桶石油的新油田,使美国的石油储量增加了50%。

    事实上,如果性能足够强大,HPC能干的事还会更多,包括数字化虚拟人体医学、石油地震资料处理、原油精炼、互联网数据流实时性分析等诸多尖端领域。比如,当前由于地震模型中存在不确定性,会导致错误的钻井,从而影响产量和环境。而通过构建精确度更高的石油地震资源处理模型,HPC还能帮助发现50-75%的石油储量。

HPC普及应用的三大障碍

    尽管HPC的作用已很明显,但HPC在更大范围内的普及应用还是受到了阻碍。竞争力研究委员会(Council on Competitiveness)认为,主要有三个方面的阻碍因素。首先,许多技术人员对并行计算模拟不了解,因而需要花费一大笔教育培训支出;其次,存在技术上的障碍,如原有代码需要升级,新代码开发缓慢,CPU和其他子系统之间的性能差距越来越大等等。另外,在企业内部,业务策略和决策过程对是否购买或使用HPC会造成更加直接的影响。

    在许多美国公司的董事会上,HPC没有被当作有助于创新的工具,而是一个深不见底的“成本黑洞”。因此,在做投资决策时,管理层容易倾向于放弃HPC,或者采购“更便宜”而不是“更有生产力”的系统和削减人员培训费用,而不会把HPC当作长期投资。

HPC评价体系面临挑战

    许多高级管理人员之所以把HPC视作一种成本支出而不是一种有价值的投资,一个主要的原因就在于我们很难评估HPC的投资回报率。以往,业界在评价HPC系统时,都以系统使用率为主,比如系统中每颗CPU的实际使用率。这种评价指标背后的逻辑是,用户既然已经花了一大笔钱购买和维护一套HPC,就要让系统近乎100%地处于运行状态才真正划算。

    在这种思想的指导下,HPC系统拥有单位就会通过资源管理计划,来确保有许多用户在HPC机器上不停地运行规模较小的计算模拟任务。实际上,虽然这种做法确实可以提高系统的使用率,但却不能保证系统为最重要的计算任务提供服务。因此,这种简单、粗糙的评价方法没有反映出HPC系统的真正价值,也不利于提升组织的长期竞争优势,从而也不利于用户在购买、升级和维护HPC系统时做出正确的决策。

    一种新的评价方法是通过计算效益成本比率(BCR)来得出最终的投资回报率(ROI)。BCR的计算方法是指在一定时期内,用所获得的利润或成本节省除以投资总额。在本文的讨论中,我们以一年时间为期,则BCR跟内部回报率(IRR,internal rate of return)的关系是:BCR = 1 + IRR或IRR = BCR – 1。另外,我们也可以进行净现值(NPV,net present value)分析。

区别对待科学计算和商用计算

    在评估HPC系统的投资价值时,BCR的分母相对容易确定,只要精确计算出各部分的成本即可。但投资收益或成本节省的计算较难。DARPA  HPCS正在对BCR的分子和分母内容做出相应规定。在《国际高性能计算应用》杂志2004年冬季特别版上发表的一篇文章指出,HPCS研究小组已经开始使用生产力评价指标,即生产力由效用除以成本得出。这跟我们讨论的BCR非常相似,如下图所示:

 
    为了详细地阐述效用(效益)和成本之间的关系,HPCS生产力小组成员、MIT林肯实验室的Jeremy Kepner博士开发了一个高性能生产力框架和评估模型。HPCS生产力模型放弃了传统的高性能计算系统评价方法,如系统每秒浮点运算峰值(flops)和系统需求,因为这些指标通常对实际生产力不会有太大影响。BCR的计算公式如下图所示:

 
    可见,分子是指工程师和科学家在解决复杂问题时所节省的时间,分母则不仅考虑了系统成本,也包括了用户培训、为并行计算准备应用代码、启动应用软件以及管理系统所需的时间成本。可见,这种方法更加适用于高校科研等科学计算类用户。

    而在工商业领域,由于HPC系统很少用于基础科学研究,更多是用于解决产品设计和技术开发的问题,因此决定BCR或生产力的变量也大不相同。比如工业用户可能更加关心使用HPC系统开发新产品所带来的价值、潜在的市场份额增长、利润或损失以及任务本身的战略意义,而对节省的计算时间可能就不太关注。另外,因为商用并行化软件可以在市场上买到,因此,分母中的因素就无须考虑“为并行化做准备的时间”,而是改为“软件成本”。还有,跟软件运行时间相比,极短的应用启动时间也就可以忽略不计了。针对商业计算的BCR公式如下图所示:

科学计算案例:MIT现身说法

    MIT林肯实验室是美国国防部下的一个研发中心,由联邦政府提供资金支持。该实验室拥有一套600个处理器规模的企业级网格集群方案,其用户有200人。我们这里采用针对科学计算的BCR公式,其分子和分母数值为均值,该实验室每人一年的薪酬支出是20万美元,即平均每个工作小时可折算成100美元。

· 该系统每年可为200个用户节省的总时间是近36000个小时。节省时间= (系统使用时间)*(平均用户数)*(1-1/(平均每个任务所用的CPU数))。
· 为200个用户运算和模拟代码进行并行化的时间是近6200个小时。
· 每名用户学会使用系统的培训时间是4个小时,因此总的培训时间就是800小时。
· 平均每个任务的启动时间是10秒,每年有10000个并行任务需要启动,因此一年内总的启动时间是27.8个小时。
· 需要一名系统管理员,折算成2000个工作小时。
· 每年要购买200颗CPU(即100个双路服务器节点),每个节点的采购成本是5000美元,因此每年总采购成本是50万美元,相当于5000个工作小时。

    因此,BCR/生产力的计算结果如下:


     可见,一年相应的内部投资回报率(IRR)为160%,说明完全需要这样的HPC系统。

    实际上,HPC对MIT林肯实验室的作用也是相当明显的。比如,某位技术人员要对全美气象雷达进行改进性研究,如果在他自己的性能超强的台式机上进行运算和模拟,大约需要运行10个小时,他每天可以两次对计算过程进行调整或运行不同的数据:一次在白天工作时间,一次在晚上。而如果改用HPC系统,那么他需要培训一个上午来学会使用系统,然后下午对模拟代码进行并行化准备。接着在HPC系统上进行模拟,使用8-16颗CPU,通常运行时间少于一个小时。这样,每天他可以进行10-12次模拟,显然,这无疑会提高运算精度和运算效率,从而会给他自己的项目、赞助人乃至国家带来好处。

商用计算案例:某汽车企业

    下面我们再来看一个工业应用方面的例子。我们同样以一年为期,年初计算投资,年底计算效益。假设某汽车企业有三个项目必须用到HPC系统。该企业购买HPC系统后,三个项目有望分别带来525万、200万和450万美元的利润。其成本支出结构是:

· 购买软件许可证花费250万美元。
· 预计有90个用户,平均每人需培训80个小时,每小时的软件费用是120美元。
· 该系统需要10名系统管理员,平均每人年薪酬是20万美元。
· HPC系统硬件采购件是300万美元。

    相应的BCR值和IRR值如下所示:

 
    因此,该汽车公司的管理人员需要决策的是,40%的年度内部投资回报率(IRR)是否值当,进而决定是否需要购买HPC系统。

结论

    在过去的数十年里,HPC对美国经济已经产生了巨大的影响,使美国得以在全球经济领域确立和保持足够的竞争力。然而,竞争力研究委员会发现,尽管使用HPC会带来生产力和竞争力的提升,但许多企业的管理人员并没有认真对待这种技术。一部分因素在于人才缺乏和技术障碍,而另一大因素则是因为许多美国公司的董事会仅仅将HPC视为一种成本支出,而没有认识到HPC背后的潜在价值。

    在本文中,笔者讨论了用户在购买和使用HPC系统过程中发生的成本和效益,并分别对科学计算和商业计算两大不同领域的HPC投资进行例证说明。当然,用户实际进行投入产出比分析时,需要根据自己的实际情况综合考虑这两种方法,关键在于要对效益和成本进行正确识别和估算。不管怎样,投资HPC决不仅仅是一种成本支出,它将对企业收益、生产效率和员工技能都大有裨益。

0
相关文章