CN113867961A - 一种异构gpu集群深度学习混合负载调度优化方法 - Google Patents

一种异构gpu集群深度学习混合负载调度优化方法 Download PDF

Info

Publication number
CN113867961A
CN113867961A CN202111159606.6A CN202111159606A CN113867961A CN 113867961 A CN113867961 A CN 113867961A CN 202111159606 A CN202111159606 A CN 202111159606A CN 113867961 A CN113867961 A CN 113867961A
Authority
CN
China
Prior art keywords
cluster
heterogeneous
heterogeneous gpu
deep learning
applications
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
CN202111159606.6A
Other languages
English (en)
Other versions
CN113867961B (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.)
China University of Mining and Technology Beijing CUMTB
Original Assignee
China University of Mining and Technology Beijing CUMTB
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 China University of Mining and Technology Beijing CUMTB filed Critical China University of Mining and Technology Beijing CUMTB
Priority to CN202111159606.6A priority Critical patent/CN113867961B/zh
Publication of CN113867961A publication Critical patent/CN113867961A/zh
Application granted granted Critical
Publication of CN113867961B publication Critical patent/CN113867961B/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/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • 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/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Neurology (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

一种异构GPU集群深度学习混合负载调度优化方法,包括:为异构GPU集群的多个下层计算节点静态添加节点类型标签;为分布式集群上层应用进行分类应用;分布式集群上层所服务的多个应用,通过调度模块将多个不同类型的下层计算节点平均分配至多个应用运行;计算多个不同类型的下层计算节点运行在多个应用上的所需时间;利用计算的多组所需时间,发现的异构GPU应用性能差异;并由第二价格交易法交易异构GPU应用性能差异。本发明中,在异构GPU集群种,该调度优化模型方法比传统的分布式处理框架在处理深度学习混合负载表现更优异,尤其是在集群环境复杂、异构化严重时更能充分利用集群资源、显著提高系统的执行效率。

Description

一种异构GPU集群深度学习混合负载调度优化方法
技术领域:
本发明涉及GPU集群技术领域,特别涉及一种异构GPU集群深度学习混合负载调度优化方法。
背景技术:
随着信息技术的发展及集群规模的逐渐扩大,分布式集群上层应用逐渐复杂化,如常见的网络搜索、语音助理等,这些应用都是通过深度学习任务训练而获得的。分布式集群下层节点是由大量为深度学习训练任务提供计算资源的 GPU服务器构成,然而随着GPU服务器的不断优化及更新换代,下层节点也逐渐表现出异构化特性。所以如何在异构GPU集群中为深度学习混合负载分配合理、高效的计算资源成为一个重要的问题。然而传统的分布式处理框架在多用户之间主要采取GPU集群静态分区的方法,来实现多用户间资源分配及隔离。这种分配方法并没有考虑节点间异构特性,不能利用异构计算节点的性能优势,在异构环境下对于深度学习混合负载的处理有较差的性能表现。
发明内容:
鉴于此,有必要设计一种异构GPU集群深度学习混合负载调度优化方法。
一种异构GPU集群深度学习混合负载调度优化方法,其特征在于,包括:为异构GPU集群的多个下层计算节点静态添加节点类型标签;
为分布式集群上层应用进行分类应用;
分布式集群上层所服务的多个所述应用,通过调度模块将多个不同类型的下层计算节点平均分配至多个所述应用处理;
计算所述多个不同类型的下层计算节点运行在多个所述应用上的所需时间;
利用计算的多组所需时间,发现的异构GPU应用性能差异;
并由第二价格交易法交易所述异构GPU应用性能差异。
优选的,所述异构GPU集群由三个下层计算节点组成。
优选的,所述三个下层计算节点分别包括:多个K80 GPU、多个P40 GPU 以及多个V100 GPU。
优选的,为分布式集群上层应用进行分类应用包括:应用VAE的任务、应用DCGAN的任务及应用ResNet-50的任务。
优选的,所述三个下层计算节点在所述DCGAN的性能加速高于在所述VAE 和所述ResNet-50的性能加速。
优选的,所述第二价格交易法包括:选取所述VAE和所述DCGAN性能加速后的下层计算节点进行交换,且交换价格由所述ResNet-50决定。
本发明中,在异构GPU集群中,该调度优化模型方法比传统的分布式处理框架在处理深度学习混合负载表现更优异,尤其是在集群环境复杂、异构化严重时更能充分利用集群资源、显著提高系统的执行效率。
附图说明:
附图1是本申请实施例提供的异构GPU集群深度学习混合负载调度优化方法的步骤示意图。
具体实施方式:
参考图1,一种优化异构GPU集群深度学习混合负载执行效率的方案包括:为异构GPU集群的多个下层计算节点静态添加节点类型标签;GPU集群由三个或三个以上下层计算节点组成。
上述中的下层计算节点为三个时,分别包括:多个K80 GPU、多个P40 GPU 以及多个V100 GPU。
随后为分布式集群上层应用进行分类应用;为分布式集群上层应用进行分类应用包括:应用VAE的任务、应用DCGAN的任务及应用ResNet-50的任务。
分布式集群上层所服务的多个应用,通过调度模块将多个不同类型的下层计算节点平均分配至多个应用运行。
应理解为,多个K80 GPU、多个P40 GPU以及多个V100 GPU的个数随机而定,且个数均为3的倍数,从而可将多个K80 GPU平均分配到VAE、DCGAN 和ResNet-50运行;多个P40GPU平均分配到VAE、DCGAN和ResNet-50运行;多个V100 GPU平均分配到VAE、DCGAN和ResNet-50运行。
计算多个不同类型的下层计算节点运行在多个应用上的所需时间;应用在 VAE、DCGAN和ResNet-50运行的K80 GPU、P40 GPU以及V100 GPU均有性能提升,三个下层计算节点在DCGAN的性能加速高于在VAE和ResNet-50的性能加速。
利用计算的多组所需时间,发现的异构GPU应用性能差异;
并由第二价格交易法交易异构GPU应用性能差异。第二价格交易法包括:选取VAE和DCGAN性能加速后的下层计算节点进行交换,且交换价格由 ResNet-50决定。
由此可见,在异构GPU集群中,该调度优化模型比传统的分布式处理框架在处理深度学习混合负载表现更优异,尤其是在集群环境复杂、异构化严重时更能充分利用集群资源、显著提高系统的执行效率。
为了更详细的展示其工作机制,同步展示一个便于描述的小规模真实异构分布式系统混合负载分配案例。
继续参考图1,该一种优化异构GPU集群深度学习混合负载执行效率的方案包括以下步骤:
步骤一:为异构GPU集群的下层计算节点静态添加节点类型标签;示例性的,现有一GPU集群由3种计算节点组成,分别为K80 GPU添加标签C1,P40 GPU添加标签C2,V100 GPU添加标签C3
步骤二:为分布式集群上层应用进行分类;分别为应用VAE的任务、应用 DCGAN的任务及应用ResNet-50的任务。
步骤三:分布式集群上层所服务的3种应用(应用VAE、应用DCGAN及应用ResNet-50)即为系统所服务的3个用户。
分布式系统中的调度模块为了保证公平性,首先将集群中下层异构计算节点平均分配给3个用户;示例性的,异构GPU集群下层计算节点是由18个K80 GPU,18个P40 GPU,及6个V100 GPU组成,那么上层所服务3个用户每个用户平均分配分别获得6个K80 GPU,6个P40GPU,及2个V100 GPU。均分给三个用户
步骤四:经过实验数据分析发现,步骤二所描述3种应用在异构GPU集群 3类下层计算节点上面运行所需时间不同,具体如表1所示:
表1性能对比表
应用\GPU K80(ms) P40(ms) V100(ms)
VAE 11.5 13.46 14.38
DCGAN 183.4 801.46 1177.43
ResNet-50 134 424.78 688.76
从表1中可以看出3种应用在P40 GPU上相对于K80 GPU均有性能提升,在V100 GPU上相对于P40 GPU均有性能提升,但是不同的应用会有不同的性能加速;例如DCGAN在V100GPU对比K80 GPU、P40 GPU上的性能加速要远高于VAE和ResNet-50。
步骤五:利用步骤四所发现的异构GPU应用性能差异,本发明将采取异构资源交易的方法在保证用户公平性的前提下提高异构GPU集群的资源利用率。资源交易的过程需要保证双方均可获利,所以本发明采用的是第二价格交易法,即分别选取该资源具备最高利用率及最低利用率的用户进行交易,而交易的价格由第二高者决定,如果找不到双方平分收益。
例根据表1可以得出VAE在V100上相对于K80的加速是1.25,DCGAN 在V100上相对于K80的加速是6.42,ResNet-50在V100上相对于K80的加速是5.14,那么VAE用V100和DCGAN交易K80可充分利用异构资源优势,而交易的价格由第二价格ResNet-50来决定,即VAE用1个V100交换DCGAN5.14 个K80。经过交换之后VAE具备12个K80、6个P40和0.73个V100,对于该应用而言执行能力为19.93K80远高于交换前的15.52K80。经过交换后DCGAN 具备6个P40和3.17个V100,对于该应用而言执行能力为46.39K80远高于交换前的44.88K80。经过交换之后,在保证公平性的前提下通过充分利用异构资源使得系统整体性能得到提高。
本发明首先研究了3种不同深度学习应用在异构GPU节点上的计算性能差异,分布式系统调度模块在保证公平性的情况下为所有用户静态均匀的分配异构GPU节点,并允许用户采用第二价格交易法来交换自己所需资源,达到提高系统执行效率的总目标。

Claims (6)

1.一种异构GPU集群深度学习混合负载调度优化方法,其特征在于,包括:为异构GPU集群的多个下层计算节点静态添加节点类型标签;
为分布式集群上层应用进行分类应用;
分布式集群上层所服务的多个所述应用,通过调度模块将多个不同类型的下层计算节点平均分配至多个所述应用运行;
计算所述多个不同类型的下层计算节点运行在多个所述应用上的所需时间;
利用计算的多组所需时间,发现的异构GPU应用性能差异;
并由第二价格交易法交易所述异构GPU应用性能差异。
2.如权利要求1所述的异构GPU集群深度学习混合负载调度优化方法,其特征在于,所述异构GPU集群由三个下层计算节点组成。
3.如权利要求1所述的异构GPU集群深度学习混合负载调度优化方法,其特征在于,所述三个下层计算节点分别包括:多个K80 GPU、多个P40 GPU以及多个V100 GPU。
4.如权利要求3所述的异构GPU集群深度学习混合负载调度优化方法,其特征在于,为分布式集群上层应用进行分类应用包括:应用VAE的任务、应用DCGAN的任务及应用ResNet-50的任务。
5.如权利要求4所述的异构GPU集群深度学习混合负载调度优化方法,其特征在于,所述三个下层计算节点在所述DCGAN的性能加速高于在所述VAE和所述ResNet-50的性能加速。
6.如权利要求5所述的异构GPU集群深度学习混合负载调度优化方法,其特征在于,所述第二价格交易法包括:选取所述VAE和所述DCGAN性能加速后的下层计算节点进行交换,且交换价格由所述ResNet-50决定。
CN202111159606.6A 2021-09-30 2021-09-30 一种异构gpu集群深度学习混合负载调度优化方法 Active CN113867961B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111159606.6A CN113867961B (zh) 2021-09-30 2021-09-30 一种异构gpu集群深度学习混合负载调度优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111159606.6A CN113867961B (zh) 2021-09-30 2021-09-30 一种异构gpu集群深度学习混合负载调度优化方法

Publications (2)

Publication Number Publication Date
CN113867961A true CN113867961A (zh) 2021-12-31
CN113867961B CN113867961B (zh) 2022-07-22

Family

ID=79001063

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111159606.6A Active CN113867961B (zh) 2021-09-30 2021-09-30 一种异构gpu集群深度学习混合负载调度优化方法

Country Status (1)

Country Link
CN (1) CN113867961B (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050149422A1 (en) * 2004-01-06 2005-07-07 Edouard Van Lier System for optimizing the return of an investment portfolio, using a method of multiple share combinations
US20110063304A1 (en) * 2009-09-16 2011-03-17 Nvidia Corporation Co-processing synchronizing techniques on heterogeneous graphics processing units
CN102289766A (zh) * 2011-07-29 2011-12-21 东北大学 一种基于连续双向拍卖机制的网格资源调度方法
US20120149464A1 (en) * 2010-12-14 2012-06-14 Amazon Technologies, Inc. Load balancing between general purpose processors and graphics processors
US20140280457A1 (en) * 2013-03-15 2014-09-18 State Farm Mutual Automobile Insurance Company Implementation of a web-scale data fabric
US20180181518A1 (en) * 2016-12-23 2018-06-28 Ati Technologies Ulc Apparatus for connecting non-volatile memory locally to a gpu through a local switch
CN109118102A (zh) * 2018-08-24 2019-01-01 安徽大学 一种公平的基于区块链的双向组合云资源分配方法及系统
US10235295B1 (en) * 2015-08-25 2019-03-19 Integrated Device Technology, Inc. Scalable coherent apparatus and method
CN110209501A (zh) * 2019-06-03 2019-09-06 Oppo广东移动通信有限公司 图形处理器的频率调整方法、装置、终端及存储介质
CN110442451A (zh) * 2019-07-12 2019-11-12 中电海康集团有限公司 一种面向深度学习的多类型gpu集群资源管理调度方法和系统
CN112799844A (zh) * 2021-02-02 2021-05-14 中国矿业大学(北京) 一种异构环境下时空型混合负载调度优化方法
CN113064695A (zh) * 2021-03-25 2021-07-02 西安万像电子科技有限公司 显存资源的处理方法和装置

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050149422A1 (en) * 2004-01-06 2005-07-07 Edouard Van Lier System for optimizing the return of an investment portfolio, using a method of multiple share combinations
US20110063304A1 (en) * 2009-09-16 2011-03-17 Nvidia Corporation Co-processing synchronizing techniques on heterogeneous graphics processing units
US20120149464A1 (en) * 2010-12-14 2012-06-14 Amazon Technologies, Inc. Load balancing between general purpose processors and graphics processors
CN103582509A (zh) * 2010-12-14 2014-02-12 亚马逊技术股份有限公司 通用处理器和图形处理器之间的负载均衡
CN102289766A (zh) * 2011-07-29 2011-12-21 东北大学 一种基于连续双向拍卖机制的网格资源调度方法
US20140280457A1 (en) * 2013-03-15 2014-09-18 State Farm Mutual Automobile Insurance Company Implementation of a web-scale data fabric
US10235295B1 (en) * 2015-08-25 2019-03-19 Integrated Device Technology, Inc. Scalable coherent apparatus and method
US20180181518A1 (en) * 2016-12-23 2018-06-28 Ati Technologies Ulc Apparatus for connecting non-volatile memory locally to a gpu through a local switch
CN109118102A (zh) * 2018-08-24 2019-01-01 安徽大学 一种公平的基于区块链的双向组合云资源分配方法及系统
CN110209501A (zh) * 2019-06-03 2019-09-06 Oppo广东移动通信有限公司 图形处理器的频率调整方法、装置、终端及存储介质
CN110442451A (zh) * 2019-07-12 2019-11-12 中电海康集团有限公司 一种面向深度学习的多类型gpu集群资源管理调度方法和系统
CN112799844A (zh) * 2021-02-02 2021-05-14 中国矿业大学(北京) 一种异构环境下时空型混合负载调度优化方法
CN113064695A (zh) * 2021-03-25 2021-07-02 西安万像电子科技有限公司 显存资源的处理方法和装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CHENYANG ZHANG ET AL: "iMLBench: A Machine Learning Benchmark Suite for CPU-GPU Integrated Architectures", 《 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS 》 *
K CHAITANYA PAVAN TANAY ET AL: "Heterogeneous parallel implementation of single image super resolution using transformed self-exemplars on multicore & TitanX GPU", 《2016 FOURTH INTERNATIONAL CONFERENCE ON PARALLEL, DISTRIBUTED AND GRID COMPUTING (PDGC)》 *
徐少毅等: "面向5G的移动边缘计算中的激励机制", 《北京交通大学学报》 *

Also Published As

Publication number Publication date
CN113867961B (zh) 2022-07-22

Similar Documents

Publication Publication Date Title
CN104503838B (zh) 一种虚拟cpu调度方法
CN107491341B (zh) 一种基于粒子群优化的虚拟机分配方法
CN104461740B (zh) 一种跨域集群计算资源聚合和分配的方法
CN110390345B (zh) 一种基于云平台的大数据集群自适应资源调度方法
CN109951545B (zh) 自适应的容器和云桌面的融合系统及其获取云资源的方法
CN110855578B (zh) 基于相似度的云上微服务资源调度优化方法
CN107563410A (zh) 基于局部类别一致聚类和多任务学习的分类方法及设备
CN111274021B (zh) 一种gpu集群任务调度分配方法
Kannan Analysing the trade-off between efficiency and flexibility in cellular manufacturing systems
Ghoneem et al. An adaptive MapReduce scheduler for scalable heterogeneous systems
CN111083189B (zh) 用于在运行时处理数据倾斜的系统和方法
Zhou et al. Deep reinforcement learning-based algorithms selectors for the resource scheduling in hierarchical cloud computing
CN106095591A (zh) 一种基于云计算的虚拟机两级优化调度管理平台
CN111414961A (zh) 一种基于任务并行的细粒度分布式深度森林训练方法
CN113867961B (zh) 一种异构gpu集群深度学习混合负载调度优化方法
CN103268261A (zh) 一种适用于大规模高效能计算机的层次式计算资源管理方法
Patel et al. Energy efficient genetic algorithm for container consolidation in cloud system
CN111385153A (zh) 一种制造云的服务质量评价体系
CN113778627B (zh) 一种创建云资源的调度方法
CN114417577A (zh) 跨平台资源调度与优化控制方法
WO2023087418A1 (zh) 基于迁移遗传算法的电脑第二类装配线平衡优化方法
Radhika et al. Load balancing in cloud computing using support vector machine and optimized dynamic task scheduling
Sharma et al. Framework to solve load balancing problem in heterogeneous web servers
CN110347478A (zh) 一种基于强化学习的无模型数据中心资源调度算法
Wang et al. Parallel data mining optimal algorithm of virtual cluster

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