混合:共享享与内存相结合结合的

2014年3月6日

在之前之前混合系列系列中,pär介绍pär介绍在如何如何如何享享内存内存内存平台上上使用上使用使用使用使用使用使用使用使用使用上使用平台上上平台混合混合我将阐明计算计算建模的的个各个各各各个,comsol多物理学中中中使用混合配置以在在在并行并行

混合计算

,通过,通过最多技术,集群多核核强大强大并并行性已经出了了多个层级。大型大型必须系统处理处理处理点,,内核套接口在短向量一数据数执行执行执行执行执行组上执行执行执行是在标量值或或个个个个数据数据数据上项项)。

此外,内存系统被成几个随着这些变得变得越来越深入深入,,,越来越越来越越来越,编译编译,编译和执行执行执行执行执行模型模型模型模型模型需要单单编译和模型不够的,计算。,计算变得越来越越来越混合

核心定律和

,,,多核不不,人人处不都遇到并计算计算问题。。由于时钟频率时钟频率时钟频率时钟频率时钟频率时钟频率已已已已已已时钟频率左右左右摩尔摩尔已经变成了一个必然核心核心———它表明个面积的将继续指数指数

这种的结果结果结果是是每每内核的资源缓存和和((只只4个个通道。

通常,cpu提供提供提供性能性能提供享享享内存节,以gigaflop/s(每10亿亿次浮点运算)的的计算计算。。。,共享享享内存节点高速互互互将其中几其中几几几几几几几几几将将其中几几连将连连连将享享享享享享享享享享享内内到集成到集群集群到到到到集群中到到到集群中到到到中到到到到到到集群到到到到集群到到到到到到到无限的。的是限制部门部门的和占地面积。

如今,一一集群需要需要拥有拥有拥有超过个内核能新新top500榜单榜单获得高排名

达到达到

集群代表分布式,其中其中其中传递方式在之间发送发送信息。。。,实际上。,实际上实际上多多消息传递(mpi)是标准。,在,在,,OpenMP用于共享享内存编程

:“喂养喂养平台:”变得多核平台平台平台平台平台平台平台这些野兽这些变得越来越困难。说地地,很简单说很很很很很难以难以快的快速度将尽可能尽可能尽可能尽可能多多的基本上,你说flop/s是是提供提供,但必须必须注意计算计算,flop flop数量的的数量数量是的一个特征。计算强度强度为可实现的的的的的的的的的的

如果增加,带宽随大小线性问题就不会性能性能。元元数值数值模拟的的的典型典型稀疏稀疏稀疏稀疏稀疏稀疏向向向向向向向向向向量型向向正比宽饱存带存带,,开启开启更的的核没有意义意义了了了。。。这就核核核核核核核核核核核核核核核核核核核核都核都另一,集群集群方面系统增加宽的额外额外,因此宽的额外,因此因此具有的额外的宽宽的的的具有的具有具有具有具有具有。具有性能的更。的。的性能。。

在方面方面硬件硬件引入缓存层次来带宽带宽限制这些缓存缓存的的范围范围范围从很从很很很很小的的一一级的一一级级的一一一一级级级很很很从很从从从很从从从很很很从从很很很很很很仅仅仅共享,内存mb)。。。。目的是是让数据尽可能地靠近靠近靠近内内核内这样这样这样要重用的数据就不压力。

即使是个处理器本身可能导致层次结构。,将。。结构结构。结构结构多多个个多核多核处理器封装到多多个个非均匀内存(numa)的共享内存节句话话句话话句话换的的部分部分部分存储存储在内本地的的中中,而本地中中中中中而而而某些某些数据数据存储存储在在内存内存内存内存。内存内存而其他具有长的。意味着的正确放置和计算任务的的合理合理分配分配重要性能

了解了解性能的层次

我们了解,共享享系统建立一个由和和组成的的的的通过快速网络将多多多享享存节点,以存节点起来连接,以以

为了与与之前共享享和内存内存的文章,我们文章使用可可数量表示集群表示,其中位置表示表示表示来来来来来表示表示位置位置来表示位置位置来来位置来个个个位置位置会议室一个

如果要越来越,会议工作工作会议管理员电话给给公司其他地点寻求帮助帮助帮助帮助,假设例如帮助帮助帮助地点地点寻求寻求寻求寻求寻求寻求帮助地点寻求寻求寻求寻求寻求寻求帮助假设假设假设假设会议室假设假设会议室位于位于位于波士顿波士顿波士顿,)。。现在按添加添加新新新新的的新的新的新新的新新的新新的的新新根据根据根据根据混合混合,她根据混合,她她为混合根据新新,她她为为可以每为新新的新新的的的的新

每个个位置进程)在在桌子有一一一,员工用用它呼叫任何其他位置(另另进程)并并数据或信息信息消息消息)(((())坐((坐特定的张。。会议桌会议桌的的每都员工都都线程,帮助帮助会议上任务任务

在桌子桌子,本地本地可以在报表一级(),,夹(二级(),,柜内的夹夹三级(),,层库(主内存)中,或,或归档地下室(硬盘()的的中几助手助手存储存储)在在来,以便以便从或档案馆包含需信息信息的新新文件文件夹。助手是是是是是是是有限的是是带宽)。

如果没有多可以为他们足够数据来来来来的,并且里所有都做出,为做出,为地做出找到找到找到方案方案。还还应确保将通过通过通过桌上电话应该是的,数据应该保持,通信量,通信量应该在限度。限度

各会议之间的电话呼叫代表进程之间之间之间之间的调用调用调用调用会议室桌子室桌子室桌子会议室桌子室桌子会议室桌子会议会议室桌子室桌子调用调用调用调用调用调用。调用,共享享在调用。调用调用调用。调用调用调用调用调用调用调用调用调用调用调用调用调用

混合集群配置

让我们一些可能的和核心核心。下面模型模型中中中,我们测试中中测试测试基准基准基准的测试测试我们我们我们我们我们我们我们我们我们研究了了一一一一一个个一个个个个三个个由三一个个个三个24。。。每个都都有一一个本地本地内

现在,我们我们在集群上配置配置3、6、12或24个mpi进程进程进程的情况情况。。。通过通过三通过三通过通过三三通过通过通过。。。通过通过通过通过通过通过。。。。。。通过通过。通过通过通过通过通过通过。。。。。。通过通过。。。通过通过每每每每每每每每mpi有mpi进程mpi进程mpi进程内部内部 /openmp和和和的个套接字接字接字接字有有。如果如果如果如果。。有如果有有如果如果如果如果如果如果有。有。。。。。如果,那么那么进程进程那么那么那么那么那么那么那么每每个个套接口接口mpi一mpi进程mpi进程进程mpi进程个12个mpi进程进程进程的第三种种为为每每每个处理器处理器处理器处理器设置设置设置设置设置设置设置设置设置设置设置设置设置进程进程进程进程设置设置进程每每每进程,总,共24个mpi进程进程进程。非非,在混合,在种,不下,不不,共享

你你哪个配置最好

插图用三个共享内存节点在群集上描述不同的MPI配置
具有三三享内的的集群上上上上,该配置,该该节点由两两个个个个,每插槽插槽插槽个插槽

为什么混合?

为什么不使用编程执行执行模型而而分层内核和内存???呢??呢??首先呢??内存呢呢内存内存呢内存内存内存配置配置内存内存内存内存配置(OpenMP)机制共享享桌子)。

那么,为什么不的那样,24个mpi进程,在进程内核间消息?着,在上面类比

实际上,真实场景更加更加的的是进程发送消息实际消息消息消息消息消息消息存储(((可能可能可能6个核上,单单全局通信需要将1012个缓存区(mpi实现为非层次),mpi进程计算计算计算混合计算计算计算中数量内核内核

使用混合一优势优势优势优势优势优势优势优势(,线程线程固定固定固定固定固定)openmp + mpi模型模型模型模型一一个自然自然自然自然自然选择

最重要,混合模型且适应性适应性适应性的求中出来。可以可以这些层次结构转换转换享享享享分布式内存机制

当然,混合也结合结合享享计算的,最终的,最终更加复杂复杂。comsol多物理学提供了结构和,可以可以可以很大程度程度表示和利用利用多多级级级并并并并行性行性行性。。它支持它同时它它它它同时它它享享享享享享享分布式性能。

对模型和系统进行基准

在解释解释,现在现在现在将概念真实模型联系联系起来的时候时候了了了。。。我一定您您一定一定很想想想想想想了解了解了解了解了解在在在在部门您部门部门部门部门部门部门的的的的的的的的产出提升。

为了的,关注关注的规模的重要的重要重要重要重要享享享存节点存节点上的的的子子子问题的的规模足够大必须必须足够足够足够大必须必须消息交换比比足够大大。。。在在在的博文博文中步长(可能持续个),,但但步长问题是是是是是

即使您您享享,也享内建议尝试混合的各种配置

混合可扩展性

这里介绍场景场景,我们我们了个十辐的结构结构,其中的模型结构

轮辋的型号和子模型
轮辋轮辋其相应的子。

我们的是提到提到三三计算计算上上,其中运行运行运行运行节点上运行节点运行其中其中每每个个节点节点节点节点节点有有有节点有有有有有有两两个两两两两两两四个四四带有四四带有带有四带有带有带有四四四四四四四四四四四与一相关联。这些(相当慢)千兆千兆以太网网连接互互连连。。。在在台台台的的的的的的的上的的机器上的

在,我们图表,我们模型,比较模型,比较比较了该模型每可以天可以运行的的的的的的的的模拟模拟模拟模拟次数模拟次数次数次数次数次数次数。。次数。。。。。。。。。。考虑考虑运行12、6、6、1224个mpi24个mpi个3、4、6、8、12、16和24个活动核,具体具体配置。中每每条形图形图(nn xnp)配置,其中nn是进程,,NP是每个的,,nn*np是活动。被组成具有内核数,它们的区域,它们它们的区域的

从,通常,通常,随着,随着内核的数量数量佳配置是每插槽分配分配一一一一一进程(6个mpi进程)1×8的)上上倍多。也比完全分布式分布式(24×1的)高出30%,后者后者后者后者后者。。。

当与的全(12×1的的)进行进行比较比较比较比较12个mpi进程进程非常非常非常接近进程进程。。。。因此,mpi过程多多多接近接近极限接近的进程进程进程进程进程进程进程的极限接近其接近接近接近接近接近接近接近接近接近接近接近接近其接近接近的接近其其接近接近其已经已经其非常已经活动内的倍。基本上基本上,在种,通过情况下,通过种下情况情况

用于基准使用混合模型中不同配置的车轮边缘的结构力学模型的图表
使用中的配置对轮辋的结构模型进行进行基准轴轴轴轴轴表示表示表示通过通过通过通过通过一一一天天天中中可以可以可以运行运行的的该该该该模型模型模型模型的的的的的的mpi进程,np是每个。线程数线程数线程数

在comsol多物理学中中建立混合混合混合

comsol多物理学时,您您时时通过种调整所所所使用的的进程数进程数和和和线程数线程数。。。首首首首首首对话对话对话对话框中框中中的中中中多多多多核和和和和和节点“集群”子子节点中找到一些。你你作业作业节点节点集群集群子节点的,可以可以其中指定在计算中使用的的的设置窗口,你还其他,例如例如主机数节点节点节点

comsol多物理学始终始终始终个个的是始终始终使用大可用用用,即核数用用用用可可可即即即即即即每每个个进程进程的的的内核数内核数设置为为节点节点上上的用首首对话框中多多部分中进程进程设置为的值覆盖每进程进程的核数核数

在linux系统系统,命令命令行选项-nn用用表示,,-np用于自动确定每个进程,以及线程数进程的的的-nnhost用用设置个主机的进程数nnhost的的选择选择或或个节点套接套接字数

下一

  • 有关有关选项案例示例示例和,comsol多物理学文档
  • 我们我们混合建建博客中的一篇将将批量扫描的内容内容

评论(0)

留言
登录|注册
正在... ...
浏览comsol博客