网站大量收购独家精品文档,联系QQ:2885784924

jarena面向数值模拟混合并行应用的numa感知多线程内存管理器.pdf

jarena面向数值模拟混合并行应用的numa感知多线程内存管理器.pdf

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
jarena面向数值模拟混合并行应用的numa感知多线程内存管理器

技术报告 IAPCM-SCNS-HPC201511 JArena:面向数值模拟混合并行应用的 NUMA 感知多线程内存管理器 杨章 · 张爱清 2015/10/7 北京应用物理与计算数学研究所 中物院高性能数值模拟软件中心 技术报告 声明 本技术报告引用方式: “杨章,张爱清,JArena :面向数值模拟混合并行应用的NUMA 感知多线程内存管理器,中 物院高性能数值模拟软件中心技术报告,No. IAPCM-SCNS-HPC2015 11,2015 年10 月.” 在正式发表之前,本报告内容可能修改。 技术报告 JArena :面向数值模拟混合并行应用的NUMA感知多线程内存管理器1 2 杨章 张爱清 北京应用物理与计算数学研究所 摘要 当前高性能计算机结点普遍采用多CPU 多核体系结构,其访存性能多呈现非均匀特征 (NUMA) 。这为并行应用,特别是数值模拟“MPI 进程+OpenMP 线程”混合并行应用,获得 良好的访存性能带来了挑战。当前并行应用普遍采用“First Touch ”等系统级内存管理策略将 内存绑定到本地处理器( 内存绑定) ,减少远端访存从而提升访存性能。但是,这些策略存在 着内存碎片多和多线程性能低等不足。特别的,在复杂应用中,这些策略还存在误判内存绑 定位置、页面自发迁移等缺陷,严重降低了应用访存性能。为解决上述问题,本文提出了一 种NUMA 感知的多线程内存管理方法,并研发了高效的NUMA 感知内存管理器JArena,实 现了适应数值模拟需求的高分配速度、低内存碎片和避免内存迁移的“内存绑定”功能。测 试表明,该方法可有效提升实际应用在NUMA 多核体系结构上的计算速度。256 线程时,提 升JEMS-FDTD 程序数值计算速度4.3 倍。 关键词 内存绑定;NUMA ;多核;内存管理;多线程 1. 引言 随着并行计算机系统规模的不断增长,“MPI 进程+OpenMP 线程”混合并行计算模式(简 称“混合并行”)被越来越多的数值模拟应用程序和编程框架采用(如 [19, 16, 8, 4] 等) 。混合并 行计算时,为每一计算结点开启一个MPI 进程,进程间通过消息传递进行通信;在计算结点 内部开启若干OpenMP 线程,线程之间通过共享内存进行数据交换。通过混合并行,应用程 序得以充分挖掘算法并行度,降低并行开销,从而有效适应千万亿次乃至亿亿次计算机数万 核至数十万核并行。 当前并行计算机结点普遍采用多块多核CPU,组成 NUMA(Non-Uniform Memory Access , 非均匀访存)多核体系结构。如图1 所示,NUMA 多核体系结构上,处理核心既可以通过直连 的内存控制器访问本地内存模块(简称“本地内存”),也可以通过NUMA 互联网络访问其他处 理器连接的内存模块(简称“远端内存”) 。远端访存开销一般高于本地访存,在部分系统上甚至 具有数倍的性能差别。NUMA 多核体系结构的上述非均匀访存特征,给数值模拟混合并行应 1 本文工作得到NSFC 重大研究计划重点项目“十亿亿次科学计算中共性算法的高效能实现研究”(No和科技部863 项目“高效能计算应用支撑软件框架体系研制”(No.2012AA01A309) 的资助。 2 通信作者,yang_zhang@ 技术报告 用获取高访存性能带来巨大的挑战:由于共享进程的内存空间,线程无法区分远端内存和本 地内存,从而常常出现远端访存,降低访存性能。

文档评论(0)

ailuojue + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档