CN101853178B - 一种调度时可重构硬件资源的描述方法 - Google Patents
一种调度时可重构硬件资源的描述方法 Download PDFInfo
- Publication number
- CN101853178B CN101853178B CN2010101634862A CN201010163486A CN101853178B CN 101853178 B CN101853178 B CN 101853178B CN 2010101634862 A CN2010101634862 A CN 2010101634862A CN 201010163486 A CN201010163486 A CN 201010163486A CN 101853178 B CN101853178 B CN 101853178B
- Authority
- CN
- China
- Prior art keywords
- boundary
- task
- boundary node
- border
- node
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Image Generation (AREA)
Abstract
一种调度时可重构硬件资源的描述方法,先在基于一维器件构建的可重构计算模型基础上,以资源轴为横轴,以时间轴为纵轴建立R-T坐标系,可重构硬件任务描述为Ti形成任务区域,再识别R-T坐标系中正在执行任务的边界,初始时,R-T坐标系中存在三个边界,一个任务获取资源之后,就会在R-T坐标系中占用一个矩形区域,进而引入新的边界,这些边界成为其它待调度任务放置的约束,任务放置时必须至少使其底边以及左边或右边之一紧靠已经存在的边界,然后由任务边界图映射生成对应的边界节点图,再用边界表数据结构图对边界节点图进行描述,最后实现任务调度,本发明具有信息记录少,维护程序简单,调度时查找时间短的优点。
Description
技术领域
本发明属于计算机技术领域,具体涉及一种调度时可重构硬件资源的描述方法。
背景技术
目前,针对调度时可重构硬件资源描述方法主要包括空闲区描述方法和状态矩阵的描述方法,空闲区描述方法主要是记录空闲区域来对资源进行描述,其中最重要的是MER最大空闲矩形法(MaximalEmpty Rectangle),MER方法记录一个互不交叠的空闲资源矩形列表,通过查找匹配的空闲资源矩形获得硬件任务的放置位置,该方法需要对资源矩形列表进行维护,查找匹配的空闲资源时复杂度高;状态矩阵描述方式通过维护一个记录可重构计算单元(ReconfigurableComputing Unit)状态的矩阵来管理资源,并通过扫描状态矩阵查找硬件任务的可放置位置,此方法需扫描和查找状态矩阵,花费时间长,而且这两种方法都适合在基于二维器件构建的可重构计算模型中运行,因为二维器件模型中,计算资源以二维阵列的方式划分和组织,重构的最小单位为二维阵列中的一个单元,一个硬件任务占用阵列中的一个矩形区域,任务放置具有二维自由度,在对硬件任务进行调度时若要考虑任务时间属性,二维器件模型运行时间会更长,维护代价会更高,不利于系统的实时性任务调度。在基于一维器件构建的可重构计算模型中,计算资源以列为单位,一个硬件任务可占用连续的若干列资源,任务的放置只具有一维自由度,考虑任务时间属性可将问题转化到资源数和时间构成的二维坐标下进行研究,可以减少信息记录,简化维护程序,缩短调度时间,降低调度复杂度,提高调度效率。
发明内容
为了克服上述现有技术中存在的问题,本发明的目的是提供一种调度时可重构硬件资源的描述方法,在基于一维器件构建的可重构计算模型基础上,对可重构硬件资源进行描述,具有信息记录少,维护程序简单,调度时查找时间短的优点。
为了达到上述目的,本发明所采用的技术方案是:
一种调度时可重构硬件资源的描述方法,包括以下步骤:
第一步,在基于一维器件构建的可重构计算模型基础上,以资源轴为横轴R,以时间轴为纵轴T建立R-T坐标系,基于R-T坐标系的可重构硬件任务可描述为:Ti=(ai,ei,wi,di),其中i为正整数,ai是任务Ti到达时刻,ei是任务Ti执行时间,wi是任务Ti占用资源的宽度,单位为RCU数,di是任务Ti截止时刻;Ti将占据R-T坐标系中一个长为ei,宽为wi的矩形区域,称为时空区域,R-T坐标系中被任务占据的时空区域形成任务区域,不被任务占据的时空区域形成空闲区域,
第二步,识别R-T坐标系中正在执行任务的边界,R-T坐标系中有四种边界类型,包括底边界Bj、顶边界TOPk、左边界Lm和右边界Rn,其中j,k,m,n均为正整数,但不一一对应,底边界Bj由任务区域的顶边构成,顶边界TOPk由任务区域的底边构成,左边界Lm由任务区域的右边或时间轴构成,右边界Rn由任务区域的左边或垂直于横坐标轴的r=W垂直线构成,r为资源坐标轴上最大值即RCU最大数目,W为整数,R-T坐标系中正在执行的任务边界将坐标空间划分为任务区域和空闲区域,初始时,R-T坐标系中存在三个边界,分别是作为左边界Lm的时间轴,以(0,0)和(W,0)为端点的底边界Bj,以及作为右边界Rn的r=W垂直线,任务必须放置在这些边界之间,一个任务获取资源之后,就会在R-T坐标系中占用一个矩形区域,进而引入新的边界,这些边界成为其它待调度任务放置的约束,任务放置时必须至少使其底边以及左边或右边之一紧靠已经存在的边界,然后由任务边界图映射生成对应的边界节点图,映射过程如下:任务边界图中的各边界映射为边界节点图的边界节点,边界节点图中用四种连接边表示任务边界图中各边界之间的关系,分别记为top,left,right和next,其中,next表示同类边界按照一定顺序排序后在位置上的相邻关系,任务边界图中的同类边按值由小到大排序后,相邻的两条同类边构成next关系,由值小的边指向值大的边,相应地,从任务边界图向边界节点图映射时,边界节点图中next边由值小的边界节点指向值大的边界节点;left和right连接边表示空闲区域中与某一底边界相接的左边界和右边界,top连接边表示空闲区域中与某一左边界相接的顶边界,相应地,从任务边界图向边界节点图映射时,若四中类型的边界在任务边界图中构成矩形空闲区域,在边界节点图中以底边界映射来的边界节点为出发节点通过left连接指向与其紧邻的左边界映射来的边界节点,在边界节点图中以底边界映射来的边界节点为出发点通过right连接指向与其紧邻的右边界映射来的边界节点,同样,在边界节点图中以左边界映射来的边界节点为出发点通过top连接指向与其紧邻的顶边界映射来的边界节点,
第三步,用边界表数据结构图对边界节点图进行描述,单个边界节点数据结构由六个部分组成,分别是:边界标识,左边界指针1,右边界指针2,顶边界指针3,链表指针4,和边界位置信息数据5,边界标识标记不同的边界;由边界节点图映射生成边界表数据结构图时,边界节点图中的每个边界节点都映射产生单个边界节点数据结构,相应地,边界节点图中的left由单个边界节点数据结构的左边界指针1指向另一个单个边界节点数据结构的边界的边界标识;right由单个边界节点数据结构的右边界指针2指向另一个单个边界节点数据结构的边界的边界标识;top由单个边界节点数据结构的顶边界指针3指向另一个单个边界节点数据结构的边界的边界标识;next由单个边界节点数据结构的链表指针4指向另一个单个边界节点数据结构的边界的边界标识,
第四步,调度时以边界节点数据结构图中边界节点类型为底边界且值最小的节点作为源节点6遍历整个图实现任务调度。
本发明的有益效果是:
由于本发明在坐标系引入时间轴,将一维空间问题转化到二维坐标下,实现空间布局和时间调度的结合,避免了在二维空间布局的同时再考虑调度在时间上的约束,所以降低运行复杂度,由于本发明在任务实时调度时只对当前坐标下的边界信息进行记录,所以记录信息少,维护程序简单,可缩短调度时间。
附图说明
图1是本发明的R-T坐标系示意图,横坐标R是RCU资源数目,纵坐标T是时间。
图2是本发明的R-T坐标系下任务边界示意图。
图3是图2所对应的边界节点图。
图4是单个节点数据结构示意图。
图5是图3的边界表数据结构示意图,箭头指向表示指针指向。
具体实施方式
下面结合附图对本发明作详细描述。
一种调度时可重构硬件资源的描述方法,包括以下步骤:
第一步,参照图1,在基于一维器件构建的可重构计算模型基础上,以资源轴为横轴R,以时间轴为纵轴T建立R-T坐标系,将一维模型上的可重构硬件任务调度问题转化到二维坐标系中,基于R-T坐标系的可重构硬件任务可描述为:Ti=(ai,ei,wi,di),其中i为正整数,ai是任务Ti到达时刻,ei是任务Ti执行时间,wi是任务Ti占用资源的宽度,单位为RCU数,di是任务Ti截止时刻;Ti将占据R-T坐标系中一个长为ei,宽为wi的矩形区域,称为时空区域,R-T坐标系中被任务占据的时空区域形成任务区域,不被任务占据的时空区域形成空闲区域,
第二步,识别R-T坐标系中正在执行任务T1和T2的边界,R-T坐标系中有四种边界类型,包括底边界Bj、顶边界TOPk、左边界Lm和右边界Rn,其中j,k,m,n均为正整数,但不一一对应,底边界Bj由任务区域的顶边构成,顶边界TOPk由任务区域的底边构成,左边界Lm由任务区域的右边或时间轴构成,右边界Rn由任务区域的左边或垂直于横坐标轴的r=W垂直线(r为资源坐标轴上最大值即RCU最大数目,W为整数)构成,R-T坐标系中正在执行的任务边界将坐标空间划分为任务区域和空闲区域,初始时,R-T坐标系中存在三个边界,分别是作为左边界Lm的时间轴,以(0,0)和(W,0)为端点的底边界Bj,以及作为右边界Rn的r=W垂直线,任务必须放置在这些边界之间,一个任务获取资源之后,就会在R-T坐标系中占用一个矩形区域,进而引入新的边界,这些边界成为其它待调度任务放置的约束,任务放置时必须至少使其底边以及左边或右边之一紧靠已经存在的边界,然后由任务边界图映射生成对应的边界节点图,参照图2,分别用B1,B2,L1,L2,L3,R1,TOP1表示,映射过程如下:参照图3,任务边界图中的各边界映射为边界节点图的边界节点,边界节点图中用四种连接边表示任务边界图中各边界之间的关系,分别记为top,left,right和next,其中,next边表示同类边界按照一定顺序排序后在位置上的相邻关系,任务边界图中的同类边按值由小到大排序后,相邻的两条同类边构成next关系,由值小的边指向值大的边,相应地,从任务边界图向边界节点图映射时,边界节点图中next边由值小的边界节点指向值大的边界节点;图2中L1,L2,L3按值由小到大排序后,与L1构成next关系的是L2,相应地,图3中next边由L1指向L2;与L2构成next关系的是L3,相应地,图3中next边由L2指向L3,B1和B2也存在这样的关系,left和right连接边表示空闲区域中与某一底边界相接的左边界和右边界,top连接边表示空闲区域中与某一左边界相接的顶边界,相应地,从任务边界图向边界节点图映射时,若四中类型的边界在任务边界图中构成矩形空闲区域,在边界节点图中以底边界映射来的边界节点为出发节点通过left连接指向与其紧邻的左边界映射来的边界节点,在边界节点图中以底边界映射来的边界节点为出发点通过right连接指向与其紧邻的右边界映射来的边界节点,同样,在边界节点图中以左边界映射来的边界节点为出发点通过top连接指向与其紧邻的顶边界映射来的边界节点,在图2中,L1、B2和R1构成空矩形闲区域,B2紧邻的左边界是L1,映射后图3中left边由B2指向L1;在图2中B2右边界是R1,映射后图3中right边由B2指向R1;同样在图2中L2,B1,R1,T1也构成空闲区域,B1紧邻的左边界是L2,映射后图3中left边由B1指向L2;图2中B1右边界是R1,L1的顶边界是T1,映射后图3中right边由B1指向R1,top边由L1指向T1.空闲区域的划法会影响到边界节点图的最终形式,但是从任务边界图到边界节点图的映射方法是不变的,
第三步,用边界表数据结构图对边界节点图进行描述,参照图4,单个边界节点数据结构由六个部分组成,分别是:边界标识,左边界指针1,右边界指针2,顶边界指针3,链表指针4,和边界位置信息数据5,由边界节点图映射生成边界表数据结构图时,参照图5,边界节点图中的每个边界节点都映射产生单个边界节点数据结构,相应地,边界节点图中的left由单个边界节点数据结构的左边界指针1指向另一个单个边界节点数据结构的边界的边界标识;right由单个边界节点数据结构的右边界指针2指向另一个单个边界节点数据结构的边界的边界标识;top由单个边界节点数据结构的顶边界指针3指向另一个单个边界节点数据结构的边界的边界标识;next由单个边界节点数据结构的链表指针4指向另一个单个边界节点数据结构的边界的边界标识,与边界节点图不对应,在边界节点数据结构图中添加了一个位置在无穷大处的顶边界TOP2,可以标识时间轴无穷大处的空闲区域边界情况,简化调度时计算,
第四步,参照图5,在调度时以边界节点数据结构图中边界节点类型为底边界且值最小的节点作为源节点6遍历整个图实现任务调度。
附图中:R为RCU资源数目;T为时间;Ti为可重构硬件任务,ai为任务Ti到达时刻,ei为任务Ti执行时间,wi为任务Ti占用资源的宽度,di是任务Ti截止时刻;T1和T2为可重构硬件任务;B1和B2为底边界,L1、L2和L3为左边界,R1为右边界,TOP1为顶边界;1为左边界指针,2为右边界指针,3为顶边界指针,4为链表指针,5为边界位置信息数据;6为源节点。
Claims (1)
1.一种调度时可重构硬件资源的描述方法,其特征在于:包括以下步骤:
第一步,在基于一维器件构建的可重构计算模型基础上,以资源轴为横轴R,以时间轴为纵轴T建立R-T坐标系,基于R-T坐标系的可重构硬件任务可描述为:Ti=(ai,ei,wi,di),其中i为正整数,ai是任务Ti到达时刻,ei是任务Ti执行时间,wi是任务Ti占用资源的宽度,单位为RCU数,di是任务Ti截止时刻;Ti将占据R-T坐标系中一个长为ei,宽为wi的矩形区域,称为时空区域,R-T坐标系中被任务占据的时空区域形成任务区域,不被任务占据的时空区域形成空闲区域,
第二步,识别R-T坐标系中正在执行任务的边界,R-T坐标系中有四种边界类型,包括底边界Bj、顶边界TOPk、左边界Lm和右边界Rn,其中j,k,m,n均为正整数,但不一一对应,底边界Bj由任务区域的顶边构成,顶边界TOPk由任务区域的底边构成,左边界Lm由任务区域的右边或时间轴构成,右边界Rn由任务区域的左边或垂直于横坐标轴的r=W垂直线构成,r为资源坐标轴上最大值即RCU最大数目,W为整数,R-T坐标系中正在执行的任务边界将坐标空间划分为任务区域和空闲区域,初始时,R-T坐标系中存在三个边界,分别是作为左边界Lm的时间轴,以(0,0)和(W,0)为端点的底边界Bj,以及作为右边界Rn的r=W垂直线,任务必须放置在这些边界之间,一个任务获取资源之后,就会在R-T坐标系中占用一个矩形区域,进而引入 新的边界,这些边界成为其它待调度任务放置的约束,任务放置时必须至少使其底边以及左边或右边之一紧靠已经存在的边界,然后由任务边界图映射生成对应的边界节点图,映射过程如下:任务边界图中的各边界映射为边界节点图的边界节点,边界节点图中用四种连接边表示任务边界图中各边界之间的关系,分别记为top,left,right和next,其中,next表示同类边界按照一定顺序排序后在位置上的相邻关系,任务边界图中的同类边按值由小到大排序后,相邻的两条同类边构成next关系,由值小的边指向值大的边,相应地,从任务边界图向边界节点图映射时,边界节点图中next边由值小的边界节点指向值大的边界节点;left和right连接边表示空闲区域中与某一底边界相接的左边界和右边界,top连接边表示空闲区域中与某一左边界相接的顶边界,相应地,从任务边界图向边界节点图映射时,若四种类型的边界在任务边界图中构成矩形空闲区域,在边界节点图中以底边界映射来的边界节点为出发节点通过left连接指向与其紧邻的左边界映射来的边界节点,在边界节点图中以底边界映射来的边界节点为出发点通过right连接指向与其紧邻的右边界映射来的边界节点,同样,在边界节点图中以左边界映射来的边界节点为出发点通过top连接指向与其紧邻的顶边界映射来的边界节点,
第三步,用边界表数据结构图对边界节点图进行描述,单个边界节点数据结构由六个部分组成,分别是:边界标识,左边界指针(1),右边界指针(2),顶边界指针(3),链表指针(4),边界位置信息数据(5),边界标识标记不同的边界;由边界节点图映射生成边界表数 据结构图时,边界节点图中的每个边界节点都映射产生单个边界节点数据结构,相应地,边界节点图中的left由单个边界节点数据结构的左边界指针(1)指向另一个单个边界节点数据结构的边界的边界标识;right由单个边界节点数据结构的右边界指针(2)指向另一个单个边界节点数据结构的边界的边界标识;top由单个边界节点数据结构的顶边界指针(3)指向另一个单个边界节点数据结构的边界的边界标识;next由单个边界节点数据结构的链表指针(4)指向另一个单个边界节点数据结构的边界的边界标识,
第四步,调度时以边界节点数据结构图中边界节点类型为底边界且值最小的节点作为源节点(6)遍历整个图实现任务调度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010101634862A CN101853178B (zh) | 2010-04-30 | 2010-04-30 | 一种调度时可重构硬件资源的描述方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010101634862A CN101853178B (zh) | 2010-04-30 | 2010-04-30 | 一种调度时可重构硬件资源的描述方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101853178A CN101853178A (zh) | 2010-10-06 |
CN101853178B true CN101853178B (zh) | 2012-07-04 |
Family
ID=42804684
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010101634862A Expired - Fee Related CN101853178B (zh) | 2010-04-30 | 2010-04-30 | 一种调度时可重构硬件资源的描述方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101853178B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102262612B (zh) * | 2011-07-28 | 2014-04-23 | 西安交通大学 | 一种降低可重构硬件任务布局冲突的方法 |
CN102629218A (zh) * | 2012-03-14 | 2012-08-08 | 西安交通大学 | 一种基于任务长宽比的可重构硬件任务放置方法 |
CN106171745B (zh) * | 2016-07-13 | 2019-10-11 | 安庆师范大学 | 一种测定功能群幼苗在光资源轴上生态位分化的方法 |
CN108667864B (zh) * | 2017-03-29 | 2020-07-28 | 华为技术有限公司 | 一种进行资源调度的方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1568460A (zh) * | 2001-09-14 | 2005-01-19 | 英特尔公司 | 具有多硬件配置的可重构硬件体系统结构中的调度方法 |
CN101247623A (zh) * | 2007-02-14 | 2008-08-20 | 中兴通讯股份有限公司 | 一种tdd-ofdma系统物理层下行资源分配方法 |
CN101291334A (zh) * | 2008-06-18 | 2008-10-22 | 北京北方烽火科技有限公司 | 一种wimax系统中的数据链路层的无线资源调度方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020133530A1 (en) * | 2001-03-15 | 2002-09-19 | Maarten Koning | Method for resource control including resource stealing |
US8185422B2 (en) * | 2006-07-31 | 2012-05-22 | Accenture Global Services Limited | Work allocation model |
-
2010
- 2010-04-30 CN CN2010101634862A patent/CN101853178B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1568460A (zh) * | 2001-09-14 | 2005-01-19 | 英特尔公司 | 具有多硬件配置的可重构硬件体系统结构中的调度方法 |
CN101247623A (zh) * | 2007-02-14 | 2008-08-20 | 中兴通讯股份有限公司 | 一种tdd-ofdma系统物理层下行资源分配方法 |
CN101291334A (zh) * | 2008-06-18 | 2008-10-22 | 北京北方烽火科技有限公司 | 一种wimax系统中的数据链路层的无线资源调度方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101853178A (zh) | 2010-10-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102681901B (zh) | 一种分区域的可重构硬件任务放置方法 | |
Hammoud et al. | DREAM: distributed RDF engine with adaptive query planner and minimal communication | |
CN105447174B (zh) | 一种报表生成方法及装置 | |
CN101853178B (zh) | 一种调度时可重构硬件资源的描述方法 | |
CN102521303B (zh) | 一种用于列数据库的单表多列序存储方法 | |
CN103902593B (zh) | 一种数据迁移的方法和装置 | |
CN105550268A (zh) | 大数据流程建模分析引擎 | |
CN101996250A (zh) | 一种基于Hadoop的海量流数据存储和查询方法及系统 | |
CN103324765B (zh) | 一种基于列存储的多核并行数据查询优化方法 | |
CN106951552A (zh) | 一种基于Hadoop的用户行为数据处理方法 | |
CN102819589B (zh) | 一种基于etl的数据优化方法及设备 | |
CN105138650A (zh) | 一种基于孤立点挖掘的Hadoop数据清洗方法及系统 | |
Balasubramanian et al. | RB_DSOP: a rule based disjoint sum of products synthesis method | |
CN103886005A (zh) | 用于为增强查询性能使用临时性能对象的方法和系统 | |
CN102622791A (zh) | 网络签到系统和方法 | |
CN103514205A (zh) | 海量数据处理方法和系统 | |
CN102262612B (zh) | 一种降低可重构硬件任务布局冲突的方法 | |
CN110175175A (zh) | 一种基于spark的分布式空间二级索引与范围查询算法 | |
CN105630934A (zh) | 一种数据统计方法及系统 | |
CN103455896A (zh) | 基于物联网的无纸化装配质量控制方法 | |
CN102169491A (zh) | 一种多数据集中重复记录动态检测方法 | |
CN101916301B (zh) | 基于空间关系的三维空间数据自适应预调度方法 | |
Regattieri et al. | The impact of dwell point policy in an Automated Storage/Retrieval System | |
CN104951442A (zh) | 一种确定结果向量的方法和装置 | |
CN113468166A (zh) | 元数据处理方法、装置、存储介质及服务器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120704 Termination date: 20150430 |
|
EXPY | Termination of patent right or utility model |