CN105975434A - 面向异构系统的数据传输优化方法 - Google Patents
面向异构系统的数据传输优化方法 Download PDFInfo
- Publication number
- CN105975434A CN105975434A CN201610283304.2A CN201610283304A CN105975434A CN 105975434 A CN105975434 A CN 105975434A CN 201610283304 A CN201610283304 A CN 201610283304A CN 105975434 A CN105975434 A CN 105975434A
- Authority
- CN
- China
- Prior art keywords
- data
- task
- need
- data set
- processor
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17337—Direct connection machines, e.g. completely connected computers, point to point communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种面向异构系统的数据传输优化方法,目的是减少数据传输量,提高异构系统数据传输效率和提升异构计算系统效率。技术方案是先定义工作流中的处理器集合C和整个工作流中的任务集T,然后收集工作流中任务处理需要的原始数据集合D,统计工作流中各任务与数据之间的关系,接着在任务运行过程生成中间数据集,最后确认任务运行需要传入的最小数据集。采用本发明可以将处理器之间需要传输的数据集最小化,缓解异构系统数据传输压力,提高异构系统的带宽利用率,提升异构计算系统效率。
Description
技术领域
本发明涉及数据传输优化方法,尤指面向异构计算系统的数据传输优化方法。
背景技术
异构计算系统是由主处理器和加速器两种不同体系结构处理器搭建的计算机系统。目前,主流的异构计算系统有CPU+GPU(Graphics Processing Units)和CPU+MIC(ManyIntegrated Core)组成异构计算系统。
通常,异构计算系统中主处理器与加速器之间通过PCIE(Peripheral ComponentInterface Express,外围器件扩展接口)通道以数据报文的形式完成数据传输和通信,加速器内部的全局通信必须在加速器全局存储空间中进行,基本通信模式如图1所示。
随着异构计算系统计算能力的不断攀升,相对滞后的数据通信能力逐渐成为异构计算系统性能进一步提升的瓶颈。如何避免主处理器和加速器之间频繁的数据通信、提高PCIE数据传输效率是异构计算系统高效协同及性能优化的关键。
目前,异构计算系统中主处理器与加速器之间的数据传输优化方法主要有以下几种:
(1)零拷贝。该方法指加速器端独立完成待处理数据集的生成和存储,避免数据在主处理器和加速器之间的来回传输。但是,该方法对加速器端的存储层次和存储空间容量要求高,并且加速器端支持的数据结构类型有限。因此,零拷贝方法虽然能够最小化主处理器与加速器之间的数据传输,但是适用范围受限。
(2)数据传输与数据计算重叠。该方法的核心思想为将主处理器与加速器之间的数据传输延迟隐藏于数据计算之中,可以显著提升异构计算系统的效率。该方法通常要求数据计算时间远大于数据传输时间,只有这样才能将数据传输时间很好的重叠与数据计算之中,才能提升异构计算系统效率。但是,该方法对数据传输操作并无优化,对于数据传输时间接近甚至超过数据计算时间的情形,该方法很难将数据传输重叠于数据计算之中。
上述两类异构计算系统中主处理器与加速器之间的数据传输优化方法在一定程度上,面向具体的大规模应用加速都可以提高异构计算的执行效率。但是,零拷贝方法应用范围十分有限;传输与数据计算重叠方法并没有减少数据传输量,甚至会造成不必要的数据传输,严重影响了异构系统的数据传输访问性能。
如何确认最小数据集的传输,解决异构系统数据传输效率低下的难题是本领域技术人员关注的重要技术问题。
发明内容
本发明要解决的技术问题在于:针对异构系统数据传输效率低下的问题,提出一种面向异构系统的数据传输优化方法,避免冗余数据传输,保证最小数据集的传输,减少数据传输量,以提高异构系统数据传输效率和提升异构计算系统效率。
为了解决上述技术问题,本发明的具体技术方案为:
第一步、定义工作流中的处理器集合C:C={c1,c2,…cj,…cN},其中,cj为第j个处理器,cj的属性cptj=core×f×simd,其中j=1,2,…,N,N为异构系统中处理器和加速器的总数,cptj表示处理器cj的处理能力大小,core为cj的核数,f为cj的主频,simd为cj的向量处理单元宽度。由于在工作流中的任务数量很多,任务被分派到处理器后,完成每个任务需要的处理时间与处理器的性能有关,该性能取决于参数cptj。由于用户可以根据自己需要申请数据的存储空间,所以不考虑处理器本地存储容量限制问题。
第二步、定义整个工作流中的任务集T={t1,t2,…ti,…,tM},其中,第i个任务ti=<runtimei,taskid>,runtimei为任务ti运行时间,taskid为执行任务ti所需的数据集,其中i=1,2,…M,M为工作流中任务的个数;
第三步、收集工作流中任务处理需要的原始数据集合D,具体步骤如下:
3.1初始化原始数据集合
3.2定义变量k=1,
3.3初始化任务tk的数据集
3.4通过IntelVtune性能分析工具收集tk运行所需要的数据,收集的数据d为四元组d=<size,T,c,link>,其中,size表示数据的大小,T为引用数据d的任务集合,c为d所在的处理器,link表示数据d相对于T中对应任务的传输方向,有两个值,若link为in,表示该数据为对应任务的输入数据,若link为out,表示该数据为对应任务的输出数据,将数据d加到集合Dk中;
3.5更新数据集D=D∪Dk,将Dk的元素添加到D;
3.6更新k=k+1;
3.7如果k≤M,转3.3,否则,原始数据收集完毕,得到原始数据集合D,转第四步;
第四步、统计工作流中各任务与数据之间的关系。具体方法如下:
4.1令第一任务集合变量ST=T,即将工作流中的任务集T={t1,t2,…ti,…,tM}赋值给ST;
4.2令数据集合SD=D,将数据集合D赋值给集合SD;
4.3定义变量i=1;
4.4任取ST中的一个元素,该任务用ti表示;
4.5定义任务ti所需的数据集
4.6定义变量j=0;
4.7任取SD中任意一个数据,该数据用dj表示;
4.8若任务ti需要引用数据dj,将数据dj加入任务ti所需的数据集daskti,即转4.9;否则,直接转4.9;
4.9更新SD=SD-{dj},从集合中删除元素dj;
4.10若j=j+1,转4.7,否则,数据集合遍历完毕,转4.11;
4.11更新ST=ST-{ti};
4.12若i=i+1,转4.4,否则,任务集合遍历完毕,转第五步;
第五步、在任务运行过程中生成中间数据集。具体步骤如下:
5.1定义第二任务集合变量TT,令TT=T,即将工作流中的任务集T={t1,t2,…ti,…,tM}赋值给TT;
5.2令变量p=1;
5.3任取TT中的一个元素,该任务用tp表示;
5.4定义任务tp生成的中间数据集
5.5采用Intel Vtune性能分析工具统计任务tp运行生成的中间数据,将中间数据放到集合
5.6更新数据集即令
5.7更新TT=TT-{tp};
5.8若p=p+1,转5.4,否则,任务集合遍历完毕,转第六步;
第六步、确认任务运行需要传入的最小数据集。具体步骤如下:
6.1定义第三任务集合变量TDT,令TDT=T,即将工作流中的任务集T={t1,t2,…ti,…,tM}赋值给TDT;
6.2令变量q=1;
6.3任取任务集合TDT中的一个元素,该任务用tq表示;
6.4确认任务tq需要且已经位于tq所在处理器的数据集合和tq需要的数据集合具体方法如下:
6.4.1定义任务tq需要的数据
6.4.2定义任务tq需要且已经位于任务tq所在处理器的数据集合
6.4.3定义集合STD=D,将数据集合D赋值给集合STD;
6.4.4令r=0;
6.4.5任取数据集合STD中一个数据,该数据用dr表示;
6.4.6若任务tq需要引用数据dr,进一步核查dr相对于任务tq的传输方向,转6.4.7,否则,任务tq不需要引用dr,转6.4.10;
6.4.7若数据dr相对于任务tq的传输方向为out,也就是说数据dr已经位于tq所在处理器,转6.4.8,否则,数据dr相对于任务tq的传输方向为in,仅将数据加入任务需要的数据集合,转6.4.9;
6.4.8将数据dr加入tq需要且已经位于tq所在处理器的数据集合
6.4.9将该数据加入tq需要的数据集合
6.4.10STD=STD-{dr};
6.4.11若r=r+1,转6.4.5,否则,tq需要且已经位于tq所在处理器的数据核实遍历完毕,得到tq需要且已经位于tq所在处理器的数据集合和tq需要的数据集合转6.5;
6.5确认由除tq之外的任务产生但位于tq所在处理器的中间数据集具体方法如下:
6.5.1令由除tq之外任务产生但位于tq所在处理器的中间数据集
6.5.2定义第四集合变量TDOT,TDOT=T,即将工作流中的任务集T={t1,t2,…ti,…,tM}赋值给TDOT;
6.5.3令s=1;
6.5.4任取任务集合TDOT中的一个元素,该任务用ts表示;
6.5.5若ts≠tq,即任取的任务不是tq,转6.5.6,否则,转6.5.8;
6.5.6定义由ts生成的中间数据集合
6.5.7将ts生成的中间数据集加入
6.5.8TDOT=TDOT-{ts},从TDOT中删除ts;
6.5.9选出由除tq之外任务产生但位于任务tq所在处理器的中间数据集合;
6.5.10若s=s+1,转6.5.4,否则,转6.6;
6.6计算tq需要传入的最小数据集具体方法如下:
6.6.1定义tq需要传入的最小数据集合
6.6.2即tq最小传输数据集为tq需要的数据集减去tq需要并且已经位于tq所在处理器的数据集再减去tq需要但由除tq之外任务产生且位于tq所在处理器的中间数据集合
6.6.3 TDT=TDT-{tq},从任务集合中删除tq;
6.6.4若q=q+1,转6.3;否则,转第七步;
第七步、结束。
采用本发明可以达到以下技术效果:
1.第六步将处理器之间需要传输的数据集最小化,缓解了异构系统数据传输压力,提高了面向异构系统的数据传输效率;
2.由于数据传输效率的提高,提高了异构系统的带宽利用率,并且加快了面向异构系统的应用程序运行速度,提升了异构计算系统效率。
附图说明
图1为基于PCIE通信模式的异构计算系统体系结构。
图2为本发明面向异构计算系统的数据传输优化方法总体流程图。
具体实施方式
图1为基于PCIE通信模式的由主处理器CPU和加速器(如DSP、GPU、MIC)组成的异构计算系统体系结构示意图,其中,主处理器端拥有内存,加速器端拥有全局存储空间;主处理器与加速器之间通过PCIE总线进行通信和数据传输。
图2为本发明的总体流程图,其具体实施步骤如下:
第一步、定义工作流中的处理器集合C:C={c1,c2,…cj,…cN},其中,cj为第j个处理器,cj的属性cptj=core×f×simd,其中j=1,2,…,N,N为异构系统中处理器和加速器的总数,cptj表示处理器cj的处理能力大小,core为cj的核数,f为cj的主频,simd为cj的向量处理单元宽度。
第二步、定义整个工作流中的任务集T={t1,t2,…ti,…,tM},其中,第i个任务ti=<runtimei,taskid>,runtimei为任务ti运行时间,taskid为执行任务ti所需的数据集,其中i=1,2,…M,M为工作流中任务的个数;
第三步、收集工作流中任务处理需要的原始数据集合D,具体步骤如下:
3.1初始化原始数据集合
3.2定义变量k=1,
3.3初始化任务tk的数据集
3.4通过IntelVtune性能分析工具收集tk运行所需要的数据,收集的数据d为四元组d=<size,T,c,link>,其中,size表示数据的大小,T为引用数据d的任务集合,c为d所在的处理器,link表示数据d相对于T中对应任务的传输方向,有两个值,若link为in,表示该数据为对应任务的输入数据,若link为out,表示该数据为对应任务的输出数据,将数据d加到集合Dk中;
3.5更新数据集D=D∪Dk,将Dk的元素添加到D;
3.6更新k=k+1;
3.7如果k≤M,转3.3,否则,原始数据收集完毕,得到原始数据集合D,转第四步;
第四步、统计工作流中各任务与数据之间的关系。具体方法如下:
4.1令第一任务集合变量ST=T,即将工作流中的任务集T={t1,t2,…ti,…,tM}赋值给ST;
4.2令数据集合SD=D,将数据集合D赋值给集合SD;
4.3定义变量i=1;
4.4任取ST中的一个元素,该任务用ti表示;
4.5定义任务ti所需的数据集
4.6定义变量j=0;
4.7任取SD中任意一个数据,该数据用dj表示;
4.8若任务ti需要引用数据dj,将数据dj加入任务ti所需的数据集即转4.9;否则,直接转4.9;
4.9更新SD=SD-{dj},从集合中删除元素dj;
4.10若j=j+1,转4.7,否则,数据集合遍历完毕,转4.11;
4.11更新ST=ST-{ti};
4.12若i=i+1,转4.4,否则,任务集合遍历完毕,转第五步;
第五步、在任务运行过程中生成中间数据集。具体步骤如下:
5.1定义第二任务集合变量TT,令TT=T,即将工作流中的任务集T={t1,t2,…ti,…,tM}赋值给TT;
5.2令变量p=1;
5.3任取TT中的一个元素,该任务用tp表示;
5.4定义任务tp生成的中间数据集
5.5采用Intel Vtune性能分析工具统计任务tp运行生成的中间数据,将中间数据放到集合
5.6更新数据集即令
5.7更新TT=TT-{tp};
5.8若p=p+1,转5.4,否则,任务集合遍历完毕,转第六步;
第六步、确认任务运行需要传入的最小数据集。具体步骤如下:
6.1定义第三任务集合变量TDT,令TDT=T,即将工作流中的任务集T={t1,t2,…ti,…,tM}赋值给TDT;
6.2令变量q=1;
6.3任取任务集合TDT中的一个元素,该任务用tq表示;
6.4确认任务tq需要且已经位于tq所在处理器的数据集合和tq需要的数据集合具体方法如下:
6.4.1定义任务tq需要的数据
6.4.2定义任务tq需要且已经位于任务tq所在处理器的数据集合6.4.3定义集合STD=D,将数据集合D赋值给集合STD;
6.4.4令r=0;
6.4.5任取数据集合STD中一个数据,该数据用dr表示;
6.4.6若任务tq需要引用数据dr,进一步核查dr相对于任务tq的传输方向,转6.4.7,否则,任务tq不需要引用dr,转6.4.10;
6.4.7若数据dr相对于任务tq的传输方向为out,也就是说数据dr已经位于tq所在处理器,转6.4.8,否则,数据dr相对于任务tq的传输方向为in,仅将数据加入任务需要的数据集合,转6.4.9;
6.4.8将数据dr加入tq需要且已经位于tq所在处理器的数据集合
6.4.9将该数据加入tq需要的数据集合
6.4.10 STD=STD-{dr};
6.4.11若r=r+1,转6.4.5,否则,tq需要且已经位于tq所在处理器的数据核实遍历完毕,得到tq需要且已经位于tq所在处理器的数据集合和tq需要的数据集合转6.5;
6.5确认由除tq之外的任务产生但位于tq所在处理器的中间数据集具体方法如下:
6.5.1令由除tq之外任务产生但位于tq所在处理器的中间数据集
6.5.2定义第四集合变量TDOT,TDOT=T,即将工作流中的任务集T={t1,t2,…ti,…,tM}赋值给TDOT;
6.5.3令s=1;
6.5.4任取任务集合TDOT中的一个元素,该任务用ts表示;
6.5.5若ts≠tq,即任取的任务不是tq,转6.5.6,否则,转6.5.8;
6.5.6定义由ts生成的中间数据集合
6.5.7将ts生成的中间数据集加入
6.5.8TDOT=TDOT-{ts},从TDOT中删除ts;
6.5.9选出由除tq之外任务产生但位于任务tq所在处理器的中间数据集合;
6.5.10若s=s+1,转6.5.4,否则,转6.6;
6.6计算tq需要传入的最小数据集具体方法如下:
6.6.1定义tq需要传入的最小数据集合
6.6.2即tq最小传输数据集为tq需要的数据集减去tq需要并且已经位于tq所在处理器的数据集再减去tq需要但由除tq之外任务产生且位于tq所在处理器的中间数据集合
6.6.3 TDT=TDT-{tq},从任务集合中删除tq;
6.6.4若q=q+1,转6.3;否则,转第七步;
第七步、结束。
Claims (4)
1.一种面向异构系统的数据传输优化方法,其特征在于包括以下步骤:
第一步、定义工作流中的处理器集合C:C={c1,c2,…cj,…cN},其中,cj为第j个处理器,cj的属性cptj=core×f×simd,其中j=1,2,…,N,N为异构系统中处理器和加速器的总数,cptj表示处理器cj的处理能力大小,core为cj的核数,f为cj的主频,simd为cj的向量处理单元宽度;
第二步、定义整个工作流中的任务集T={t1,t2,…ti,…,tM},其中,第i个任务ti=<runtimei,taskid>,runtimei为任务ti运行时间,taskid为执行任务ti所需的数据集,其中i=1,2,…M,M为工作流中任务的个数;
第三步、收集工作流中任务处理需要的原始数据集合D,D中存放的数据d为四元组,d=<size,T,c,link>,其中,size表示数据的大小,T为引用数据d的任务集合,c为d所在的处理器,link表示数据d相对于T中对应任务的传输方向,有两个值,若link为in,表示该数据为对应任务的输入数据,若link为out,表示该数据为对应任务的输出数据;
第四步、统计工作流中各任务与数据之间的关系,具体方法如下:
4.1令第一任务集合变量ST=T;
4.2令数据集合SD=D;
4.3定义变量i=1;
4.4任取ST中的一个元素,该任务用ti表示;
4.5定义任务ti所需的数据集
4.6定义变量j=0;
4.7任取SD中任意一个数据,该数据用dj表示;
4.8若任务ti需要引用数据dj,将数据dj加入任务ti所需的数据集即
转4.9;否则,直接转4.9;
4.9更新SD=SD-{dj},从集合中删除元素dj;
4.10若j=j+1,转4.7,否则,数据集合遍历完毕,转4.11;
4.11更新ST=ST-{ti};
4.12若i=i+1,转4.4,否则,任务集合遍历完毕,转第五步;
第五步、在任务运行过程中生成中间数据集,具体步骤如下:
5.1定义第二任务集合变量TT,令TT=T;
5.2令变量p=1;
5.3任取TT中的一个元素,该任务用tp表示;
5.4定义任务tp生成的中间数据集
5.5采用Intel Vtune性能分析工具统计任务tp运行生成的中间数据,将中间数据放到集合
5.6更新数据集即令
5.7更新TT=TT-{tp};
5.8若p=p+1,转5.4,否则,任务集合遍历完毕,转第六步;
第六步、确认任务运行需要传入的最小数据集,具体步骤如下:
6.1定义第三任务集合变量TDT,令TDT=T;
6.2令变量q=1;
6.3任取任务集合TDT中的一个元素,该任务用tq表示;
6.4确认任务tq需要且已经位于tq所在处理器的数据集合和tq需要的数据集合
6.5确认由除tq之外的任务产生但位于tq所在处理器的中间数据集
6.6计算tq需要传输的最小数据集具体方法如下:
6.6.1定义tq需要传输的最小数据集合
6.6.2即tq最小传输数据集为tq需要的数据集减去tq需要并且已经位于tq所在处理器的数据集再减去tq需要但由除tq之外任务产生且位于tq所在处理器的中间数据集合
6.6.3 TDT=TDT-{tq},从任务集合中删除tq;
6.6.4若q=q+1,转6.3;否则,转第七步;
第七步、结束。
2.如权利要求1所述的一种面向异构系统的数据传输优化方法,其特征在于第三步所述收集工作流中任务处理需要的原始数据集合D的具体步骤如下:
3.1初始化原始数据集合
3.2定义变量k=1,
3.3初始化任务tk的数据集
3.4通过Intel Vtune性能分析工具收集tk运行所需要的数据d,将数据d加到集合Dk中;
3.5更新数据集D=D∪Dk,将Dk的元素添加到D;
3.6更新k=k+1;
3.7如果k≤M,转3.3,否则,原始数据收集完毕,得到原始数据集合D。
3.如权利要求1所述的一种面向异构系统的数据传输优化方法,其特征在于第6.4步所述确认任务tq需要且已经位于tq所在处理器的数据集合和tq需要的数据集合的方法是:
6.4.1定义任务tq需要的数据
6.4.2定义任务tq需要且已经位于任务tq所在处理器的数据集合
6.4.3定义集合STD=D,将数据集合D赋值给集合STD;
6.4.4令r=0;
6.4.5任取数据集合STD中一个数据,该数据用dr表示;
6.4.6若任务tq需要引用数据dr,进一步核查dr相对于任务tq的传输方向,转6.4.7,否则,任务tq不需要引用dr,转6.4.10;
6.4.7若数据dr相对于任务tq的传输方向为out,也就是说数据dr已经位于tq所在处理器,转6.4.8,否则,数据dr相对于任务tq的传输方向为in,仅将数据加入任务需要的数据集合,转6.4.9;
6.4.8将数据dr加入tq需要且已经位于tq所在处理器的数据集合
6.4.9将该数据加入tq需要的数据集合
6.4.10 STD=STD-{dr};
6.4.11若r=r+1,转6.4.5,否则,tq需要且已经位于tq所在处理器的数据核实遍历完毕,得到tq需要且已经位于tq所在处理器的数据集合和tq需要的数据集合
4.如权利要求1所述的一种面向异构系统的数据传输优化方法,其特征在于第6.5步所述确认由除tq之外的任务产生但位于tq所在处理器的中间数据集的方法是:
6.5.1令由除tq之外任务产生但位于tq所在处理器的中间数据集
6.5.2定义第三集合变量TDOT,TDOT=T,即将工作流中的任务集T={t1,t2,…ti,…,tM}赋值给TDOT;
6.5.3令s=1;
6.5.4任取任务集合TDOT中的一个元素,该任务用ts表示;
6.5.5若ts≠tq,转6.5.6,否则,转6.5.8;
6.5.6定义由ts生成的中间数据集合
6.5.7将ts生成的中间数据集加入
6.5.8 TDOT=TDOT-{ts},从TDOT中删除ts;
6.5.9选出由除tq之外任务产生但位于任务tq所在处理器的中间数据集合;
6.5.10若s=s+1,转6.5.4,否则,得到
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610283304.2A CN105975434B (zh) | 2016-04-29 | 2016-04-29 | 面向异构系统的数据传输优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610283304.2A CN105975434B (zh) | 2016-04-29 | 2016-04-29 | 面向异构系统的数据传输优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105975434A true CN105975434A (zh) | 2016-09-28 |
CN105975434B CN105975434B (zh) | 2018-10-02 |
Family
ID=56994483
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610283304.2A Active CN105975434B (zh) | 2016-04-29 | 2016-04-29 | 面向异构系统的数据传输优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105975434B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108052482A (zh) * | 2017-11-13 | 2018-05-18 | 华中科技大学 | 一种gpu间通信的方法及系统 |
CN111061547A (zh) * | 2019-10-24 | 2020-04-24 | 中国科学院计算技术研究所 | 一种异构系统的任务调度方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006026686A1 (en) * | 2004-08-31 | 2006-03-09 | Ascential Software Corporation | User interfaces for data integration systems |
CN102541804A (zh) * | 2011-12-26 | 2012-07-04 | 中国人民解放军信息工程大学 | 一种异构系统中多gpu互连体系结构 |
US20130191848A1 (en) * | 2012-01-25 | 2013-07-25 | International Business Machines Corporation | Distributed Function Execution for Hybrid Systems |
CN104317754A (zh) * | 2014-10-15 | 2015-01-28 | 中国人民解放军国防科学技术大学 | 面向异构计算系统的跨步数据传输优化方法 |
CN104317768A (zh) * | 2014-10-15 | 2015-01-28 | 中国人民解放军国防科学技术大学 | 面向cpu+dsp异构系统的矩阵乘加速方法 |
-
2016
- 2016-04-29 CN CN201610283304.2A patent/CN105975434B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006026686A1 (en) * | 2004-08-31 | 2006-03-09 | Ascential Software Corporation | User interfaces for data integration systems |
CN102541804A (zh) * | 2011-12-26 | 2012-07-04 | 中国人民解放军信息工程大学 | 一种异构系统中多gpu互连体系结构 |
US20130191848A1 (en) * | 2012-01-25 | 2013-07-25 | International Business Machines Corporation | Distributed Function Execution for Hybrid Systems |
CN104317754A (zh) * | 2014-10-15 | 2015-01-28 | 中国人民解放军国防科学技术大学 | 面向异构计算系统的跨步数据传输优化方法 |
CN104317768A (zh) * | 2014-10-15 | 2015-01-28 | 中国人民解放军国防科学技术大学 | 面向cpu+dsp异构系统的矩阵乘加速方法 |
Non-Patent Citations (3)
Title |
---|
《2008 11TH IEEE INTERNATIONAL CONFERENCE ON COMPUTATIONAL SCIENCE AND ENGINEERING》 * |
《计算机工程与应用》 * |
《计算机工程与科学》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108052482A (zh) * | 2017-11-13 | 2018-05-18 | 华中科技大学 | 一种gpu间通信的方法及系统 |
CN108052482B (zh) * | 2017-11-13 | 2020-05-19 | 华中科技大学 | 一种gpu间通信的方法及系统 |
CN111061547A (zh) * | 2019-10-24 | 2020-04-24 | 中国科学院计算技术研究所 | 一种异构系统的任务调度方法及系统 |
CN111061547B (zh) * | 2019-10-24 | 2023-04-11 | 中国科学院计算技术研究所 | 一种异构系统的任务调度方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN105975434B (zh) | 2018-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110119311A (zh) | 一种基于fpga的分布式流计算系统加速方法 | |
CN103605662B (zh) | 一种分布式计算框架参数优化方法、装置及系统 | |
CN102193929B (zh) | 利用词信息熵的搜索方法及其设备 | |
CN104899182A (zh) | 一种支持可变分块的矩阵乘加速方法 | |
Bender et al. | Cache-adaptive algorithms | |
CN103164190B (zh) | 一种全分布式流域生态水文模型的快速并行化方法 | |
CN106873945A (zh) | 基于批处理和流式处理的数据处理架构及数据处理方法 | |
CN104375882B (zh) | 匹配于高性能计算机结构的多级嵌套数据驱动计算方法 | |
CN103336808A (zh) | 一种基于bsp模型的实时图数据处理系统及方法 | |
CN103229146A (zh) | 用于处理计算任务的计算机集群布置及其操作方法 | |
CN103714039A (zh) | 通用计算数字信号处理器 | |
CN101086729A (zh) | 一种基于fpga的动态可重构高性能运算方法与装置 | |
WO2015094269A1 (en) | Hybrid flows containing a continuous flow | |
CN111625218B (zh) | 一种自定义库开发的大数据处理方法及系统 | |
CN105373517A (zh) | 基于Spark的分布式稠密矩阵求逆并行化运算方法 | |
CN103326351A (zh) | 一种基于层次化聚类自动分区的分布式并行潮流计算方法 | |
CN103984677A (zh) | 基于大规模粗粒度嵌入式可重构系统及其处理方法 | |
Ouyang et al. | Hardware/software partitioning for heterogenous mpsoc considering communication overhead | |
CN106227397A (zh) | 基于应用虚拟化技术的计算集群作业管理系统及方法 | |
CN104050117B (zh) | 用于在多个输入/输出(i/o)装置当中执行i/o操作的系统及方法 | |
CN103324538B (zh) | 一种异位分散集群环境分布式并发进程的设计方法 | |
CN102789394A (zh) | 一种并行处理消息的方法、装置、节点及服务器集群 | |
Ma et al. | HW/SW partitioning for region-based dynamic partial reconfigurable FPGAs | |
CN105975434A (zh) | 面向异构系统的数据传输优化方法 | |
Hung et al. | Scheduling nonlinear computational loads |
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 |