您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > 科学工作流与高性能计算集成方案
第43卷第3期电子科技大学学报Vol.43No.32014年5月JournalofUniversityofElectronicScienceandTechnologyofChinaMay2014科学工作流与高性能计算集成方案赵勇,李有福,李小龙,刘鹏,田文洪(电子科技大学计算机科学与工程学院成都611731)【摘要】科学工作流为科学计算提供了工作流定义、流程管理和任务并行化等支持,高性能计算为大规模数据处理提供了集群管理、任务管理、资源调度等机制。如今正进入一个“大数据”时代,将科学工作流系统与高性能计算结合实现高性能计算平台上大规模并行计算具有重要意义。集成中间件与上层工作流系统和底层高性能计算平台进行交互,提供任务提交与状态监控功能。同时,集成方案为分布式集群中计算平台提供新的参考实现。基于上述分析以Swift科学工作流与Windows高性能计算平台集成方案为例,通过NASAMODIS图片处理工作流来分析并验证集成方案的可行性和性能。关键词计算平台;分布式集群;高性能计算;大规模并行计算;科学工作流中图分类号TP302.7文献标志码Adoi:10.3969/j.issn.1001-0548.2014.03.024AnApproachtoIntegrateScientificWorkflowwithHighPerformanceComputingZHAOYong,LIYou-fu,LIXiao-long,LIUPeng,andTIANWen-hong(SchoolofComputerScienceandEngineering,UniversityofElectronicandScienceTechnologyofChinaChengdu611731)AbstractScientificworkflowprovidesscientificcomputingwithworkflowspecification,workflowprocessmanagement,taskparallelism,etc.Highperformancecomputingprovidesmechanismsanddevelopmentinterfacessuchasclustermanagement,taskmanagement,taskscheduling,etc.toscientificcomputing.Whileweareenteringintoa“bigdata”era,itisnecessarytointegratescientificworkflowwithhighperformancecomputingtoimplementthelargescaleparallelcomputingonhighperformancecomputingplatform.TheintegrationmiddlewareinteractwithupperworkflowsystemsandunderlyingHPCplatformprovidesthesupportfortasksubmissionandstatusmonitoring.Theintegrationarchitecturewillbeareferencesolutiontotheconstructionofcomputingplatformsindistributedclusterenvironment.TakingSwiftscientificworkflowsystemandWindowsHPCplatformintegrationsolutionasreferences,acasestudybyusingaNASAMODISimageprocessingworkflowispresentedtoanalyzeanddemonstratethecapabilityoftheintegratedsystem.Keywordscomputingplatform;distributedcluster;highperformancecomputing;largescaleparallelcomputing;scientificworkflow收稿日期:2013−03−20;修回日期:2013−09−06基金项目:国家自然科学基金(61034005,61073175)作者简介:赵勇(1971−),男,博士,教授,主要从事云计算、网格计算、高性能计算、大数据处理和工作流等方面的工作.我们正在进入一个“大数据”时代,全球产生的数据量呈“爆炸式”的增长。根据最近的IDC研究报告,在2010年全球的数据信息总和达到1ZB(zettabyte)。Google和Bing等搜索引擎每天都会产生数TB的搜索日志。社交网络产生的数据量也十分巨大,Facebook每月产生300亿条内容,包括web链接、新闻、状态、博客文章和视频与图片的评论等[1]。科学界同样面临来自实验数据、模拟数据、传感器数据和卫星数据等“数据泛滥”问题[2]。欧洲核子研究组织的大型强子对撞机[3]每秒钟能够产生大于100TB的碰撞数据;GenBank[4]是全球最大的DNA序列数据库之一,其中已经包含了超过1200亿个碱基数据,并且这一数量每9~12个月翻一番。物理学、地球学、医学等许多领域的数据量也在快速增长。科学工作流管理系统(SWFMS)对于科学计算有重要的意义,它们提供了工作流定义、过程协调、作业调度与执行、资源跟踪和容错等功能。Taverna[5],Kepler[6],Vistrails[7],Pegasus[8],Swift[9],VIEW[10]等工作流系统在许多领域都有广泛的应用,如物理学、天文学、生物信息学、神经科学、地球学和社会科学等。同时,科学设备和网络计算的发展向可靠的工作流系统在数据规模和应用复杂度方面发起了新的挑战。高性能计算(highperformancecomputing,HPC)电子科技大学学报第43卷458是计算机科学的一个分支,可以最大限度提高系统的I/O、计算和数据传送性能。主要用于解决大规模科学问题的计算和海量数据的处理,如科学研究、气象预报、计算模拟、军事研究、CFD/CAE、生物制药、基因测序、图像处理等。本文提出一个将科学工作流系统与高性能计算平台结合的方案,集成方案涵盖工作流定义与提交、流程解析、任务调度与执行以及状态监测等工作流管理涉及到的所有主要过程。既能灵活方便地描述大规模的应用流程,又能有效地利用高性能计算集群资源管理和任务调度功能,实现对大规模HPC应用并行化端到端的支持。1相关工作及研究意义学术界和业界根据不同研究和应用方向开发出各具特点的工作流系统[11],随着科学计算过程中数据信息的处理规模急剧增长,集群计算资源在科学工作流中扮演着越来越重要的角色。一些研究集中在基于Taverna工作流系统与网格环境协作,如UNICOREplugin[12]、gLiteplugin[13]、caGridplugin[14]等,它们使Taverna工作流系统能够便捷地访问网格计算资源;基于Windows平台工作流系统的研究专注于WindowsWorkflowFoundation(WWF)[15-16]的相关应用和平台架构[17],如MyCoG。NET[18]实现WWF和Globus网格服务无缝结合,基于WWF的Trident[19]为NEPTUNE[20]海洋学项目、Pan-STARRS[21]天文学项目等科学研究提供高效的科学工作流平台。由于WindowsHPCServer并不支持应用流程的管理和定制,使用WWF工作流工具并不能有效地支持大规模的并行应用,也没有实现和WindowsHPCServer的有效的集成。Swift工作流系统提供了可以实现和各种资源管理器和任务调度器协作的Provider接口,目前已经实现了的接口包括PBS[22]、Condor[23]、GlobusToolkit4[24]等,它们也使Swift工作流系统能够便捷获取网格等计算资源;文献[25]研究了工作流系统与云计算的集成方案,详细描述了将工作流管理作为云服务的集成架构,并以Swift工作流系统与OpenNebula云平台集成为例,验证并分析集成方案的功能。这些研究主要集中在工作流系统与网格计算、云计算和分布式计算等计算资源的协作。工作流系统与高性能计算集群资源相结合方面的研究并不多见。文献[26]等实现了基于MATLAB的SSH工具包,用户可以使用简单的MATLAB命令访问远程高性能计算资源,运行MATLAB应用并获取运行结果。文献[27]探讨了使用Windows高性能计算资源进行并行化地理空间分析,WindowsHPCServer运行InverseDistanceWeighting(IDW)应用程序,IDW程序的运行的整体流程包括域分解、空间内插、输出采集及数据可视化。这些研究主要是基于科学应用访问Windows高性能计算资源,并没有深入探讨应用程序运行过程中的计算并行化与流程管理。2集成方案本文首先介绍科学工作流系统与高性能计算集成的统一架构,并分析架构的重要组成子系统和组件,然后以Swift科学工作流管理系统与Windows高性能计算平台集成方案为例,通过对Swift与WindowsHPC的架构进行分析,映射到参考架构中,从而进一步验证集成参考架构的可行性。2.1集成参考架构科学工作流管理系统与高性能计算集成的参考架构可以作为一种规范化工作流系统与高性能计算集成的研究和开发工作的尝试,如图1所示,参考架构包含5个逻辑层和11个主要的功能子系统,自上而下涵盖从工作流定义、任务调度到最终大规模应用的整体过程。第一层是开发层,其中包括工作流的开发环境、提交软件工具等服务及相应的操作环境;第二层称作工作流管理层,这一层包括4个子系统:工作流引擎、任务管理、工作流监控和资源配置管理;第三层称作集成中间件层,由任务提交组件和计算资源供应服务组成;第四层为高性能计算管理层,由作业执行组件、资源调度系统和集群管理系统组成;最后一层为应用层,简要描述基于集成平台的科学应用。参考架构允许科学工作流与高性能计算研究人员根据不同的工作流系统和高性能计算平台特性,定制可用的集成平台以满足大规模数据处理和科学计算等需求。2.2Swift架构Swift系统作为科学工作流和并行计算之间的桥梁,是一个面向大规模科学和工程工作流的快速、可靠的定义、执行和管理的并行化编程工具。Swift采用结构化的方法管理工作流的定义、调度和执行,它包含简单的脚本语言SwiftScript[28],SwiftScript可以用来简洁地描述基于数据集类型和迭代的复杂并行计算[29],同时还可以对不同数据格式的大规模数第3期赵勇,等:科学工作流与高性能计算集成方案459据进行动态的数据集映射。运行时系统提供一个高效的工作流引擎用来进行调度和负载均衡,它还可以与PBS和Condor等资源管理系统进行交互,完成任务执行。图2为Swift系统架构,由4个主要组件组成:工作流定义、调度、执行、资源供应。使用简单高效的脚本语言SwiftScript定义计算,SwiftScript脚本被编译成抽象的计算计划,然后被工作流引擎调度到分配的资源上执行。Swift中的资源配置非常的灵活,任务可以被调度到多种资源环境中执行,资源供应者的接口可以是本地主机、集群环境、多站点网格环境或AmazonEC2服务。图1集成参考架构图2Swift架构2.3WindowsHPCServer架构WindowsHPCServer[30]可为以超级计算机为主的HPC环境提供企业级的工具、性能和伸缩性,而且是一个完整、综合的集群环境,包含操作系统、HPC工作调度器、消息传递接口第二版(MIP2)支持、集群惯例和监视、分布式Excel计算能力、空闲Windows7系统工作站利用能力等等。WindowsHPCServer集群架构由一系列节点、组件、服务及接口组成。集群中关键组件包括HeadNode、
本文标题:科学工作流与高性能计算集成方案
链接地址:https://www.777doc.com/doc-4576088 .html