CN111597038A - 一种超级计算机i/o转发结点轮询映射方法 - Google Patents

一种超级计算机i/o转发结点轮询映射方法 Download PDF

Info

Publication number
CN111597038A
CN111597038A CN202010351241.6A CN202010351241A CN111597038A CN 111597038 A CN111597038 A CN 111597038A CN 202010351241 A CN202010351241 A CN 202010351241A CN 111597038 A CN111597038 A CN 111597038A
Authority
CN
China
Prior art keywords
nodes
forwarding
node
ion
calculation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010351241.6A
Other languages
English (en)
Other versions
CN111597038B (zh
Inventor
喻杰
王昉
杨文祥
赵丹
王岳青
邓亮
陈呈
杨志供
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Computational Aerodynamics Institute of China Aerodynamics Research and Development Center
Original Assignee
Computational Aerodynamics Institute of China Aerodynamics Research and Development Center
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Computational Aerodynamics Institute of China Aerodynamics Research and Development Center filed Critical Computational Aerodynamics Institute of China Aerodynamics Research and Development Center
Publication of CN111597038A publication Critical patent/CN111597038A/zh
Application granted granted Critical
Publication of CN111597038B publication Critical patent/CN111597038B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Abstract

本发明公开了一种超级计算机I/O转发结点轮询映射方法,包括如下步骤:计算超级计算机中I/O转发结点的数量,记为n;对n个I/O转发结点分别进行编号为ION0,ION1,…,IONn‑1;计算超级计算机中计算结点的数量,记为m;计算结点的编号分别为CN0,CN1,…,CNm‑1;采用轮询映射计算方法将计算结点CNi,映射至I/O转发结点IONi%n;在每个计算结点上,修改I/O转发结点配置,即对于计算结点CNi,将I/O转发结点配置从传统分区映射方法的
Figure DDA0002471899780000011
修改为轮询映射方法的IONi%n;所有从计算结点CNi发出的I/O请求,都由I/O转发结点IONi%n处理;修改完所有计算结点上的I/O转发结点配置后,重启计算结点上的I/O转发服务,使配置生效,该方法解决了I/O转发结点间的负载不均衡问题。

Description

一种超级计算机I/O转发结点轮询映射方法
技术领域
本发明涉及超级计算机存储体系结构领域,尤其涉及一种超级计算机I/O转发结点轮询映射方法。
背景技术
现代超级计算机普遍采用了包含I/O转发层的存储体系结构,计算结点将数据读写的I/O请求发送给I/O转发结点,由I/O转发结点替它们从存储系统中访问数据。目前计算结点与I/O转发结点的映射方法是,系统中所有计算结点被划分成与I/O转发结点数量相同的分区,相邻(如同一机柜内)的计算结点处于同一个分区,每个I/O转发结点负责服务一个分区内的计算结点。该映射方法易于管理维护,但是在实际生产应用环境中却面临着严重的负载不均衡问题。
在超级计算机上,由于作业调度系统优先为大规模并行作业分配相邻的计算结点运行,所以导致它们运行的结点在超级计算机上分布得较为集中。而作业的I/O行为具有突发性,即在作业的运行过程中,仅在少部分时间会产生I/O流量高峰,所以系统中任一时刻仅有少数作业在产生大量的I/O流量。以上两个原因综合导致系统中任一时刻的I/O流量绝大部分仅来自于少数相邻的计算结点。因此在传统映射方法下,系统的I/O流量仅会被极少数I/O转发结点处理,造成负载不均衡,形成性能瓶颈,影响超级计算机的整体运行效率。
针对传统映射方法的缺点,本发明的目的是通过改变计算结点与I/O转发结点间的映射方法,调动更多的I/O转发结点分摊系统的I/O压力,均衡I/O转发结点间的负载,提升系统的I/O性能。
超级计算机提供强大的并行计算能力,高性能计算作业可利用超级计算机数量庞大的计算结点,协同完成复杂的科学计算问题。现代超级计算机的主要构成为:(1)计算结点:提供并行计算能力,数量一般为上万个;(2)存储结点:提供海量数据的存储与访问能力,数量一般为上百个;(3)I/O转发结点:将来自于计算结点的I/O请求转发给存储结点,替计算结点从存储结点中访问数据,数量一般为数百个;(4)高速互连网络:连接计算结点、存储结点、I/O转发结点等。用户提交作业至超级计算机后,作业在计算结点上进行计算,运行过程中作业按需读取输入数据,或写出输出数据,读写数据又称为I/O(Input&Output)。I/O转发结点是连接计算结点与存储结点的桥梁,作业在计算结点上读取数据或写出数据的I/O请求,都必须由相对应的I/O转发结点处理,由其在存储结点上访问数据。当前国内外所有具有I/O转发架构的超级计算机,均采用了一种计算结点与I/O转发结点间的分区映射方法。即,系统中所有计算结点被划分成与I/O转发结点数量相同的分区,相邻(如同一机柜内)的计算结点处于同一个分区,每个I/O转发结点负责服务一个分区内计算结点的I/O请求。
作业的I/O行为均具有突发特性,即,在作业的运行过程中,仅在少数时间段会有大量的I/O流量高峰出现。例如,作业开始运行时读取数据、运行过程中写出检查点数据、运行结束前写出结果数据时,均展现出了I/O突发性。超级计算机上虽然同时运行着很多不同的作业,由于以上原因,在任一时刻,仅有极少数作业在进行着大量的I/O活动。超级计算机中的作业调度系统负责按照优先级从队列中选择一个排队作业,并为其分配合适的计算结点供其运行。作业调度系统优先为作业分配相邻的计算结点,以减小计算结点间在高速互连网络上的通信开销,提升作业运行效率。因此,在实际生产环境下,超级计算机上的计算结点资源被众多的作业分割成了一个个逻辑上的结点池,结点池中的计算结点大多彼此相邻。由于作业I/O行为具有突发性,在任一时刻,系统中仅有极少数结点池在进行着大量的I/O活动。在传统的分区映射方法下,每个I/O转发结点服务一部分相邻的计算结点,因此在任一时刻,系统中仅有极少数的I/O结点在处理极少数结点池发出的大量I/O请求,而其它I/O转发结点却处于空闲状态,造成了I/O转发结点间的负载不均衡。由于I/O转发结点是作业访问数据的桥梁,负载不均会急剧降低系统整体的I/O转发能力,造成的严重I/O性能瓶颈,影响超级计算机的整体运行效率,此问题亟待解决。
目前尚无解决超级计算机I/O转发结点负载均衡问题的专利。与本发明最接近的文献是文献[1]和文献[2]。文献[1]提出了一个新的结点分配策略来解决I/O转发结点负载不均的问题。首先,监控所有作业的运行时性能数据;然后,根据作业的历史监控数据分析判断该作业否是会产生大量的I/O流量、是否会产生大量的通信流量、其运行的所有结点I/O流量分布是否均匀;最后,根据分析结果,将符合条件的新作业的计算结点分布得更散,使其能利用更多的I/O转发结点来处理数据请求。文献[2]提出的方法与文献[1]类似,区别之处在于,对于符合条件的新作业,不改变作业运行结点的位置,而是在作业运行之前动态地改变计算结点与I/O转发结点的映射,将更多的I/O转发结点映射至作业运行的计算结点,使少部分I/O流量大的作业能够利用更多I/O转发结点来处理数据请求。
发明内容
为了克服上述传统的分区映射方法的缺点,本发明的目的在于提出一种超级计算机上计算结点与I/O转发结点间的轮询映射方法,解决I/O转发结点间的负载不均衡问题。
本发明提出的轮询映射方法,具体技术方案如图1所示:
计算超级计算机中I/O转发结点的数量,记为n;对n个I/O转发结点分别进行编号为ION0,ION1,...,IONn-1
计算超级计算机中计算结点的数量,记为m;计算结点的编号分别为CN0,CN1,...,CNm-1
采用轮询映射计算方法将计算结点CNi,映射至I/O转发结点IONi%n
在每个计算结点上,修改I/O转发结点配置。对于计算结点CNi,将I/O转发结点配置从传统分区映射方法的
Figure BDA0002471899760000031
修改为轮询映射方法的IONi%n;其中,
Figure BDA0002471899760000032
为计算结点编号i除以计算结点数量m与I/O转发结点数量n的比值,所得的结果再向下取整;i%n为计算结点编号i除以I/O转发结点数量n所得的余数;所有从计算结点CNi发出的I/O请求,都由I/O转发结点IONi%n处理;
修改完所有计算结点上的I/O转发结点配置后,重启计算结点上的I/O转发服务,使配置生效。
所述I/O转发结点可以单独服务计算结点或分组服务计算结点。
有益效果
1、当前技术通过动态改变作业所分配的计算结点位置,或动态改变作业所分配计算结点与I/O转发结点的映射,来解决I/O转发结点负载不均衡问题。本发明通过静态地改变计算结点与I/O转发结点间的映射方法,一劳永逸地调动了更多I/O转发结点参与系统中的I/O转发,方法简单有效。
2、本发明无需监控作业的历史运行行为,无需分析作业的运行特性,无需作业的先验知识,可直接部署于超级计算机上,自动提升所有可被优化的作业的运行效率。
3、本发明中,计算结点与I/O转发结点的轮询映射方法,可以替换为相似的非连续映射方法,如其它使I/O转发结点所服务的计算结点彼此不相邻的映射方法。
附图说明
图1是本发明流程图;
图2是现有技术的结构示意图;
图3是本发明结构示意图;
图4是本发明与现有技术对比效果图。
具体实施方法
下面结合附图对本发明作出详细说明:
本发明提出的轮询映射方法,具体技术方案如图1所示:
第一步骤,计算超级计算机中I/O转发结点的数量,记为n。I/O转发结点的编号分别为ION0,ION1,...,IONn-1。注意,一个I/O转发结点可以单独服务计算结点,也可以多个I/O转发结点分组服务计算结点。若分组,则多个I/O转发结点轮询服务计算结点的I/O请求,但该组I/O转发结点在逻辑上可认为是一个I/O转发结点,在计算I/O转发结点数量时只计一次。
第二步骤,计算超级计算机中计算结点的数量,记为m。计算结点的编号分别为CN0,CN1,...,CNm-1
第三步骤,在传统分区映射方法下,计算结点CNi已经映射至I/O转发结点
Figure BDA0002471899760000041
其中
Figure BDA0002471899760000042
为计算结点编号i除以计算结点数量m与I/O转发结点数量n的比值,所得的结果再向下取整。如图2中的示例所示,根据分区映射方法,计算结点0映射至I/O转发结点
Figure BDA0002471899760000043
计算结点1映射至I/O转发结点
Figure BDA0002471899760000044
以此类推,计算结点5映射至I/O转发结点
Figure BDA0002471899760000045
本发明提出的轮询映射方法下,对于计算结点CNi,将其映射至I/O转发结点IONi%n,其中i%n为计算结点编号i除以I/O转发结点数量n所得的余数。如图3中的示例所示,根据本发明提出的轮询映射方法,计算结点0映射至I/O转发结点0%2=0,计算结点1映射至I/O转发结点1%2=1,以此类推,计算结点5映射至I/O转发结点5%2=1。传统分区映射方法与轮询映射方法的对比如图4所示。在传统分区映射方法下,相邻的计算结点映射至相同的I/O转发结点,在本发明提出的轮询映射方法下,相邻的计算结点映射至不同的I/O转发结点。由于作业I/O行为具有突发性,在任一时刻,超级计算机中只有一小部分相邻的计算结点会产生大量的I/O请求,在传统分区映射方法下,该大量I/O请求只被一小部分I/O转发结点转发,在轮询映射方法下,该大量I/O请求可被更多的I/O转发结点转发,因此本发明可有效均衡I/O转发结点上的负载。
第四步骤,实施本发明提出的轮询映射方法时,技术人员需在每个计算结点上,修改它们的I/O转发结点配置。对于计算结点CNi,将I/O转发结点配置从传统分区映射方法的
Figure BDA0002471899760000046
修改为本发明提出的轮询映射方法的IONi%n。所有从计算结点CNi发出的I/O请求,都由I/O转发结点IONi%n处理。
第五步骤,技术人员修改完所有计算结点上的I/O转发结点配置后,重启计算结点上的I/O转发服务,使配置生效。

Claims (2)

1.一种超级计算机I/O转发结点轮询映射方法,其特征在于,包括如下步骤:
计算超级计算机中I/O转发结点的数量,记为n;对n个I/O转发结点分别进行编号为ION0,ION1,...,IONn-1
计算超级计算机中计算结点的数量,记为m;计算结点的编号分别为CN0,CN1,...,CNm-1
采用轮询映射计算方法将计算结点CNi,映射至I/O转发结点IONi%n
在每个计算结点上,修改I/O转发结点配置;对于计算结点CNi,将I/O转发结点配置从传统分区映射方法的
Figure FDA0002471899750000011
修改为轮询映射方法的IONi%n;其中,
Figure FDA0002471899750000012
为计算结点编号i除以计算结点数量m与I/O转发结点数量n的比值,所得的结果再向下取整;i%n为计算结点编号i除以I/O转发结点数量n所得的余数;
所有从计算结点CNi发出的I/O请求,都由I/O转发结点IONi%n处理;
修改完所有计算结点上的I/O转发结点配置后,重启计算结点上的I/O转发服务,使配置生效。
2.根据权利要求1所述的一种超级计算机I/O转发结点轮询映射方法,其特征在于:所述I/O转发结点可以单独服务计算结点或分组服务计算结点。
CN202010351241.6A 2020-01-08 2020-04-28 一种超级计算机i/o转发结点轮询映射方法 Active CN111597038B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010017069 2020-01-08
CN2020100170690 2020-01-08

Publications (2)

Publication Number Publication Date
CN111597038A true CN111597038A (zh) 2020-08-28
CN111597038B CN111597038B (zh) 2023-07-14

Family

ID=72190824

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010351241.6A Active CN111597038B (zh) 2020-01-08 2020-04-28 一种超级计算机i/o转发结点轮询映射方法

Country Status (1)

Country Link
CN (1) CN111597038B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113381940A (zh) * 2021-04-25 2021-09-10 中国空气动力研究与发展中心计算空气动力研究所 一种二维胖树网络拓扑的设计方法及装置
CN113391919A (zh) * 2021-04-25 2021-09-14 中国空气动力研究与发展中心计算空气动力研究所 一种基于二维胖树网络的计算结点分配方法及装置
CN116996359A (zh) * 2023-09-26 2023-11-03 中国空气动力研究与发展中心计算空气动力研究所 一种超级计算机的网络拓扑构建方法及网络拓扑结构

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060087965A1 (en) * 2004-10-27 2006-04-27 Shand Ian Michael C Method and apparatus for forwarding data in a data communications network
CN101977162A (zh) * 2010-12-03 2011-02-16 电子科技大学 一种高速网络的负载均衡方法
CN102508720A (zh) * 2011-11-29 2012-06-20 中能电力科技开发有限公司 一种提高前处理模块和后处理模块效率的方法及系统
CN103019671A (zh) * 2012-10-08 2013-04-03 中国科学院对地观测与数字地球科学中心 面向数据密集型遥感图像处理的泛型编程的框架编程方法
CN103354651A (zh) * 2013-07-15 2013-10-16 中国计量学院 一种多源多中继协作网络中轮询分组调度方法
CN105279029A (zh) * 2015-11-24 2016-01-27 无锡江南计算技术研究所 一种基于作业计算资源的局部存储动态分配方法
CN107040407A (zh) * 2017-03-15 2017-08-11 成都中讯创新科技股份有限公司 一种高性能计算集群动态节点作业方法
US20190042432A1 (en) * 2018-05-30 2019-02-07 Intel Corporation Reducing cache line collisions
US20190391940A1 (en) * 2019-06-28 2019-12-26 Intel Corporation Technologies for interrupt disassociated queuing for multi-queue i/o devices

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060087965A1 (en) * 2004-10-27 2006-04-27 Shand Ian Michael C Method and apparatus for forwarding data in a data communications network
CN101977162A (zh) * 2010-12-03 2011-02-16 电子科技大学 一种高速网络的负载均衡方法
CN102508720A (zh) * 2011-11-29 2012-06-20 中能电力科技开发有限公司 一种提高前处理模块和后处理模块效率的方法及系统
CN103019671A (zh) * 2012-10-08 2013-04-03 中国科学院对地观测与数字地球科学中心 面向数据密集型遥感图像处理的泛型编程的框架编程方法
CN103354651A (zh) * 2013-07-15 2013-10-16 中国计量学院 一种多源多中继协作网络中轮询分组调度方法
CN105279029A (zh) * 2015-11-24 2016-01-27 无锡江南计算技术研究所 一种基于作业计算资源的局部存储动态分配方法
CN107040407A (zh) * 2017-03-15 2017-08-11 成都中讯创新科技股份有限公司 一种高性能计算集群动态节点作业方法
US20190042432A1 (en) * 2018-05-30 2019-02-07 Intel Corporation Reducing cache line collisions
US20190391940A1 (en) * 2019-06-28 2019-12-26 Intel Corporation Technologies for interrupt disassociated queuing for multi-queue i/o devices

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
喻杰: "面向超级计算机的海量近线存储系统关键技术研究", 《中国知网》 *
喻杰: "面向超级计算机的海量近线存储系统关键技术研究", 《中国知网》, 31 May 2018 (2018-05-31), pages 9 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113381940A (zh) * 2021-04-25 2021-09-10 中国空气动力研究与发展中心计算空气动力研究所 一种二维胖树网络拓扑的设计方法及装置
CN113391919A (zh) * 2021-04-25 2021-09-14 中国空气动力研究与发展中心计算空气动力研究所 一种基于二维胖树网络的计算结点分配方法及装置
CN113381940B (zh) * 2021-04-25 2022-12-27 中国空气动力研究与发展中心计算空气动力研究所 一种二维胖树网络拓扑的设计方法及装置
CN116996359A (zh) * 2023-09-26 2023-11-03 中国空气动力研究与发展中心计算空气动力研究所 一种超级计算机的网络拓扑构建方法及网络拓扑结构
CN116996359B (zh) * 2023-09-26 2023-12-12 中国空气动力研究与发展中心计算空气动力研究所 一种超级计算机的网络拓扑构建方法及装置

Also Published As

Publication number Publication date
CN111597038B (zh) 2023-07-14

Similar Documents

Publication Publication Date Title
US9400694B2 (en) Prioritizing instances of programs for execution based on input data availability
Zhang et al. Improving distributed workload performance by sharing both CPU and memory resources
US7028302B2 (en) System and method for automatically tuning a multiprocessor computer system
CN111597038A (zh) 一种超级计算机i/o转发结点轮询映射方法
EP2930618B1 (en) System and method for load balancing compute resources
US8325761B2 (en) System and method for establishing sufficient virtual channel performance in a parallel computing network
US10394606B2 (en) Dynamic weight accumulation for fair allocation of resources in a scheduler hierarchy
CN110308984B (zh) 一种用于处理地理分布式数据的跨集群计算系统
US11556391B2 (en) CPU utilization for service level I/O scheduling
US8356098B2 (en) Dynamic management of workloads in clusters
Li et al. An energy-aware scheduling algorithm for big data applications in Spark
CN115202836A (zh) 一种提高gpu利用效率的算力池化系统
CN112559122A (zh) 一种基于电力专用安防设备的虚拟化实例管控方法及系统
Yu et al. Spatially bursty I/O on supercomputers: Causes, impacts and solutions
WO2011078162A1 (ja) スケジューリング装置、スケジューリング方法及びプログラム
Zhang et al. Gang scheduling extensions for I/O intensive workloads
Ashalatha et al. Dynamic load balancing methods for resource optimization in cloud computing environment
Sharma et al. A review on data locality in hadoop MapReduce
CN114924848A (zh) Io调度方法、装置及设备
Yang et al. Yun: a high-performance container management service based on openstack
CN111338782A (zh) 面向共享式突发数据缓存的基于竞争感知的节点分配方法
JP2012038275A (ja) 取引計算シミュレーションシステム、方法及びプログラム
JP6374059B2 (ja) コンピュータ資源配分決定方法、コンピュータ資源配分決定方法プログラムおよび制御用コンピュータ
Yu et al. Analysis of CPU pinning and storage configuration in 100 Gbps network data transfer
Lu et al. Time-Aware Data Partition Optimization and Heterogeneous Task Scheduling Strategies in Spark Clusters

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant