CN111240461B - 一种基于任务调度的异构计算系统低功耗方法 - Google Patents

一种基于任务调度的异构计算系统低功耗方法 Download PDF

Info

Publication number
CN111240461B
CN111240461B CN202010023258.9A CN202010023258A CN111240461B CN 111240461 B CN111240461 B CN 111240461B CN 202010023258 A CN202010023258 A CN 202010023258A CN 111240461 B CN111240461 B CN 111240461B
Authority
CN
China
Prior art keywords
task
gpu
tasks
scheduling
gpus
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.)
Active
Application number
CN202010023258.9A
Other languages
English (en)
Other versions
CN111240461A (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.)
Qiannan Normal University for Nationalities
Original Assignee
Qiannan Normal University for Nationalities
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 Qiannan Normal University for Nationalities filed Critical Qiannan Normal University for Nationalities
Priority to CN202010023258.9A priority Critical patent/CN111240461B/zh
Publication of CN111240461A publication Critical patent/CN111240461A/zh
Application granted granted Critical
Publication of CN111240461B publication Critical patent/CN111240461B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/329Power saving characterised by the action undertaken by task scheduling
    • 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • 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
    • 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)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)

Abstract

本发明公开了一种基于任务调度的异构计算系统低功耗方法。包括下述步骤:a.获取时间间隔和任务阈值数给定情况下的任务数量;b.将所述的任务数量与GPU数量进行比较,当任务数量小于或等于GPU数量时,使用先进先出策略将任务分配给各GPU;当任务数量大于GPU数量时,使用0‑1规划模型为每个GPU分配相应的任务。本发明具有降低系统平均能耗的特点。

Description

一种基于任务调度的异构计算系统低功耗方法
技术领域
本发明涉及异构环境高性能计算机技术领域,特别是一种基于任务调度的异构计算系统低功耗方法。
背景技术
近年来,得益于计算机系统的推广,世界已经进入了大数据时代。作为计算机系统中最重要的处理器,多核心GPU引起了广泛的关注。由于图形绘制的并行性,GPU与生俱来的大量并行处理单元使得其处理能力更加强大,越来越多的计算机系统集成了多个GPU处理器(可视为计算资源)以获得高性能。由于其强大的计算能力,其能够有效地处理海量数据并且能够实现数据处理的“增值”。在通用计算领域,使用GPU的计算机系统一般称为异构系统(Heterogeneous Computing System,HCS)。目前,GPU已成为异构系统中的重要资源。如何利用计算资源提高异构体系结构的性能,已成为计算机架构师、程序员和研究人员的研究热点。通过避免和减少处理资源的空闲时间,将每个程序的性能合理地分配给异构体系结构中的处理资源,以获得比单个处理资源更好的性能。
但另一方面,GPU异构系统性能提高的背后是芯片中晶体管数量的增加,也导致了系统(芯片)功耗的增加。这就使得GPU异构计算机系统面临着成本增加和环境污染的问题。环境专家估计,世界上10亿台计算机一天消耗的平均功率为30亿千瓦时,其需要消耗12亿公斤标准煤、120亿升水,并产生8亿1600万公斤灰尘、29亿9100万公斤二氧化碳和9000万千克二氧化硫的废物。此外,计算机系统不仅连接到互联网,还连接到电网,因此其运行对环境有着严重的影响(参见图1)。
为此,很多学者提出了很多方法和模型来解决异构计算系统(HCS)的能耗问题。但这些研究都普遍存在一些问题,如:
Jang,Jae Young等人在“Workload-aware optimal power allocation onsingle-chip heterogeneous processors”中提出的方法,在任务调度前需要提前运行任务以获取参数;
Liu,Qiang,Wayne Luk在“Heterogeneous systems for energy efficientscientific computing”中提出的方法,目标代码需要手动重写;
Hamano,Tomoaki,Toshio Endo,本发明方法oshi Matsuoka在“Power-awaredynamic task scheduling for heterogeneous accelerated clusters”中提出的方法,需假设处理器的功率在运行程序时是恒定的;
Choi,Hong Jun等人在“An efficient scheduling scheme using estimatedexecution time for heterogeneous computing systems”中提出的方法,能量受任务顺序的影响。
为了有效缓解上述问题,使HCS更广泛地应用于适应程序的多样性,很多学者研究了在多相同GPU环境下的节能问题。其中最具代表性的主要有交替分配调度(Alternate-Assignment scheduling,AA)、首次空闲调度(First-Free scheduling,FF)和性能历史调度(Performance-History scheduling,PH)。AA方法,所有任务都以循环方式分配给每个处理器,如图2所示。FF是一种动态调度方法,用于将任务分配给空闲GPUs,如图3所示。它优先选择第一个空闲的GPU,如果系统中的所有GPU都忙,FF将等待其中一个GPU空闲,然后分配任务给它。我们可以通过查询GPU是否被前一个任务占用来知道FF考虑了GPU的状态。这是AA和FF的区别。因此,FF在大多数情况下都表现出比AA更好的性能。和AA一样,FF也不考虑任务的顺序,因为它只检查GPU的状态。
PH通过考虑剩余的执行时间,提出了估计的执行时间调度方案。但是,此方法受任务执行顺序的影响。图4示出了PH值的流程图。PH使用公式(1)的比值来安排任务。
Ratio[i]=Execution on the GPUi/Execution on the GPUi+1 (1)
在得到比率值后,PH将每个任务分配给对应的GPU上执行。如果比率值小于预定义的上限,它将在对应的GPU上分配任务,如果不是,PH将使用FF方法。PH首先得到任务的比率值,然后根据比率值逐个分配任务。如果任务的比率值小于预设的上限值且该GPU空闲,则PH将其分配给空闲GPU。如果没有可用的空闲GPU,那么它将由FF方案分配。PH使用任务时间信息在系统中的可用GPU中选择适当的GPU来执行任务。由于利用了任务的时间信息,PH法的结果优于AA法和FF法。但是,该方法没有考虑当前任务在相应GPU中执行的剩余时间,这将导致相应GPU的过度利用和欠利用。例如,如果根据上述比率值将要执行的所有任务都分配给第一个GPU,则第一个GPU将被利用,剩余的GPU将变得未充分利用。
发明内容
本发明的目的在于,提供一种基于任务调度的异构计算系统低功耗方法。本发明具有降低系统平均能耗的特点。
本发明的技术方案:一种基于任务调度的异构计算系统低功耗方法,包括下述步骤:
a.获取时间间隔和任务阈值数给定情况下的任务数量;
b.将所述的任务数量与GPU数量进行比较,当任务数量小于或等于GPU数量时,使用先进先出策略将任务分配给各GPU;当任务数量大于GPU数量时,使用0-1规划模型为每个GPU分配相应的任务。
前述的基于任务调度的异构计算系统低功耗方法所述的步骤b中,所述的0-1规划模型如下:
其中,m表示系统中GPU的数量;
n表示系统中的待处理任务的数量;
Tij表示在第i个GPU上运行第j个任务所消耗的时间(0<=j<=n;0<=i<=m);
Q表示任务分配参数;
设i代表系统中GPU的序号;j代表要在系统上执行的任务编号,则指派第i个GPU去完成第j个任务有如下表示:
前述的基于任务调度的异构计算系统低功耗方法中,所述的Q的取值为:0.8~0.9。
有益效果
与现有技术相比,本发明先获取给定情况(时间间隔和任务阈值数)下的任务数。对于时间间隔,它控制系统灵敏度。对于任务阈值数,它会影响方法的性能。得到任务数后,将其与GPU数进行比较。如果它更大,它使用0-1规划为每个GPU获取相应的任务。否则,它将使用先进先出策略来安排任务。在得到调度结果后,相应的任务将在相应的GPU中运行;该方法基于GPU的时间和数量考虑,将任务合理地分配给相应的GPU,以使所有任务更快地执行,从而使系统更加节能,实现了异构系统处理多个任务时系统资源分配的协调。本发明通过0-1规划,最终将能耗优化问题形式化为0-1背包问题,将任务均匀地分配给GPU,有效地避免系统中一个或多个GPU被过度利用,另一个或多个GPU未被充分利用的问题。与现有方法相比,本发明平均节省8.43%的能量,说明了本发明是有效的、合理的、可行的。
本发明中任务分配参数Q的值决定任务是否可以均匀分布,即也决定了任务执行的能耗,不同的Q值有不同的调度结果。当Q值为0.1时,71.3%的任务分配不均。当Q值为1.0时,无法获得适当的解。当Q值在0.8到0.9之间时,可以相对平均地分配任务。
综上,本发明具有降低系统平均能耗的特点。
为了能够充分说明本发明的有益效果,发明人进行了如下实验:
表1显示了硬件和软件实验环境。在HCS的硬件实验环境中,包括i5-7500 CPU和4块NVIDIA GeForce GTX 1060显卡,8GB系统内存和6GB GPU内存。采用的GPU采用Pascal架构,共有10个流式多处理器(SMs),每个处理器包含128个CUDA核,共1280个CUDA核,可提供4.4tflops浮点计算能力。对于软件实验环境,它是Windows10、VS2015和CUDA9.2。
表1实验的硬件和软件环境
在实验中,选取了四个典型的CUDA基准任务,分别是矩阵乘法(MM)、向量相加(VA)、合并排序(MS)和矩阵转置(MT),对算法进行了验证实验中使用的这四个基准任务参数如表2所示。为了显示节能效果和性能比较,选择不同的输入规模和不同的任务数量进行仿真。在能耗测量方面,采用HIOKI 3334 AC/DC功率表作为系统能耗测量工具。
在进行实验之前,先确定时间间隔和任务数的阈值。对于时间间隔,它的值定义了执行方法的频率。因本实验主要关注的是性能,所以在实验中时间间隔设置为∞。因此只需验证任务数量对方法性能的影响。为此,选择不同数量的任务以获得合适的数量。图8显示了不同输入任务数下的性能。X轴是任务的数量。Y坐标是相应的时间。从图8中,我们可以知道不同数量的任务需要不同的时间。当任务数在0到20之间时,调度方法消耗的时间最少。当任务数在20到80之间时,消耗的时间相对稳定。当任务数为100时,消耗的时间有一个明显的转折点。为了获得最佳的性能,调度任务的时间应该足够短,并且调度更多的任务。为此,我们将任务数的阈值设置为80左右,以获得平衡。
在确定时间间隔和任务数之后,还应该考虑不在0-1规划中的任务。根据图6中的伪代码,另一种不用0-1规划来调度任务的方法是FIFO。由于任务数少于GPU,AA、FF和PH方法几乎都退化为FIFO方法,导致性能差异不大。为此,这些实验是不必要的。
实验中选取了典型的调度方法进行比较。上述方法分别为AA、FF和PH。为了研究任务的执行顺序对AA和FF的性能和系统能耗的影响,采用多次执行的方法得到比较的平均值。对于PH,在相同的GPUs实验环境中,任务的执行顺序也会对其产生影响。因此,平均值也用于PH的比较。本发明方法实现如下:Step1,在VS2015中实现图6和0-1规划中的伪代码。Step2,根据算法的输出结果对任务顺序进行重新编程。为了测量能量消耗,算法本身的能量消耗和运行任务的能量消耗是接近能量的两部分,分别记录为K1和K2,最后K1+K2为本发明方法的能量。
图9、11和13显示了四个调度策略在不同基准任务和输入条件下的平均能耗。调度策略中使用的输入条件考虑了典型任务数和每个任务的典型输入大小。图中横坐标和纵坐标分别表示不同的调度方法和能耗。为了更好地显示不同调度方法的能耗差异,在上述实验中给出了每个GPU的执行时间比。图10、12和14显示了不同调度策略和输入范围下每个GPU的四个基准任务的平均执行时间的比率。这些图中的横坐标表示不同的调度方法,而纵向坐标表示每个GPU的平均执行时间的比率。
在图9中,所有调度策略有80个输入任务,其中每个任务有20个(MM、VA、MS和MT)。MM、VA、MS和MT的输入范围分别为100*5120到400*10240,20M到50M,2M到4M,64M到144M。从图中可以看出,AA平均消耗的能量最多,FF和PH平均消耗的能量相同,本发明方法消耗的能量最少。这种现象背后的原因是:AA只考虑任务的数量,而没有考虑GPU的状态和任务的时间因子,导致了更多的能量消耗。对于PH,由于在相同的GPU环境下,比率相同,导致PH调度方法退化为FF调度方法,因此FF和PH的平均能耗几乎等同于PH调度方法。由于FF和PH考虑了系统中GPU的状态,因此它们在任务分配中的性能优于AA。从图中还可以看出,FF和PH的能耗小于AA的能耗。对于本发明方法,它采用优化方法,因此调度结果是非随机的,能耗的测量是一次性的。考虑到任务的时间和GPU的状态,因此本发明方法消耗的能量最少。在80个输入任务和相应的输入范围下,本发明方法平均比AA节省10.51%的能耗,比FF和PH方法平均节省5.15%的能耗。
图10示出了对应于图9的每个GPU的执行次数的比率。从图中可以看出,AA方法中GPU的最大执行时间占总执行时间的45.78%,而GPU的最小执行时间占总执行时间的11.31%。两者的差异为34.47%。FF和PH方法中GPU的最大执行时间占总执行时间的36.63%,而GPU的最小执行时间占总执行时间的16.45%。两者之间的差异为20.18%,本发明方法的最大执行时间占总执行时间的25.01%,最小执行时间占总执行时间的24.99%。两种方法的差异为0.02%。从执行时间上的差异可以看出,本发明方法在将任务分配到四个GPU上的调度更加统一。这使得整个任务消耗的时间更少,从侧面也反映了图9中本发明方法能耗小的原因。
在图11中,所有调度方法有80个输入任务,每个任务有20个(MM、VA、MS和MT)。MM、VA、MS、MT的输入范围分别为400*10240~8100*32400、20M~200M、2M~12M、64M~484M,从图中可以看出,AA在相同的任务规模和不同的输入范围下仍然消耗最多的能量,其次是FF和PH,本发明仍然消耗最少的能量的方法。这种现象的原因与图9相同,因此这里不再重复。总体而言,在80个输入任务和输入范围下,本发明平均比AA节省11.10%的能耗,比FF和PH节省5.44%的能耗。
图12展示了对应于图11的每个GPU的执行次数的比率。从图中可以看出,AA方法的最大执行时间与最小执行时间之间的差值为21.71%,FF和PH方法的差值为16.98%。本发明中GPU1和GPU4的执行时间相差0.14%。从执行时间的不同可以看出,本发明方法为四个GPU分配的任务执行时间更加均衡,使得整个统消耗的时间更少。此外,从侧面反映了图11中本发明方法消耗较少功率的原因。
在图13中,所有调度策略的输入任务的数目改变为72,其中,每个任务(MM、VA、MS和MT)18。MM、VA、MS、MT的输入范围分别为900*15360~8100*68400、20M~40M、2M~32M、64M~625M,从图中可以看出,在72个输入任务和不同的输入范围下,每种方法的能耗与图9、11相似。造成这种现象的原因与图9和图11相同,在72个输入任务和相应的输入范围下,本发明与AA相比,平均节能12.10%,与FF和PH方法相比,平均节能6.30%。
图14示出了与图13相对应的执行次数的比率。从图中可以看出,该方法的最大执行时间比为55.99%,最小执行时间比为3.82%,两个执行时间的差值为52.17%,最大执行时间比为42.80%,最小执行时间比为17.22%。两种方法的差异为25.58%。在本发明中,最大执行时间比为26.77%,最小执行时间比为19.68%。它们之间的差异为7.09%,基于这个比率,本发明比AA、FF和PH方法更均匀、更合理地分配任务,因此图13中本发明方法消耗更少功率的原因从侧面反映出来。
综上所述,本发明方法在不同任务和输入范围下均布任务,比AA和FF和PH分别节省12.24%和5.64%的能量。与现有方法相比,平均节省8.43%的能量。实验结果表明了该方法的有效性、合理性和可行性。
附图说明
图1是计算机系统的广泛使用对环境造成的负面影响示意图;
图2是AA调度方法的流程图;
图3是FF调度方法的流程图;
图4是PH调度方法的流程图;
图5是本发明的流程图;
图6是本发明方法的伪代码;
图7是式(5)与Q值之间的关系图;
图8是不同输入任务数下的性能图;
图9是四个调度策略在第一种基准任务和输入条件下的平均能耗;
图10是对应于图9的各调度策略平均执行时间的分布情况;
图11是四个调度策略在第二种基准任务和输入条件下的平均能耗;
图12是对应于图11的各调度策略平均执行时间的分布情况;
图13是四个调度策略在第三种基准任务和输入条件下的平均能耗;
图14是对应于图13的各调度策略平均执行时间的分布情况。
具体实施方式
下面结合附图和实施例对本发明作进一步的说明,但并不作为对本发明限制的依据。
实施例。一种基于任务调度的异构计算系统低功耗方法,如图5所示,包括下述步骤:
a.获取时间间隔和任务阈值数给定情况下的任务数量;其中时间间隔控制系统灵敏度,任务阈值数会影响方法的性能;
b.将所述的任务数量与GPU数量进行比较,当任务数量小于或等于GPU数量时,使用先进先出策略将任务分配给各GPU;当任务数量大于GPU数量时,使用0-1规划模型为每个GPU分配相应的任务。
前述的步骤b中,所述的0-1规划模型如下:
其中,m表示系统中GPU的数量;
n表示系统中的待处理任务的数量;
Tij表示在第i个GPU上运行第j个任务所消耗的时间(0<=j<=n;0<=i<=m);
Q表示任务分配参数;
设i代表系统中GPU的序号;j代表要在系统上执行的任务编号,则指派第i个GPU去完成第j个任务有如下表示:
前述的Q的取值为:0.8~0.9。
上述基于任务调度的异构计算系统低功耗方法具体构建过程如下:
基于图5,使用图6中描述的伪代码来实现所提出的方法。所述方法的输入是任务列表(tasks P[i])、系统中GPU的数量(NumGPU)、时间间隔阈值(GivenTh)、任务阈值的数量(GivenNum);输出是对应GPU的任务列表。
在图6中,第2行中的number(P)表示任务数。行3中的while语句等待时间结束或到达可调度的任务数。第5行和第7行是任务数大于GPU总数,并使用0-1规划来安排任务。函数01_Programming()是对0-1规划的实现。第8行和第9行是第5行和第7行的相反情况,使用FIFO策略用于调度任务。下面,为了便于描述,将本发明方法命名为最小化执行时隙调度方案((Minimizing Execution Time Slot Scheduling Scheme,METS)来解释。
假设系统中要执行的任务序列是Pi(0<=i<=n),则当前系统中可用的处理器资源是GPU(i)(0<=i<=n)。为了使系统的能量消耗最小化,需要从式(2)开始:
式(2)直接表明CPU、GPU和主板的能耗对系统能耗的贡献。此外,它可以表示为它们各自的功耗和时间的乘积。对于给定的一组调度任务和相同数量的GPU,调度任务的顺序根据调度算法的不同而不同,但并不改变整个任务执行的功耗。换句话说,要调度的任务序列的平均功耗保持不变。因此,系统能耗可以进一步表示为平均功耗和时间T的乘积。为了在执行程序序列时最小化系统能耗,必须最小化平均功耗/>和时间T。对于不同的调度方法,平均功耗/>是确定的,因此,可以最小化执行时间T以最小化系统能耗。
如上所述,在HCS中,将适当的任务分配给适当的GPU是确定系统性能的一项重要工作。因此,通过考虑GPU的时间和数量,将任务合理地分配给相应的GPU,以使所有任务更快地执行是一个最终的目标。如果将能量看作是HCS中的一种资源,那么系统中的能量管理可以看作是资源的分配。同样,能量也可以被视为系统中的一种资源。系统资源的分配通常是基于目标的需求。因此,在能够运行多个任务的异构系统环境中,可以配置不同的资源来降低系统的能耗。METS通过判断分配给GPU的程序数量,使系统更加节能,实现了异构系统处理多个任务时系统资源分配的协调。METS基于整数规划,最终形式化为0-1背包问题。将任务均匀地分配给GPU可以有效地避免系统中一个或多个GPU被过度利用,另一个或多个GPU未被充分利用的问题。
具体地,METS的构建如下:
1.符号定义
m表示系统中GPU的数量;
n表示系统中的待处理任务的数量;
Eij表示第i个GPU上运行第j个任务的能耗(0<=j<=n;0<=i<=m);
Tij表示在第i个GPU上运行第j个任务所消耗的时间(0<=j<=n;0<=i<=m);
设i代表系统中GPU的序号;j代表要在系统上执行的任务编号,则指派第i个GPU去完成第j个任务有如下表示:
2.目标函数
选择一种合适的组合,使系统运行任务的总时间最小化。根据上述变量定义,可以得到公式(3)表示的目标函数,即总能耗消耗。
3.约束条件
根据问题要求,每一个任务只有一个处理器可以运行,每个处理器除了最后一个任务外,还需要取平均任务运行时间的Q参数,从而得到如等式(4)所示的处理器约束。
式(4)中的Q值决定任务是否可以均匀分布。所以,该参数对于方法非常关键。为了得到合适的Q值,使用不同的值来观察最佳结果。为了评价结果,用式(5)来判断。它用来衡量任务分配的平衡。更大的值意味着更多的不平衡。式(5)与Q值之间的关系如图7所示。x轴是Q值,y坐标是等式(5)的值。从图中可以看出,不同的Q值有不同的调度结果。当Q值为0.1时,71.3%的任务分配不均。当Q值为1.0时,无法获得适当的解。当Q值在0.8到0.9之间时,可以相对平均地分配任务。
综合考虑到公式(4)和(5),于是目标函数最终可以形式化如公式(6)的形式:

Claims (2)

1.一种基于任务调度的异构计算系统低功耗方法,其特征在于:包括下述步骤:
a.获取时间间隔和任务阈值数给定情况下的任务数量;
b.将所述的任务数量与GPU数量进行比较,当任务数量小于或等于GPU数量时,使用先进先出策略将任务分配给各GPU;当任务数量大于GPU数量时,使用0-1规划模型为每个GPU分配相应的任务;
步骤b中,所述的0-1规划模型如下:
其中,m表示系统中GPU的数量;
n表示系统中的待处理任务的数量;
Tij表示在第i个GPU上运行第j个任务所消耗的时间(0<=j<=n;0<=i<=m);
Q表示任务分配参数;
设i代表系统中GPU的序号;j代表要在系统上执行的任务编号,则指派第i个GPU去完成第j个任务有如下表示:
2.根据权利要求1所述的基于任务调度的异构计算系统低功耗方法,其特征在于:所述的Q的取值为:0.8~0.9。
CN202010023258.9A 2020-01-09 2020-01-09 一种基于任务调度的异构计算系统低功耗方法 Active CN111240461B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010023258.9A CN111240461B (zh) 2020-01-09 2020-01-09 一种基于任务调度的异构计算系统低功耗方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010023258.9A CN111240461B (zh) 2020-01-09 2020-01-09 一种基于任务调度的异构计算系统低功耗方法

Publications (2)

Publication Number Publication Date
CN111240461A CN111240461A (zh) 2020-06-05
CN111240461B true CN111240461B (zh) 2023-07-21

Family

ID=70872542

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010023258.9A Active CN111240461B (zh) 2020-01-09 2020-01-09 一种基于任务调度的异构计算系统低功耗方法

Country Status (1)

Country Link
CN (1) CN111240461B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112737797B (zh) * 2021-01-29 2024-03-29 重庆攸亮科技股份有限公司 一种支持单播、广播的消息传输系统和传输方法
CN112905316A (zh) * 2021-02-02 2021-06-04 杭州电子科技大学 基于遗传算法的gpu集群多作业调度方法
CN113360203B (zh) * 2021-04-20 2023-07-11 广东电网有限责任公司电力调度控制中心 一种电力物联网的任务卸载方法及装置
CN114895773B (zh) * 2022-04-08 2024-02-13 中山大学 异构多核处理器的能耗优化方法、系统、装置及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108733491A (zh) * 2018-05-15 2018-11-02 华东师范大学 一种面向异构MPSoC系统的热感知及低能耗任务调度方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2507038A (en) * 2012-10-16 2014-04-23 Ibm Scheduling jobs weighted according to the memory usage using a knapsack problem.
US10037592B2 (en) * 2015-06-05 2018-07-31 Mindaptiv LLC Digital quaternion logarithm signal processing system and method for images and other data types
CN105656999B (zh) * 2015-12-25 2018-12-28 清华大学 一种移动云计算环境中能耗优化的合作任务迁移方法
US11474591B2 (en) * 2016-08-05 2022-10-18 Ati Technologies Ulc Fine-grain GPU power management and scheduling for virtual reality applications
CN109992385B (zh) * 2019-03-19 2021-05-14 四川大学 一种基于任务均衡调度的gpu内部能耗优化方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108733491A (zh) * 2018-05-15 2018-11-02 华东师范大学 一种面向异构MPSoC系统的热感知及低能耗任务调度方法

Also Published As

Publication number Publication date
CN111240461A (zh) 2020-06-05

Similar Documents

Publication Publication Date Title
CN111240461B (zh) 一种基于任务调度的异构计算系统低功耗方法
US8874943B2 (en) Energy efficient heterogeneous systems
Liu et al. Power-efficient time-sensitive mapping in heterogeneous systems
CN109992385A (zh) 一种基于任务均衡调度的gpu内部能耗优化方法
Liu et al. Energy efficient scheduling of real-time tasks on multi-core processors with voltage islands
Lindberg et al. Comparison and analysis of greedy energy-efficient scheduling algorithms for computational grids
Alonso et al. Saving energy in the LU factorization with partial pivoting on multi-core processors
Mascitti et al. An adaptive, utilization-based approach to schedule real-time tasks for ARM big. LITTLE architectures
Huang et al. Energy optimization for deadline-constrained parallel applications on multi-ecu embedded systems
CN103116526B (zh) 高性能异构并行计算机的最大功耗控制方法
Melot et al. Improving energy-efficiency of static schedules by core consolidation and switching off unused cores
CN111221640B (zh) 一种gpu-cpu协同节能方法
Kong et al. Energy-efficient scheduling for parallel real-time tasks based on level-packing
Zhong et al. swmr: A framework for accelerating mapreduce applications on sunway taihulight
Huo et al. An energy efficient task scheduling scheme for heterogeneous GPU-enhanced clusters
Huang et al. GPU Energy optimization based on task balance scheduling
Alsubaihi et al. A runtime workload distribution with resource allocation for CPU-GPU heterogeneous systems
Wang et al. Energy optimization by software prefetching for task granularity in GPU-based embedded systems
CN109582119A (zh) 基于动态电压频率调整的双层Spark节能调度方法
Wang et al. Communication-aware task partition and voltage scaling for energy minimization on heterogeneous parallel systems
Song Analysis on heterogeneous computing
Eitschberger et al. Energy-efficient task scheduling in manycore processors with frequency scaling overhead
Li et al. Minimizing energy of heterogeneous computing systems by task scheduling approach
Ahmed et al. Energy-efficient heterogeneous computing of parallel applications via power capping
CN111240818A (zh) 一种多相同gpu异构系统环境下的任务调度节能方法

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