CN103699432A - 一种异构环境下的多任务运行时协同调度系统 - Google Patents

一种异构环境下的多任务运行时协同调度系统 Download PDF

Info

Publication number
CN103699432A
CN103699432A CN201310692438.6A CN201310692438A CN103699432A CN 103699432 A CN103699432 A CN 103699432A CN 201310692438 A CN201310692438 A CN 201310692438A CN 103699432 A CN103699432 A CN 103699432A
Authority
CN
China
Prior art keywords
task
submodule
module
scheduling
code
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
CN201310692438.6A
Other languages
English (en)
Other versions
CN103699432B (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.)
Huazhong University of Science and Technology
Original Assignee
Huazhong University of Science and Technology
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 Huazhong University of Science and Technology filed Critical Huazhong University of Science and Technology
Priority to CN201310692438.6A priority Critical patent/CN103699432B/zh
Publication of CN103699432A publication Critical patent/CN103699432A/zh
Application granted granted Critical
Publication of CN103699432B publication Critical patent/CN103699432B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种异构环境下的多任务运行时协同调度系统,包括系统任务预处理模块、运行时动态任务调度模块和系统资源监控和管理模块。系统任务预处理模块用于对代码进行静态分析和标记,并以线程为单位生成可以用于进行协同调度的任务代码;系统资源监控管理模块用于监测、整理和记录系统资源使用情况,处理后提供给运行时动态任务调度模块进行系统运行时特征分析;运行时动态任务调度模块用于接收和管理系统任务预处理模块生成的任务代码,并根据从系统资源监控和管理模块接收的系统运行时信息加载执行相应任务。实施本发明可以在保证较高加速比、能效比和系统资源利用率的情况下将现有程序快速移植到多核-众核异构环境中。

Description

一种异构环境下的多任务运行时协同调度系统
技术领域
本发明涉及计算机多核-众核异构处理系统结构与协同任务调度领域,更具体地说,本发明涉及一种异构环境下的多任务运行时协同调度系统,适用于将现有程序向多核-众核异构系统进行快速移植。
背景技术
由于能耗墙和内存墙的限制,以CPU-GPU为典型代表的异构处理体系逐渐兴起,这种异构系统结构的主要优点就是在保证较高能效比的同时也提供强大的计算能力。在这种异构系统中进行程序移植时,程序设计人员根据相关的编程模型和规范,重新设计并实现适用于相应处理体系的程序,从而提高整个系统的加速比、能效比和资源利用率。
但是,这种体系结构先天的异构性也给程序的移植带来了各种不便。首先,硬件结构异构性所带来的平台异构性使得已有程序无法直接在新型异构系统中运行,传统移植方案一般根据相关的编程模型和规范,重新设计并实现适用于相应处理体系的程序,这种方案不仅需要程序移植人员掌握新的编程技术和框架,也需要其对被移植程序的结构和特点有很深的了解,移植难度大、效率低、效果差;其次,在传统的移植方案中,当整个异构系统负荷量以及负荷波动较大时,新开发的程序无法动态适应运行时异构单元间的负载情况并据此做出有效调节,从而导致系统运行效率和资源利用率都比较低。因此,受限于系统的异构性和任务调度策略的静态性,传统程序移植的解决方案具有效率低、成本高、灵活性差、效果不理想等各种问题。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种异构环境下的多任务运行时协同调度系统,该系统可以使得已有程序能够快速而高效的移植到新型多核-众核异构环境下运行,并能够保证整个异构系统有较高的加速比、能效比以及资源利用率。
本发明解决其技术问题所采用的技术方案是,提供一种异构环境下的多任务运行时协同调度系统,包括系统任务与处理模块、运行时动态任务调度模块和系统资源监控管理模块,所述系统任务预处理模块与所述运行时动态任务调度模块相连,所述运行时动态任务调度模块与所述系统资源监控管理模块相连,
所述系统任务预处理模块用于对待执行代码进行静态分析和标记,生成程序特征信息和任务运行时特征信息,且以线程为基本单位生成可以用于进行协同调度的任务代码;
所述系统资源监控管理模块用于监测、整理和记录系统相关资源使用情况,处理后生成系统运行时特征信息并发送至所述运行时动态任务调度模块进行系统运行时特征分析;
所述运行时动态任务调度模块用于接收和管理所述系统任务预处理模块生成的任务代码,并根据从系统资源监控管理模块接收的系统运行时特征信息制定任务调度策略以实现任务调度执行。
在本发明所述的异构环境下的多任务运行时协同调度系统中,所述系统任务预处理模块包括代码静态分析子模块、代码标记子模块和任务代码生成子模块,
所述代码静态分析子模块用于静态分析所述待执行代码,生成程序特征信息和任务运行时特征信息,并将所述程序特征信息传送给代码标记子模块使用,将程序特征信息和任务运行时特征信息传送给运行时动态任务调度模块使用;
所述代码标记子模块用于根据从静态分析子模块接收到的程序特征信息对所述待执行代码进行标记处理和优化操作,以使所述任务代码生成模块能够准确生成可执行的任务代码;
所述任务代码生成子模块用于对经过标记处理和优化操作的待执行代码进行编译,生成可执行的任务代码并组织起来以提供给所述运行时动态任务调度模块进行任务调度。
在本发明所述的异构环境下的多任务运行时协同调度系统中,所述运行时动态任务调度模块包括任务运行时特征分析子模块、系统运行时特征分析子模块、系统任务管理子模块、任务调度策略制定子模块、任务代码传输子模块、任务数据传输子模块、任务加载启动子模块和任务执行结果处理子模块,
所述任务运行时特征分析子模块用于整合从系统任务预处理模块接收的程序特征信息和任务运行时特征信息,并将整合结果提供给所述系统任务管理子模块进行记录和管理;
所述系统运行时特征分析子模块用于根据从资源监控管理模块接收的信息分析系统运行时的特征信息,并将系统运行时的特征信息提供给所述任务调度策略制定子模块使用;
所述系统任务管理子模块用于将任务运行时特征分析子模块提供的任务运行时特征信息和系统任务预处理模块提供的可执行的任务代码关联整合,形成对系统所有任务的详细描述,并将所述详细描述传送给任务调度策略制定子模块;
所述任务调度策略制定子模块用于根据从系统任务管理子模块接收到的详细描述制定相应的调度策略,并将所述调度策略发送至任务代码传输子模块和任务数据传输子模块实施;
所述任务代码传输子模块用于根据所述调度策略将相应的任务数据进行整合、压缩后传输到任务加载启动子模块;相应任务执行完后,所述任务数据传输子模块根据任务执行结果处理模块的反馈结果将相关结果信息传输到任务加载启动子模块;
所述任务加载启动模块用于接收任务代码传输子模块和任务数据传输子模块传输过来的代码和数据,接收完毕进行匹配和完整性校验,通知任务加载启动子模块加载和启动相应任务,将任务执行结果发送至任务结果处理子模块;
所述任务结果处理子模块用于临时保存任务执行的中间结果并整合任务执行的最终结果,将整合结果发送至所述任务传输子模块进行处理。
在本发明所述的异构环境下的多任务运行时协同调度系统中,所述系统资源监控管理模块包括系统资源监控子模块、系统资源可视化子模块、系统资源整合子模块和系统资源管理子模块;
所述系统资源监控子模块用于监控和记录系统资源使用情况,并将监控记录结果发送至系统资源整合模块;
所述系统资源整合子模块用于接收、计算并整理所述监控记录结果,并生成结构化的系统资源信息,并发送至所述系统资源可视化子模块和系统资源管理子模块;
所述系统资源可视化子模块用于根据所述结构化的系统资源信息,将整个系统的状态可视化,方便程序移植人员进行优化和调试;
所述系统资源管理子模块用于根据所述结构化的系统资源信息制定管理措施以提高系统的资源利用率,同时生成系统运行时特征信息并发所送至所述系统运行时特征分析子模块。
在本发明所述的异构环境下的多任务运行时协同调度系统中,所述程序特征信息为程序的预估指令数、可并行度和程序数据依赖关系。
在本发明所述的异构环境下的多任务运行时协同调度系统中,所述任务运行时特征信息为任务运行时CPU和内存资源的利用率以及不同任务之间的同步、等待和互斥关系。
在本发明所述的异构环境下的多任务运行时协同调度系统中,所述系统相关资源为CPU、内存以及异构单元之间的数据传输宽带利用率。
在本发明所述的异构环境下的多任务运行时协同调度系统中,所述系统运行时特征信息为系统资源利用率和异构单元之间的负载差异,所述系统资源为CPU、内存以及异构单元之间的传输宽带。
在本发明所述的异构环境下的多任务运行时协同调度系统中,所述调度策略为对任一可调度任务,确定其调度的方向、时机以及需要传输的代码和数据。
在本发明所述的异构环境下的多任务运行时协同调度系统中,所述对系统所有任务的详细描述为可调度任务总数、程序特征信息和任务运行时特征信息。
因此,本发明可以获得以下的有益效果:通过系统任务预处理模块对代码进行静态分析和标记以方便运行时动态任务调度模块进行运行时程序特征分析,同时生成可以用于协同调度的任务代码;系统资源监控管理模块监测、整理和记录系统资源使用情况,处理后提供给运行时动态任务调度模块进行系统运行时特征分析;运行时动态任务调度模块接收和管理用于协同调度的任务代码,并根据系统运行时信息制定调度策略以完成任务调度执行。通过生成可用于协同调度的任务代码、程序特征信息和任务运行时特征信息,并结合运行时系统特征信息制定调度策略可减少程序移植人员对移植过程的干预,减少了程序移植工作的难度和任务量,使得现有程序在异构环境中产生更高的加速比和能效比,在运行时动态地在异构处理单元之间进行任务迁移;同时充分考虑异构节点间的负载情况变化,并据此在异构单元之间进行任务管理,大大提高了整个系统的资源利用率和加速比;将程序特征和系统特征联系起来进行任务映射,进一步提高了整个系统的资源利用率。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是本发明异构环境下的多任务运行时协同调度系统的结构示意框图;
图2是本发明异构环境下的多任务运行时协同调度系统的结构细化框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
图1是是本发明异构环境下的多任务运行时协同调度系统的结构示意框图。如图1所示,本发明异构环境下的多任务运行时协同调度系统包括系统任务预处理模块1、运行时动态任务调度模块2和系统资源监控管理模块3。系统任务预处理模块1与运行时动态任务调度模块2相连,运行时动态任务调度模块2和系统资源监控管理模块3相连。
系统任务预处理模块1用于对代码进行静态分析和标记,方便运行时动态任务调度模块2进行运行时程序特征分析,同时,该模块以线程为基本单位生成可以用于进行协同调度的任务代码。
系统资源监控管理模块3用于监测、整理和记录系统资源使用情况,并在简单处理后提供给运行时动态任务调度模块2进行系统运行时特征分析。
运行时动态任务调度模块2用于接收和管理系统任务预处理模块1生成的任务代码,并根据从系统资源监控管理模块3接收的系统运行时信息完成任务的调度、加载和执行。
图2是本发明异构环境下的多任务运行时协同调度系统的结构细化框图。如图2所示,系统任务预处理模块1包括代码静态分析子模块11、代码标记子模块12和任务代码生成子模块13。
代码静态分析子模块11用于静态分析待执行代码,生成程序的特征信息和任务运行时信息。并将程序特征信息传送给代码标记子模块12,将程序特征信息和任务运行时信息传送给运行时动态任务调度模块2使用。在本实施例中,程序的特征信息主要包括程序的预估指令数、可并行度、程序数据依赖关系等典型程序特征。
代码标记子模块12用于根据从代码静态分析子模块11接受到的程序特征信息对待执行代码进行标记处理,并根据需要对待执行代码进行简单优化操作,以便任务代码生成子模块13能够准确生成可执行的任务代码。
任务代码生成子模块13用于对代码标记子模块12标记和优化后的代码进行相关处理,生成一系列可执行的任务代码,并高效的将它们组织起来以提供给运行时动态任务调度模块2进行任务调度。在本实施例中,相关处理一般是指编译等类似手段。
运行时动态任务调度模块2包括任务运行时特征分析子模块21、系统运行时特征分析子模块22、系统任务管理子模块23、任务调度策略制定子模块24、任务代码传输子模块25、任务数据传输子模块26、任务加载和启动子模块27和任务执行结果处理子模块28。
任务运行时特征分析子模块21用于整合从系统任务预处理模块1接收的程序特征信息以及任务运行时的特征信息,并将整合结果提供给系统任务管理子模块23进行记录和管理。在本实施例中,任务运行时的特征信息主要包括任务运行时的资源(主要指CPU和内存)利用率以及不同任务之间的同步、等待和互斥等关系。
系统运行时特征分析子模块22用于根据从系统资源监控管理模块3接收的信息,分析系统运行时的特征信息,并提供给任务调度策略制定子模块24使用。在本实施例中,系统运行时特征主要是指系统资源(主要是指CPU、内存以及异构单元之间的数据传输带宽等)利用率、异构单元之间的负载差异等。
系统任务管理子模块23将任务运行时特征分析子模块21提供的相关任务运行时的特征信息和系统任务预处理模块1生成的相应任务关联和整合起来,形成对系统所有任务的详细描述,并将整合结果传送给任务调度策略制定模块子模块24使用。在本实施方式中,对系统所有任务的详细描述主要包括可调度任务总数、程序特征信息和任务运行时特征信息。
任务调度策略制定子模块24用于根据从系统运行时特征分析子模块22接收到的运行时系统特征信息和系统任务管理子模块23对系统任务的整体描述,制定相应的调度策略,并将调度策略交由任务代码传输子模块25和任务数据传输子模块26具体实施。在本实施方式中,调度策略具体是指对于某一个可调度任务,确定其调度的方向、时机以及需要传输的代码和数据。
任务代码传输子模块25用于根据从任务调度策略制定子模块24接收的调度策略,将相应的任务代码传输到指定位置,提供给任务加载和启动子模块27使用。
任务数据传输子模块26用于根据从任务调度策略制定子模块24接收的调度策略,将相应的任务数据进行整合、压缩后传输到指定位置,提供给任务加载和启动子模块27使用。而且,在相应任务执行完成之后,该模块还需根据任务执行结果处理子模块28的反馈结果,将相关结果信息传输到任务加载和启动模块27。
任务加载和启动子模块27用于接收任务代码传输子模块25和任务数据传输子模块26传输过来的代码和数据,当所有数据接收完毕并进行简单匹配和完整性校验之后,通知任务加载和启动子模块27加载和启动相应任务,并将任务执行结果交由任务执行结果处理子模块28处理。
任务执行结果处理子模块28用于临时保存任务执行的中间结果并整合任务执行的最终结果,然后将整合结果发送给任务数据传输子模块26进行处理。
系统资源监控管理模块3包括系统资源监控子模块31、系统资源整合子模块32、系统资源可视化子模块33和系统资源管理子模块34。
系统资源监控子模块31用于监控和记录系统相关资源使用情况,并将结果传送给系统资源整合子模块32使用。在本实施方式中,系统相关资源主要包括CPU、内存以及异构单元之间的数据传输带宽利用率等。
系统资源整合子模块32用于接收、计算并整理系统资源监控子模块31传输的数据,并生成结构化的系统资源信息,方便系统资源可视化子模块33和系统资源管理子模块34使用。
系统资源可视化子模块33用于根据系统资源整合子模块32传送过来的信息,将整个系统的状态可视化,方便程序移植人员进行优化和调试。
系统资源管理子模块34根据系统资源整合子模块32传送的数据,制定相关的管理(资源的动态分配、释放等)措施,提高系统的资源利用率;同时生成系统运行时特征信息并发送至系统运行时特征分析模块22。
本发明异构环境下的多任务运行时协同调度系统工作时,代码静态分析子模块11首先对待执行代码进行静态分析,生成程序的特征信息,并将生成结果传送给代码标记子模块12和运行时动态任务调度模块中的任务运行时特征分析子模块21使用。然后,代码标记子模块12根据从代码静态分析子模块11接收的程序特征信息对待执行代码进行标记处理,并根据需要对待执行代码进行简单优化操作,以便生成任务代码生成子模块13能够准确生成可执行的任务代码。紧接着,代码任务生成子模块13对代码标记子模块12标记和优化后的代码进行相关处理,如编译处理,生成一系列可执行的任务代码,并高效地将它们组织起来以提供给运行时动态任务调度模块2中的系统任务管理子模块23进行任务调度。通过对待执行代码进行静态分析和标记,可方便运行时动态任务调度模块进行运行时程序特征分析,同时以线程为基本单位生成可用于进行协同调度的任务代码,能有效实现程序快速高效的移植。
系统资源监控子模块31不断监控和记录系统资源相关资源,所述系统相关资源指的是CPU、内存以及异构单元之间的数据传输宽带利用率,并将监控和记录结果传送给系统资源整合子模块32使用。系统资源整合子模块32在接收、计算并整理系统资源监控子模块31传输的数据后,生成结构化的系统资源信息,提供给系统资源可视化子模块33和系统资源管理子模块34使用。而系统资源管理子模块34则根据系统资源整合模块32传送过来的信息,制定相关的管理措施,如对资源的动态分配、释放等,以提高资源的利用率。与此同时,系统资源可视化子模块33根据系统资源整合子模块32传送过来的信息,将整个系统的状态可视化,方便程序移植人员进行优化和调试。
任务运行时特征分析子模块21首先将从代码静态分析子模块11接收的程序特征信息以及任务运行时的特征信息进行整合,然后将整合结果提供给系统任务管理子模块23进行记录和管理。系统运行时特征分析子模块22根据从系统资源监控管理模块3中的系统资源管理子模块34接收的信息,分析系统运行时的特征信息,并提供给任务调度策略制定子模块24使用。同时,系统任务管理子模块23将任务运行时特征分析子模块21提供的相关任务运行时的特征信息和系统任务预处理模块1中的任务代码生成子模块3生成的相应任务关联和整合起来,形成对系统所有任务的详细描述,并将整合结果传送至任务调度策略制定子模块24使用。接着,任务调度策略制定子模块24根据从系统运行时特征分析子模块22接收到的运行时系统特征信息和系统任务管理子模块23对系统任务的整体描述,制定相应的调度策略,并将调度策略交由任务代码传输子模块25和任务数据传输子模块26具体实施。通过考虑异构节点间的负载情况的变化,并据此在异构单元之间进行任务管理,大大提高了整个系统的资源利用率和加速比;同时将程序特征和系统特征联系起来进行任务映射,进一步提高了整个系统的资源利用率。
任务代码传输子模块25根据从任务调度策略制定子模块24接收的调度策略,将相应的任务代码传输到指定位置,提供给任务加载启动子模块27使用;同时,任务数据传输子模块26根据从任务调度策略制定子模块24接收的调度策略,将相应的任务数据进行整合、压缩后传输到指定位置,提供给任务加载启动子模块27使用。而且,在相应任务执行完成后,任务数据传输子模块26根据任务执行结果处理子模块28的反馈结果,将相关结果信息传输到指定位置,提供给任务加载启动子模块27使用。接着,任务加载启动子模块27加载和启动相应任务,并将任务执行结果交由任务执行结果28处理。最后,任务执行结果处理子模块28临时保存任务执行的中间结果并整合任务执行的最终结果,然后将整合结果发送给任务数据传输子模块26进行处理。
以下结合一个具体实施例对本发明异构环境下的多任务运行时协同调度系统的工作方式做进一步说明。当以提升整个系统的资源利用率为调度目标时,任务调度策略制定子模块24从系统运行时特征分析子模块22接收运行时异构单元之间的负载信息,并确定负载较低的异构单元,调度策略即为将当前任务调度到该负载较低的异构单元上运行。然后,任务代码传输子模块25和任务数据传输子模块26负责将当前任务对应的任务代码和任务数据传输到选定的异构单元,从而实现多任务运行时的协同调度。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种异构环境下的多任务运行时协同调度系统,包括系统任务与处理模块、运行时动态任务调度模块和系统资源监控管理模块,所述系统任务预处理模块与所述运行时动态任务调度模块相连,所述运行时动态任务调度模块与所述系统资源监控管理模块相连,其特征在于,
所述系统任务预处理模块用于对待执行代码进行静态分析和标记,生成程序特征信息和任务运行时特征信息,且以线程为基本单位生成可以用于进行协同调度的任务代码;
所述系统资源监控管理模块用于监测、整理和记录系统相关资源使用情况,处理后生成系统运行时特征信息并发送至所述运行时动态任务调度模块进行系统运行时特征分析;
所述运行时动态任务调度模块用于接收和管理所述系统任务预处理模块生成的任务代码,并根据从系统资源监控管理模块接收的系统运行时特征信息制定任务调度策略以实现任务调度执行。
2.如权利要求1所述的异构环境下的多任务运行时协同调度系统,其特征在于,所述系统任务预处理模块包括代码静态分析子模块、代码标记子模块和任务代码生成子模块,
所述代码静态分析子模块用于静态分析所述待执行代码,生成程序特征信息和任务运行时特征信息,并将所述程序特征信息传送给代码标记子模块使用,将程序特征信息和任务运行时特征信息传送给运行时动态任务调度模块使用;
所述代码标记子模块用于根据从静态分析子模块接收到的程序特征信息对所述待执行代码进行标记处理和优化操作,以使所述任务代码生成模块能够准确生成可执行的任务代码;
所述任务代码生成子模块用于对经过标记处理和优化操作的待执行代码进行编译,生成可执行的任务代码并组织起来以提供给所述运行时动态任务调度模块进行任务调度。
3.如权利要求1或2所述的异构环境下的多任务运行时协同调度系统,其特征在于,所述运行时动态任务调度模块包括任务运行时特征分析子模块、系统运行时特征分析子模块、系统任务管理子模块、任务调度策略制定子模块、任务代码传输子模块、任务数据传输子模块、任务加载启动子模块和任务执行结果处理子模块,
所述任务运行时特征分析子模块用于整合从系统任务预处理模块接收的程序特征信息和任务运行时特征信息,并将整合结果提供给所述系统任务管理子模块进行记录和管理;
所述系统运行时特征分析子模块用于根据从资源监控管理模块接收的信息分析系统运行时的特征信息,并将系统运行时的特征信息提供给所述任务调度策略制定子模块使用;
所述系统任务管理子模块用于将任务运行时特征分析子模块提供的任务运行时特征信息和系统任务预处理模块提供的可执行的任务代码关联整合,形成对系统所有任务的详细描述,并将所述详细描述传送给任务调度策略制定子模块;
所述任务调度策略制定子模块用于根据从系统任务管理子模块接收到的详细描述制定相应的调度策略,并将所述调度策略发送至任务代码传输子模块和任务数据传输子模块实施;
所述任务代码传输子模块用于根据所述调度策略将相应的任务数据进行整合、压缩后传输到任务加载启动子模块;相应任务执行完后,所述任务数据传输子模块根据任务执行结果处理模块的反馈结果将相关结果信息传输到任务加载启动子模块;
所述任务加载启动模块用于接收任务代码传输子模块和任务数据传输子模块传输过来的代码和数据,接收完毕进行匹配和完整性校验,通知任务加载启动子模块加载和启动相应任务,将任务执行结果发送至任务结果处理子模块;
所述任务结果处理子模块用于临时保存任务执行的中间结果并整合任务执行的最终结果,将整合结果发送至所述任务传输子模块进行处理。
4.如权利要求1或2所述的异构环境下的多任务运行时协同调度系统,其特征在于,所述系统资源监控管理模块包括系统资源监控子模块、系统资源可视化子模块、系统资源整合子模块和系统资源管理子模块;
所述系统资源监控子模块用于监控和记录系统资源使用情况,并将监控记录结果发送至系统资源整合模块;
所述系统资源整合子模块用于接收、计算并整理所述监控记录结果,并生成结构化的系统资源信息,并发送至所述系统资源可视化子模块和系统资源管理子模块;
所述系统资源可视化子模块用于根据所述结构化的系统资源信息,将整个系统的状态可视化,方便程序移植人员进行优化和调试;
所述系统资源管理子模块用于根据所述结构化的系统资源信息制定管理措施以提高系统的资源利用率,同时生成系统运行时特征信息并发所送至所述系统运行时特征分析子模块。
5.如权利要求1所述的异构环境下的多任务运行时协同调度系统,其特征在于,所述程序特征信息为程序的预估指令数、可并行度和程序数据依赖关系。
6.如权利要求1所述的异构环境下的多任务运行时协同调度系统,其特征在于,所述任务运行时特征信息为任务运行时CPU和内存资源的利用率以及不同任务之间的同步、等待和互斥关系。
7.如权利要求1所述的异构环境下的多任务运行时协同调度系统,其特征在于,所述系统相关资源为CPU、内存以及异构单元之间的数据传输宽带利用率。
8.如权利要求1所述的异构环境下的多任务运行时协同调度系统,其特征在于,所述系统运行时特征信息为系统资源利用率和异构单元之间的负载差异,所述系统资源为CPU、内存以及异构单元之间的传输宽带。
9.如权利要求1所述的异构环境下的多任务运行时协同调度系统,其特征在于,所述调度策略为对任一可调度任务,确定其调度的方向、时机以及需要传输的代码和数据。
10.如权利要求3所述的异构环境下的多任务运行时协同调度系统,其特征在于,所述对系统所有任务的详细描述为可调度任务总数、程序特征信息和任务运行时特征信息。
CN201310692438.6A 2013-12-17 2013-12-17 一种异构环境下的多任务运行时协同调度系统 Active CN103699432B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310692438.6A CN103699432B (zh) 2013-12-17 2013-12-17 一种异构环境下的多任务运行时协同调度系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310692438.6A CN103699432B (zh) 2013-12-17 2013-12-17 一种异构环境下的多任务运行时协同调度系统

Publications (2)

Publication Number Publication Date
CN103699432A true CN103699432A (zh) 2014-04-02
CN103699432B CN103699432B (zh) 2017-04-12

Family

ID=50360971

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310692438.6A Active CN103699432B (zh) 2013-12-17 2013-12-17 一种异构环境下的多任务运行时协同调度系统

Country Status (1)

Country Link
CN (1) CN103699432B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105912394A (zh) * 2016-04-25 2016-08-31 深圳市万普拉斯科技有限公司 线程处理方法和系统
CN107908473A (zh) * 2017-10-24 2018-04-13 无锡十月中宸科技有限公司 一种基于拟态高性能计算的模式识别系统及方法
CN110998521A (zh) * 2017-09-29 2020-04-10 甲骨文国际公司 定义线程规范的系统和方法
CN111722930A (zh) * 2020-06-23 2020-09-29 恒为科技(上海)股份有限公司 一种数据预处理系统
CN111966571A (zh) * 2020-08-12 2020-11-20 重庆邮电大学 基于arm-fpga协处理器异构平台的时间估算协同处理方法
CN112559486A (zh) * 2020-11-11 2021-03-26 国网江苏省电力有限公司信息通信分公司 一种数据中台统一任务调度管理系统
CN113553100A (zh) * 2021-06-29 2021-10-26 袁敬 一种端到端、自组织的智能化计算框架及应用方法
US11182210B2 (en) 2017-07-31 2021-11-23 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method for resource allocation and terminal device
CN114207594A (zh) * 2019-05-22 2022-03-18 起元技术有限责任公司 计算机程序系统的静态分析和运行时分析
CN110998521B (zh) * 2017-09-29 2024-04-26 甲骨文国际公司 定义线程规范的系统和方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6681241B1 (en) * 1999-08-12 2004-01-20 International Business Machines Corporation Resource contention monitoring employing time-ordered entries in a blocking queue and waiting queue
US20060168582A1 (en) * 2005-01-21 2006-07-27 International Business Machines Corporation Managing resource link relationships to activity tasks in a collaborative computing environment
CN102096599A (zh) * 2009-12-14 2011-06-15 中国移动通信集团公司 一种多队列任务调度方法及相关系统和设备
CN102880503A (zh) * 2012-08-24 2013-01-16 新浪网技术(中国)有限公司 数据分析系统及数据分析方法
CN103345664A (zh) * 2013-05-31 2013-10-09 华为技术有限公司 工作流-任务调度适配方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6681241B1 (en) * 1999-08-12 2004-01-20 International Business Machines Corporation Resource contention monitoring employing time-ordered entries in a blocking queue and waiting queue
US20060168582A1 (en) * 2005-01-21 2006-07-27 International Business Machines Corporation Managing resource link relationships to activity tasks in a collaborative computing environment
CN102096599A (zh) * 2009-12-14 2011-06-15 中国移动通信集团公司 一种多队列任务调度方法及相关系统和设备
CN102880503A (zh) * 2012-08-24 2013-01-16 新浪网技术(中国)有限公司 数据分析系统及数据分析方法
CN103345664A (zh) * 2013-05-31 2013-10-09 华为技术有限公司 工作流-任务调度适配方法及系统

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105912394A (zh) * 2016-04-25 2016-08-31 深圳市万普拉斯科技有限公司 线程处理方法和系统
US11182210B2 (en) 2017-07-31 2021-11-23 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method for resource allocation and terminal device
CN110998521A (zh) * 2017-09-29 2020-04-10 甲骨文国际公司 定义线程规范的系统和方法
CN110998521B (zh) * 2017-09-29 2024-04-26 甲骨文国际公司 定义线程规范的系统和方法
CN107908473A (zh) * 2017-10-24 2018-04-13 无锡十月中宸科技有限公司 一种基于拟态高性能计算的模式识别系统及方法
CN114207594B (zh) * 2019-05-22 2023-02-21 起元技术有限责任公司 计算机程序系统的静态分析和运行时分析
CN114207594A (zh) * 2019-05-22 2022-03-18 起元技术有限责任公司 计算机程序系统的静态分析和运行时分析
CN111722930A (zh) * 2020-06-23 2020-09-29 恒为科技(上海)股份有限公司 一种数据预处理系统
CN111722930B (zh) * 2020-06-23 2024-03-01 恒为科技(上海)股份有限公司 一种数据预处理系统
CN111966571B (zh) * 2020-08-12 2023-05-12 重庆邮电大学 基于arm-fpga协处理器异构平台的时间估算协同处理方法
CN111966571A (zh) * 2020-08-12 2020-11-20 重庆邮电大学 基于arm-fpga协处理器异构平台的时间估算协同处理方法
CN112559486A (zh) * 2020-11-11 2021-03-26 国网江苏省电力有限公司信息通信分公司 一种数据中台统一任务调度管理系统
CN113553100A (zh) * 2021-06-29 2021-10-26 袁敬 一种端到端、自组织的智能化计算框架及应用方法
CN113553100B (zh) * 2021-06-29 2023-03-14 袁敬 一种端到端、自组织的智能化计算框架及应用方法

Also Published As

Publication number Publication date
CN103699432B (zh) 2017-04-12

Similar Documents

Publication Publication Date Title
CN103699432A (zh) 一种异构环境下的多任务运行时协同调度系统
Zahaf et al. Energy-efficient scheduling for moldable real-time tasks on heterogeneous computing platforms
US8543993B2 (en) Compiler, compile method, and processor core control method and processor
Razaque et al. Task scheduling in cloud computing
CN102360309B (zh) 片上多核异构系统的调度系统与调度执行方法
Merzky et al. Using pilot systems to execute many task workloads on supercomputers
CN105487838A (zh) 一种动态可重构处理器的任务级并行调度方法与系统
Stark et al. Early experiences co-scheduling work and communication tasks for hybrid MPI+ X applications
Jiang et al. Utilization-tensity bound for real-time DAG tasks under global EDF scheduling
CN112882828A (zh) 基于slurm作业调度系统的昇腾处理器管理和调度方法
Turilli et al. Characterizing the performance of executing many-tasks on summit
Wang et al. Automatic partitioning of object-oriented programs for resource-constrained mobile devices with multiple distribution objectives
Tsuji et al. Multiple-spmd programming environment based on pgas and workflow toward post-petascale computing
CN102004662A (zh) 嵌入式可裁剪式虚拟机
Kähkönen et al. LCT: A parallel distributed testing tool for multithreaded Java programs
CN101408850A (zh) 任务流计算模型
WO2019153681A1 (zh) 一种智能指令调度器
CN103810041A (zh) 一种支持动态伸缩的并行计算的方法
Olejnik et al. An object observation for a java adaptative distributed application platform
Santcroos et al. Executing dynamic heterogeneous workloads on blue waters with radical-pilot
JP2016532183A (ja) ソフトウェアプログラムの計算ブロックをマルチプロセッサシステムのコアに割り当てるための方法及びシステム
Krämer Efficient scheduling of scientific workflow actions in the cloud based on required capabilities
Murthy et al. Communication avoiding algorithms: Analysis and code generation for parallel systems
CN103455374A (zh) 一种基于MapReduce的分布式计算方法和装置
Kuo et al. Scheduling algorithm for parallel real-time tasks on multiprocessor systems

Legal Events

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