没有合适的资源?快使用搜索试试~ 我知道了~
团簇和云上的高性能计算流体动力学:ADAPT经验伊马德·基萨米引用此版本:伊马德·基萨米集群和云上的高性能计算流体动力学:ADAPT经验。新兴技术[cs.ET]。巴黎索邦大学,2017年。英语NNT:2017USPCD 019。电话:01879963HAL Id:tel-01879963https://theses.hal.science/tel-018799632018年9月24日提交HAL是一个多学科的开放获取档案馆,用于存放和传播科学研究文件,无论它们是否已这些文件可能来自法国或国外的教学和研究机构,或来自公共或私人研究中心。L’archive ouverte pluridisciplinaireTHAPOSE为了得到巴黎第十三大学博士斯佩恰利泰InformatiquePrésentée et soutenue par伊马德·基萨米Sujet de la thèse:团簇和云上的高性能计算流体动力学ADAPT经验巴黎北部信息系统(LIPN)分析、几何学和应用系统搜索:28 février 2017陪审团组成如下:Florian DEV UYSTEscherseur,CMLA ENS Cachan -特别报特别报告员Laurence H ALPERNEscherseur,LAGA Institut Galilee Paris 13Frederic M AGOULESEscherseur,Ecole Centrale de ParisFayssal BENKHALDOUNEscherseur,LAGA - IUTV Paris 13,co-encadrantMarian V AJTERZICEscherseur,Universität Salzburg,Autriche,特别报特别报告员Raphael C OUTURIEREscherseur,FEMTO-ST,Université de Franche-Comté Roberto W OLFERC ALVOEscherseur,LIPN Paris 13Christophe CÉRINMesseur,LIPN - IUTV Paris13,Directeur de thèse2简历在这方面,我们提出了我们在计算流体力学(CFD)高级性能领域对集群和云结构的研究。 我们的建议是,为了解决CFD问题,我们将其命名为ADAPT,这是一个与MPI相关的经典解决方案,也是一个代表ADAPT的版本,它代表了云计算平台上的一个目标任务。作为第一个贡献,我们提出了一个扩散-对流耦合方程的平行化MPI辅助下的2D和3D线性系统。Uneparallélisation à deux niveaux est utilisée dans notre implé- mentation pour exploiter au mieux les capacités desmachines multi-coeurs.我们利用METIS的辅助分解域获得了计算费用的均衡分布,这是利用求解器并行MUMPS(求解器多额叶大规模解)对我们的线性系统进行的一个有针对性的改进。Notre deuxième contribution illustre comment imaginer la plateforme ADAPT,telle que représentée dans la pre-我的贡献就像服务一样。 我们将ADAPT框架(实际上是一个框架部分)转换为DAG(直接无环图),以实现科 学 的 工 作 流 程 。 Ensuite , nous introduisons de nouvelles politiques à l'intérieur du moteur de workflowRedisDG,afin de planifier les tâches du DAG,de manière opportuniste.我们在RedisDG中介绍了利用动态机器进行工作的可能性(elles peuvent quitter or entrer dans le système de calcul comme elles veulent)以及一种多标准的方法来确定“最佳”机器的选择。Des exériences sont menées sur le workflow ADAPT pour illustratorMots clés:calcul haute performance,MPI,partitionnement du maillage,résolution de systèmes linéairescreux,cloud computing4摘要本文介绍了我们在流体力学高性能计算领域的研究工作适用于集群和云架构。在一般情况下,我们建议开发一个高效的求解器,称为ADAPT,在一个经典的视图,对应于MPI的发展,并在一个视图,使我们能够表示ADAPT作为一个图形的任务,旨在订购云计算平台上的CFD解决问题。作为第一个贡献,我们提出了一个并行化的扩散对流方程耦合到一个线性系统,在2D和3D中使用MPI。在我们的实现中使用了两级并行化,以利用当前的分布式多核机器。通过使用METIS的域的分解,以及使用并行求解器MUMPS(大规模并行多波前求解器)的我们非常大的线性系统的相关分辨率,获得了计算负载的平衡分布。我们的第二个贡献说明了如何想象ADAPT框架,如第一个贡献所描述的,a服务。我们将框架(实际上是框架的一部分)转换为DAG(直接无环图),以便将其视为科学工作流程。然后,我们在RedisDG工作流引擎内部引入新的策略,以便以机会主义的方式调度DAG的任务。我们在RedisDG中引入了与动态工作者一起工作的可能性(他们可以根据需要离开或进入计算系统)和多标准方法来决定选择执行任务的“最佳”工作者。在ADAPT工作流上进行实验,以验证调度和调度决策到新的RedisDG中的精细程度。关键词:高性能计算,MPI,网格划分,稀疏直接求解器,云计算67内容1介绍91.1一般背景。. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .91.2问题。. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .91.3目标。. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101.4概述。. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11我 科学计算132数值模拟152.1背景。. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .152.2介绍高性能计算(HPC)。. . . . . . . . . . . . . . . . . . . . . . . . .162.2.1导言。. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .162.2.2弗林的分类法。. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .172.2.3并行性的限制和成本。. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .182.2.4超级计算机的体系结构. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .182.2.5并行计算库。. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .232.3图划分。. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252.3.1模型化。. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252.3.2 METIS.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .262.4并行稀疏线性代数方法。. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .262.4.1稀疏线性代数方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .262.4.2并行求解器MUMPS。. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .302.5 CFD求解器。. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .332.5.1背景。. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .332.5.2解决流体力学问题。. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .342.5.3经典离散化方法。. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .353电脑系统及服务373.1云计算 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .373.1.1导论.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .373.1.2其他云部署模式。. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .393.1.3如何使用?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .403.1.4云服务的例子。. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .403.1.5云使能技术。. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .433.1.6Web 2.0。 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .433.1.7网格计算。. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .433.2服务计算的. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .453.2.1导论.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .453.2.2面向服务的体系结构(SOA)。. . . . . . . . . . . . . . . . . . . . . . . . . . . . .4683.2.3微服务3.3工作流程系统483.3.1导言. 483.3.2RedisDG工作流引擎483.3.3波动性和结果认证问题3.3.4工作流调度的相关工作52二、捐款. 574ADAPT 594.1标签:ADAPT 594.1.1控制方程604.1.2数值近似614.2并行2D拖缆代码694.2.1基准设定694.2.2与纯MPI编程模型共享内存694.2.3并行2D结果73........................................................................................................................................4.3并行3D拖缆代码794.3.1基准设定794.3.2并行3D结果795HPC即服务855.1一、导言. 855.2有关云中HPC的讨论865.3问题定义885.3.1词汇表885.3.2ADAPT工作流程885.3.3对问题的直觉895.3.4对全球性问题的5.4安排ADAPT工作流程915.4.1近期工作915.4.2ADAPT工作流程的属性925.4.3节点可用性的潜在影响925.4.4将两项战略结合起来6结论1036.1结果总结1036.2未来的工作104附录107以109A.1重建中使用的关系109A.2耗散项的关系109参考书目1119第1介绍1.1一般背景计算流体力学(CFD)是流体力学的一个分支,它使用数值方法来研究和提出涉及流体流动的问题的解决方案这种发展援助工具成为必不可少的,在所有工业领域的流体动力学,如航空航天,等离子体物理,多孔介质,气象学等取决于所选择的近似值,这是一个折衷的结果之间的要求,在物理表示的准确性和计算资源,方程的数值解允许访问所有瞬时变量在计算域的每个点。如今,CFD已经达到了足够的成熟度,除了测试活动之外,还可以与工业设计过程相结合,因为它限制了开发周期中所需的试验次数, 整个计算域上的所有物理量。它阐述了减少设计时间和研究性能解决方案的要求,在这种情况下,目标是多个,往往相互冲突。随着计算资源能力的不断增强,现在有可能达到详细描述物理现象的分辨率水平。1.2问题此外,科学家们一直想更好地了解他们的环境。他们进行实验来解释和预测宇宙。随着计算机的出现,一个大大加速了这一过程的新学科出现了:计算机科学。除此之外,计算机还能够模拟实验,以前所未有的精度验证新概念或设计。事实上,使用数值模拟,我们可以避免昂贵和复杂的安装,时间或危险的经验。此外,模拟可以用于各种领域,如空气动力学,气象学,生物学,金融,等离子体物理学等。因此,数值模拟是一个非常活跃的研究领域:测试必须既准确又快速。数值计算通常作为实验和理论分析的补充,但也可能是出于经济或技术原因而适用于某个问题的唯一方法。越来越多地使用数值计算的一个原因是稳健和有效的数值方法的发展,另一个原因是高性能计算机的价格/性能。特别是,核聚变反应堆是我们未来作为新能源的一个有前途的研究领域,需要非常精确的模拟。在这里,我们来看看当中性气体暴露在高强度电场中时发生的不平衡电离过程(放电)。它们可以是各种形式,取决于电场和介质的压力和体积。在这篇论文中,我们将主要集中在电离波产生的流光。 流光放电用于多种应用,例如消除污染物。对流注扩散过程进行了数值模拟,10基于各种复杂程度的数学模型,包括流体动力学近似,导致方程系统,其包括带电粒子的对流-扩散-反应方程与电场的泊松方程耦合。鉴于这一现象的复杂性,必须进行逼真的模拟,以找到模型、数值方法和计算机资源的最佳组合。这种物理现象的数值模拟,然后丰富了三个学科的研究人员之间的强有力的互动:物理,数学和计算机科学。本研究是基于计算机科学资源的开发,具体来说,旨在开发并行化技术,以有效地利用资源的计算和存储。1.3目的一般来说,这个问题不能在整个域上连续地解决,而是必须从多个角度进行研究。在这种情况下,并行计算介入,因为它可以执行计算,如果它们通过单个执行线程(一个进程,一个线程)在单个机器上的单个处理器上运行,则会花费太长时间。例如,大多数类型的计算必须在固定的短时间内进行。例如,对于等离子体现象就是这种情况。 每天和第二天都应进行模拟。此外,计算结果的可靠性还取决于计算参数的精细程度,包括用于离散空间和时间的网格:增加计算能力,解决涉及更多参数的问题,因此给出更准确的结果。类似地,许多科学应用需要数千小时的计算:期望由顺序程序计算出的结果是不合理的。在我们的例子中,当我们开始研究这个研究课题时,代码花了两天时间来捕获Streamer 2D,3D则需要一个月,因此有必要过渡到并行化。并行计算有望有效地解决这些计算问题。然而,并行编程不同于传统的串行编程,并且比传统的串行编程复杂得多,并且构建高效的并行程序不是一件容易的事情。此外,并行计算的快速发展意味着算法要相应地改变,并且并行计算平台的多样性也要求并行算法和实现要考虑在底层硬件平台上编写。近年来,一些研究人员对包括对流扩散反应方程和泊松方程的流体动力学程序的并行化感兴趣一般的想法是使用所有可用的资源来运行计算,无论是使用共享内存还是分布式内存。 在分布式内存体系结构的情况下,必须使用诸如METIS或SCOTCH之类的工具将整个域切割成子域,以便在每个处理器上独立于任何其他处理器进行计算。 从泊松方程推导出的线性系统的分辨率为:使用并行直接方法(MUMPS,PaStiX,SuperLU,.. . )或并行迭代方法(Pestc,GMRES,. . . )的。此外,诸如云计算的新型基于互联网的计算的出现严重地影响了高性能计算领域。大公司,其中包括谷歌,微软,亚马逊。. .提供“计算即服务”。亚马逊早在10年前就开始了AWS(亚马逊网络服务)项目。Amazon Web Service的关键组件之一EC2(弹性云计算)是由南非卫星开发办公室的一个小团队开发的。Chris Pinkham曾在21世纪初担任亚马逊全球基础设施的工程师,他注意到“我们在基础设施工程组织中感到震惊,我们确实需要通过向开发团队提供服务来分散基础设施”。他还指出,“这是一个很大的激励因素。“Pinkham思考了这个问题,并于2003年开始尝试建立“全球基础设施服务”。 他的希望是,他可以开发一种服务,不仅可以处理亚马逊的基础设施,而且还可以帮助开发人员。自2006年正式推出以来,EC2的价值不断增长,已成为亚马逊云服务生态系统的基石。在云计算中,计算是一种服务。基础设施应该根据需求扩大和缩小规模,自2006年以来,已经提出并采用了许多其他设施。我们将在稍后的文档中发现其中的一些。同样的胃口出现了谷歌,现在提出了许多云服务,其中包括谷歌云11Pub/Sub1是一个完全托管的实时消息服务,允许您在独立的应用程序之间发送和接收消息。您可以利用CloudPub/Sub的灵活性,将托管在Google Cloud Platform或Internet上其他位置的系统和组件解耦。正如Google团队喜欢说的那样:“通过构建与Google使用的相同技术,Cloud Pub/Sub旨在以低延迟提供“在我们的工作中,我们还使用发布/订阅范例,以协调工作流引擎的组件, 以机会主义的方式执行科学工作流程。本论文的工作流调度领域的贡献和重新审视高性能计算的云计算。在某些方面,我们改进了现有的WaaS(工作流即服务)工具。为了做到这一点,我们需要调整分解科学计算密集型问题的方式。一个实际的用例展示了我们在云中执行HPC的方法的潜力。世界变化真的很快,因为我们现在面临着非常简单的方式来预订资源(CPU,内存,磁盘),甚至来自不同的云提供商。例如,RosettaHub平台2允许您在Amazon,Microsoft上预订资源。. .云RosettaHUB使每个人都可以同时使用Python,R,Julia,SQL,Scala,Spark,Mathematica,ParaView等以及任何计算代码或从一个单一的门户网站中暴露基于Web和高度可用的云管理控制台,工作台和笔记本电脑。1.4纲要这份手稿组织如下我们在第2章介绍了高性能计算。我们详细介绍了不同的体系结构,已开发的高效计算。我们首先简要介绍了各种架构和优化算法的结果。然后,我们提出了一个国家的艺术图分割。最后,我们解释了不同的方法可利用新的异构并行机。这些方法已经开发,以解决稀疏线性系统的描述,我们特别关注稀疏直接代数并行求解器,这是本论文的目标。然后,我们将在第3章中介绍云计算、服务计算和工作流系统的最新发展在第四章中,我们介绍了ADAPT框架中的拖缆问题,并解释了用于求解微分方程的数值格式。然后,我们减少了我们的ADAPT平台的并行计算时间成本。利用的并行架构是:集群(一组网络连接的PC)。此外,我们还使用MPI对2D和3D流代码进行了并行化,其中最关键的是内存管理和通信。这项工作的目的是适应这种编程模型的代码,优化它,并提供在更短的时间内进行测试的可能性。在第五章中,我们讨论了根据RedisDG工作流引擎调度ADAPT工作流的情况。更确切地说,我们安排了不同大小的特定工作流程的工作流程,解决ADAPT框架的一个CFD问题。最后,我们将在第6章中总结并提出这些方法的一些改进之处1https://cloud.google.com/pubsub/2https://www.rosettahub.com/welcome1213第一科学计算15第2数值模拟内容2.1语境152.2高性能计算(HPC)简介162.2.1一、导言. 162.2.2Flynn的分类172.2.3并行的局限性和成本182.2.4超级计算机的架构182.2.5并行计算库232.3图分区252.3.1模型化252.3.2METIS 262.4并行稀疏线性代数方法262.4.1稀疏线性代数方法262.4.2并行求解器MUMPS 302.5CFD求解器332.5.1背景332.5.2解决流体力学问题342.5.3经典离散化方法352.1上下文数值模拟一般是模拟物理现象在空间域中的时间演化。这些模拟是基于时间和空间的离散化。在时间和空间离散化中,通常通过几何网格单元(三角形、正方形、四面体等)使用迭代方案。具体地,在我们的情况下,该数值模拟由与泊松方程耦合的演化方程(参见方程(2.1))表示。这些模拟越来越复杂,需要并行执行。域应该分布在多个计算单元中。网格被分割成与所使用的处理器一样多的部分。时间离散化可以从先前的状态计算系统在给定时间的状态。更准确地说,一个元素的状态是根据其先前的状态和一些其他元素的状态计算出来的,这取决于物理模型;通常,它是网格中的相邻元素,除此之外,在每次迭代时计算线性系统以求解泊松方程。当其中一个处理器需要其他处理器拥有的数据时,这种分布会引起处理器之间的通信。这些通信是同步的,因此所有处理器必须以相同的速度推进模拟16一个好的数据分布或分区应该提供均衡的部分,并尽量减少处理器之间的数据依赖关系,尽量减少计算和通信的时间。该问题的模型根据等式2.1。拉吉乌我的天+F(V,u)=S,P =b。(2.1)鉴于→−F( V,u)= div( u.V)− u,S= 0,并且拉吉乌→−V=10000→−上一个系统给出:+ div(u. V)=u阿勒特(二、二)P = b.我们的目标是并行化的线性求解器发出的泊松方程和使用区域分解和网格自适应的演化方程在“同一时间”。据我们所知,这是第一次考虑这样的挑战。将这两个步骤分开可能会增加延迟,因为我们需要同步它们并调整最慢处理器上的执行时间。同时考虑这两个步骤提供了更好地重叠不同计算步骤的可能性。一些作者已经解决了线性求解器或演化方程的并行化,通常没有网格自适应。在文献[1]中,作者考虑了非自适应非结构网格上线性电磁方程组的并行化问题。他们的时间积分方法导致一个线性系统的决议,这需要一个大的存储容量为一个单一的处理器。在[2]中,作者介绍了一个用C++编写的并行代码,该代码使用MPI原语和LIS(线性迭代求解器)库进行了扩展。在2.40 GHz Intel Xeon的集群上进行了几个数值实验,具有12 GB RAM,与千兆以太网交换机连接。作者指出,他们的代码的顺序版本的经典运行可能很容易超过一个月的计算。并行版本的改进是通过代码的三个部分的并行化来进行的:薛定谔矩阵的对角化,牛顿-拉夫森迭代中的一个步骤作者在[3]中只关注与自伴椭圆型偏微分方程离散化相关的线性求解器的并行化,并使用多重网格方法。还应该提到的是,[4]中的作者已经成功地研究了与本文提出的问题类似的问题。相关的线性系统已使用迭代GMRES和CG求解器求解[5]。一个区别是在我们的工作中,我们考虑使用MUMPS求解器的LU分解的基础上的直接方法。此外,直接求解方法通常涉及在有限元应用中使用前沿算法。 问世多波前解算器的出现大大提高了稀疏系统直接解算器的效率。 他们充分使用高性能软件层,例如调用第3级基本线性代数子程序(BLAS)[6,7]库。从而大大减少了对存储器的需求,大大提高了计算速度。多波前解算器已成功地用于有限体积法、有限元法和电力系统仿真。2.2高性能计算(HPC)简介2.2.1介绍数值模拟对性能的要求越来越高。实际上,应用领域需要实现越来越多的计算,同时考虑增加的数据大小,假设长的执行时间。作为一个例子,我们可以提到天气预报和等离子体物理的模拟程序,其需求正在增长。HPC(高性能计算)是一门旨在解决这一问题的学科。它涉及在超级计算机上进行繁重计算的大型程序的适应和执行。这些机器通常包括一个大的17多个处理器或计算单元,允许它们并行执行许多任务。 它们还提供了一个大的内存空间来处理数据大小的大问题。输入/输出系统也被设计为提供宽带宽。在超级计算机上运行程序需要特定于应用的IT(信息技术)开发。必须首先优化原始顺序程序。然后,并行化的实现涉及识别和构建可以同时运行的计算任务。这被称为独立性:其结果不相互依赖的任务可以同时运行。现在提供了一些定义以及HPC中常见的术语任务和并行任务任务是由计算机执行的工作的一部分。这通常是在处理器上执行的一组指令。并行任务是可以在多个处理器上运行的任务。进程和线程进程是一个正在执行的程序,它由操作系统创建。它包含一个或多个线程。一个线程由一个或多个任务组成。在多线程编程中,每个线程都有自己的内存和父线程的共享全局内存。加速度加速是指顺序程序和并行程序的运行时间之比。理想的加速是使用的处理器数量(参见可伸缩性)。大规模并行此术语用于指包含大量处理器的硬件架构。这个数字显然在不断增加,在写这篇手稿的时候,它大约是一千万。通信通信是并行任务之间的数据交换。这些通信通常通过网络进行。同步同步是任务中的一个断点,当其他任务到达同一级别时,该断点被释放。其目的通常是根据通信协调任务。粒度粒度是计算时间和通信时间的比值。如果在通信之间处理大量计算,则该颗粒被称为粗颗粒,而如果在通信之间存在少量计算,则该颗粒被称为细颗粒。扩展性并行系统的可伸缩性是其提供与处理器数量成比例的加速的能力。这取决于硬件(总线速度等),算法的并行化能力和编程能力。理想的可扩展性是1。在下文中,将介绍Flynn的分类法。然后,给出了并行化可能带来的加速的量化工具,接着介绍了两种并行化:共享内存机上的并行化和分布式内存机上的并行化。2.2.2弗林的分类法与顺序机的原型相反,在顺序机中,指令是按照单个数据上的时钟周期的节奏一个接一个地执行的,并行机可以遵循不同的执行模型。这些模型是由Michael J. Flynn提出的。[8]的一项建议。它们基于数据和指令流的组织类型。• SISD模型(单指令流,单数据流):一个顺序计算机,利用没有并行,冯诺依曼架构。• MISD模型(多指令流,单数据流):相同的数据由多个处理器并行处理。• SIMD模型(单指令流,多数据流):处理器表,其中每个处理器对自己的本地数据执行相同的指令。18n图2.1弗林分类• MIMD(Multiple Instruction Stream,Multiple Data Stream):多个处理器处理不同的数据,每个处理器有一个独立的存储器。最常用的并行架构。2.2.3并行性的局限性和成本理想情况下,并行程序的加速应该是所使用的计算核心的数量(最佳可伸缩性)。不幸的是,现实并不那么简单,因为总是有连续的部分,可以代表一个显着的成本。 Amdahl在1967年提出了以下模型来描述可以为机器提供的加速度 n处理器(2.3):Acc=1rs+rp(2.3)其中rs+rp= 1,rs和rp分别是顺序程序和并行程序的比例.该模型限制了可以进行并行化的加速实际上,当n接近无穷大时,极限为2.2。古斯塔夫森在1988年[10]提出重新评估阿姆达尔定律,因为他认为它过于悲观。正如Amdahl所看到的,并行化不仅仅是为了减少给定问题的计算时间,而且特别是为了处理更重要的问题。在这种情况下,顺序比例或多或少保持不变。实际上,在我们的问题中,序列部分通常包含网格的提取。 后者的复杂度为N,其中N为 例如节点的数量。要解决的物理问题,同时可以是N log N的复杂性,如果它是有限元,或N2的情况下,例如,积分方法顺序操作的成本不断上升,与那些可并行化的相比是最小的因此,古斯塔夫森定义了线性加速度定律(2.4):加速度=rs+n.rp(2.4)事实可能介于Amdahl和Gustafson定律之间,Ni提出了一个更好的定律[11],该定律还考虑了处理器之间的通信时间,该定律将不会在本手稿中呈现2.2.4超级计算机体系结构2.2.4.1多级并行从技术上讲,并行化的引入是基于目标技术的。在当前的超级计算机上有两种特别流行的类别:• 共享内存架构,19图2.2:Amdahl定律,不同比例的顺序程序的CPU数量的加速。这里的加速度是有限的。图2.3:Gustafson定律,加速取决于处理器数量,用于不同比例的顺序程序。加速度遵循线性规律。• 分布式内存架构。可以混合这些技术以形成混合并行机,其在工业中越来越常见
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 黑板风格计算机毕业答辩PPT模板下载
- CodeSandbox实现ListView快速创建指南
- Node.js脚本实现WXR文件到Postgres数据库帖子导入
- 清新简约创意三角毕业论文答辩PPT模板
- DISCORD-JS-CRUD:提升 Discord 机器人开发体验
- Node.js v4.3.2版本Linux ARM64平台运行时环境发布
- SQLight:C++11编写的轻量级MySQL客户端
- 计算机专业毕业论文答辩PPT模板
- Wireshark网络抓包工具的使用与数据包解析
- Wild Match Map: JavaScript中实现通配符映射与事件绑定
- 毕业答辩利器:蝶恋花毕业设计PPT模板
- Node.js深度解析:高性能Web服务器与实时应用构建
- 掌握深度图技术:游戏开发中的绚丽应用案例
- Dart语言的HTTP扩展包功能详解
- MoonMaker: 投资组合加固神器,助力$GME投资者登月
- 计算机毕业设计答辩PPT模板下载
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功