CN102662638A - 一种支持帮助线程预取距离参数的阈值边界选取方法 - Google Patents

一种支持帮助线程预取距离参数的阈值边界选取方法 Download PDF

Info

Publication number
CN102662638A
CN102662638A CN2012100915285A CN201210091528A CN102662638A CN 102662638 A CN102662638 A CN 102662638A CN 2012100915285 A CN2012100915285 A CN 2012100915285A CN 201210091528 A CN201210091528 A CN 201210091528A CN 102662638 A CN102662638 A CN 102662638A
Authority
CN
China
Prior art keywords
distance
looking ahead
threshold value
threshold
ahead
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
CN2012100915285A
Other languages
English (en)
Other versions
CN102662638B (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.)
Beijing Institute of Technology BIT
Original Assignee
Beijing Institute of Technology BIT
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 Beijing Institute of Technology BIT filed Critical Beijing Institute of Technology BIT
Priority to CN201210091528.5A priority Critical patent/CN102662638B/zh
Publication of CN102662638A publication Critical patent/CN102662638A/zh
Application granted granted Critical
Publication of CN102662638B publication Critical patent/CN102662638B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及一种支持帮助线程预取距离参数的阈值边界选取方法,属于多核计算机访存性能优化技术领域,可用于提升非规则数据密集应用的执行性能。在共享缓存的多核架构基础上,针对基于交织预取的帮助线程预取距离参数,通过引入预取距离的阈值左边界选取、预取距离的阈值右边界选取、预取距离的阈值边界构造等技术,来自动选取预取距离参数的阈值边界,使得最佳预取距离的参数阈值可在确定的边界范围内获取,以提高帮助线程预取控制的质量。本发明可广泛应用于非规则密集数据访存性能优化、帮助线程预取控制策略中预取距离阈值优化和共享缓存污染控制等方面。

Description

一种支持帮助线程预取距离参数的阈值边界选取方法
技术领域
本发明涉及一种支持帮助线程预取距离参数的阈值边界选取方法,属于多核计算机访存性能优化技术领域,可用于提升非规则数据密集应用的执行性能。
背景技术
近年来,片上多核处理器技术广泛应用于超级计算机、云计算等大型高性能计算领域,此类片上多核处理器技术通常将多个计算内核有机集成在一个处理器芯片中,通过综合利用片上私有缓存、硬件预取、片上共享资源和多核多线程并行执行,来提高应用程序的平均性能。然而,对非规则数据密集型应用来说,这些非规则数据密集访存请求,往往来自该应用中的非规则数据链表和非规则数组,由于它们的当前访存请求地址与下一个访存请求地址往往不具有连续性,导致上述基于局部性的传统硬件预取技术不会产生明显的性能改进效果,这种情况下,基于帮助线程的预取方法被提出,该方法通过构造这类应用线程的预取帮助线程,使预取帮助线程在空闲核上执行,试图提前访问这些需要预取的非规则数据,并仅可能让这些数据在被应用线程访问之前就及时推送至片上共享缓存中,以隐藏该应用线程的片外访存延迟,从而达到改进性能的目的。
针对这类帮助线程预取控制的参数和阈值选取问题,国外学者在《IEEETransactions on Parallel and Distributed Systems》上2009年发表的《Prefetching with Helper Threads for Loosely Coupled MultiprocessorSystems》中,采用了基于PV信号量和同步块参数的经验阈值方法,这类方法的致命缺陷是未支持预取距离参数的控制机制,严重限制了帮助线程的有效应用范围和应用场景;为了克服这一缺陷,我们在《2011 International Conferenceon Parallel Processing Workshops》上2011年发表了《Improving Performanceof the Irregular Data Intensive Application with Small ComputationWorkload for CMPs》,提出了一种基于交织预取的帮助线程控制策略,采用了基于预取距离、预取大小和同步块大小的三控制参数和经验阈值,极大地扩展了帮助线程的应用范围和应用场景。
在以上这类帮助线程预取控制策略中,由于预取控制参数的最佳阈值难以准确地确定,往往不得不采用经验法,人为指定这些预取参数的阈值,这样容易导致过早或过晚的预取情况发生,加剧共享缓存污染,甚至会严重影响性能提升的效果。
为了克服传统经验法的缺陷,减少帮助线程预取带来的共享缓存污染,进一步提升帮助线程的预取性能,本发明提出了一种支持帮助线程预取距离参数的阈值边界选取技术,来为它的最佳阈值优选提供核心技术支撑。迄今为止,尚未见到该项技术的报道。
发明内容
本发明的目的是为了解决帮助线程中预取距离参数的阈值边界选取问题,而提出一种支持帮助线程预取距离参数的阈值边界选取方法。本发明的目的是通过下述技术方案实现的。
为了便于阐明本发明方法所涉及的具体步骤,首先给出本发明方法中涉及的相关技术术语的定义:
定义1:热函数
对应用程序P中的任一函数f(P),利用Intel VTune性能分析器分别获取应用程序P的数据缺失计数、应用程序P的时钟周期计数、函数f(P)的数据缺失计数、函数f(P)的时钟周期计数;如果用函数f(P)的数据缺失计数除以应用程序P的数据缺失计数,其结果不小于ε1,并且用函数f(P)的时钟周期计数除以应用程序P的时钟周期计数,其结果不小于ε2,0<ε1<1,0<ε2<1,则称函数f(P)是一个热函数;其中,ε1、ε2的值选用经验值;这里数据缺失和时钟周期的含义与计算机学科中的含义相同;
定义2:基于交织预取的帮助线程
对一个热函数,若采用了预取距离、预取大小和同步块大小的三控制参数来构建帮助线程的预取控制策略,那么把采用这种预取控制策略的帮助线程称为基于交织预取的帮助线程;
定义3:预取距离的阈值边界
一个预取距离的阈值边界是指该预取距离参数的有效取值范围,即左边界值≤预取距离的阈值≤右边界值;
定义4:目标多核处理器
可使基于交织预取的帮助线程正常运行的片上多核处理器称为目标多核处理器,它须满足至少有两处理核来共享片上总线和一个多路组共享缓存结构;
一种支持帮助线程预取距离参数的阈值边界选取方法,基本思想是针对热函数,高效选取交织预取帮助线程中预取距离参数的阈值边界,其整体框架设计流程如图1所示,其特征在于:
1)开始:按定义1的操作,摘取该应用程序的一个热函数,进入步骤1;若不存在这样的热函数,则转结束;
2)步骤一:预取距离的阈值左边界选取;
3)步骤二:预取距离的阈值右边界选取;
4)步骤三:基于特征2)和特征3)来构造预取距离的阈值边界;
5)结束:退出该方法;
步骤一到步骤三的具体实现步骤如下:
步骤一、预取距离的阈值左边界选取
其特征在于:针对该热函数构造基于交织预取的帮助线程,设置当前预取距离的阈值为0,然后在目标多核处理器上展开预取距离的阈值左边界逐步修正过程;
其具体操作步骤如下:
第1.1步:针对该热函数,按定义2来构造基于交织预取的帮助线程;
第1.2步:取当前预取距离的阈值为0,而预取大小和同步块大小的参数阈值分别采用经验值,让该基于交织预取的帮助线程在定义4的目标多核处理器上执行,如果预取加速比效果大于1,返回预取距离的阈值左边界为0,转第1.5步;否则,转1.3步;
第1.3步:当前预取距离的阈值加1,预取大小和同步块大小的参数阈值分别采用经验值,让该基于交织预取的帮助线程在定义4的目标多核处理器上执行;
第1.4步:如果预取加速比效果大于1或当前预取距离的阈值等于该热函数循环总次数,返回预取距离的阈值左边界为当前预取距离阈值,转第1.5步;否则,转第1.3步;
第1.5步:步骤一结束;
经过上述步骤的操作,即可得到预取距离的阈值左边界;
步骤二、预取距离的阈值右边界选取
其特征在于:在步骤一选取预取距离的阈值左边界基础上,在目标多核处理器上,采用插桩采样方法,获取该热函数的访存地址连续序列信息,然后将它作为基于目标多核处理器的共享缓存模拟结构输入,通过多路组缓存的估算操作,展开预取距离的阈值右边界选取过程;
其具体操作步骤如下:
第2.1步:如果预取距离的阈值左边界为0,返回预取距离的阈值右边界为0,并且使TagR=1,转第2.7步;否则,转第2.2步;
第2.2步:在满足定义4的目标多核处理器上,采用插桩采样方法,获取该热函数的访存地址连续序列信息,该访存地址连续序列信息由热函数的循环体计数值、访存地址组成,即记录1<循环体计数值1,访存地址1>、记录2<循环体计数值2,访存地址2>、……、<结束>,并设置当前记录指针为第一条记录;
第2.3步:依据目标多核处理器中共享缓存的路数和组数,设置基于M路N组的多核共享缓存模拟结构中的M和N取值,即让M等于目标多核处理器中共享缓存的路数,N等于目标多核处理器中共享缓存的组数;
第2.4步:如果当前记录指针到达<结束>则TagR=2,转2.7步;否则,读入当前记录到Y,转第2.5步;
第2.5步:通过对Y中的访存地址除N取余数,来计算该条记录中访存地址所在的组,如果该组的M路中仍有空闲路存在,则在该路中放入该地址,当前记录指针加1;否则,把该记录中热函数的循环体计数值的一半,经取整为X,取ΔI等于取整[(X乘以(热函数体一次循环访存次数-帮助线程一次循环访存次数))/热函数体一次循环访存次数+0.5],再让X等于X加上这个整数修正量ΔI后,将该X值返回作为预取距离的阈值右边界,并且TagR=1,转第2.7步;
第2.6步:转第2.4步;
第2.7步:如果TagR等于2则返回(当前记录指针-1)的热函数循环体计数值作为预取距离的阈值右边界,步骤二结束;
经过上述步骤的操作,即可得到预取距离的阈值右边界;
步骤三、构造预取距离的阈值边界
其特征在于:在步骤一选取预取距离的阈值左边界和步骤二选取预取距离的阈值右边界的基础上,构造预取距离的阈值边界;
其具体操作步骤如下:
第3.1步:将预取距离的阈值左边界赋值给L;
第3.2步:将预取距离的阈值右边界赋值给R;
第3.3步:如果L=该热函数循环的总次数,转第3.6步;
第3.4步:如果L小于该热函数循环总次数且R=该热函数循环总次数,返回L≤预取距离的阈值≤R,转第3.6步;
第3.5步:如果L=R,预取距离的唯一阈值就是L;否则,按定义3,返回L≤预取距离的阈值≤R;
第3.6步:步骤三结束。
经过上述步骤的操作,即可得到预取距离的阈值边界或唯一阈值。
有益效果:
本发明对比已有技术具有以下创新点:
①本发明采用一种支持帮助线程预取距离参数的阈值边界选取方法,与传统经验法相比,主要技术包括预取距离的阈值左边界选取、预取距离的阈值右边界选取、预取距离的阈值边界构造,能够有效确定预取距离参数的阈值边界,为帮助线程中预取距离参数的阈值优选提供了有力支撑;
②与传统枚举取值方法相比,本发明可极大地缩小了预取距离参数阈值的取值范围,在参数阈值动态优化方面有着不可比拟的快速性特点;
③本发明可广泛应用于非规则密集数据访存性能优化、帮助线程预取控制策略中预取距离阈值优化和共享缓存污染控制等方面。
附图说明
图1为本发明的整体框架设计流程图;
具体实施方式
根据上述技术方案,下面结合实施例对本发明作进一步说明;
实施例1
以下面应用程序P中的一个循环函数样本为例,
while(condition){whilebody;}
结合上述循环函数样本举例,给出相关术语的定义如下:
定义1:热函数
对应用程序P中的该循环函数f(P),利用Intel VTune性能分析器分别获取应用程序P的数据缺失计数=65656666、应用程序P的时钟周期计数=78787888、函数f(P)的数据缺失计数=61222666、函数f(P)的时钟周期计数=63636363;用函数f(P)的数据缺失计数除以应用程序P的数据缺失计数,其结果0.93不小于ε1=0.6,并且用函数f(P)的时钟周期计数除以应用程序P的时钟周期计数,其结果0.80不小于ε2=0.6,0<ε1<1,0<ε2<1,则称该循环函数f(P)是一个热函数;
定义2:基于交织预取的帮助线程
对该循环热函数f(P),采用预取距离K、预取大小P和同步块大小B的三控制参数来构建帮助线程的预取控制策略如下:
Figure BSA00000694244000061
},采用这种三参数预取控制策略的帮助线程,称为基于交织预取的帮助线程;
定义3:预取距离的阈值边界
一个预取距离K的阈值边界是指该K阈值的有效取值范围,如左边界值1≤K的阈值≤右边界值22;
定义4:目标多核处理器
如Intel Q6600多核处理器就是一个目标多核处理器,它可使上述基于交织预取的帮助线程在其上正常运行,该多核处理器满足至少有两处理核来共享片上总线和一个多路组共享缓存结构的条件要求;
开始:按定义1的操作,摘取到该应用程序P的一个热函数f(P);
步骤一、预取距离的阈值左边界选取
第1.1步:针对该热函数f(P),按定义2构造基于交织预取的帮助线程;
第1.2步:取当前预取距离的阈值为0,预取大小和同步块大小的参数阈值分别采用经验值5和100,让该基于交织预取的帮助线程在定义4的Q6600目标多核处理器上执行,由于预取加速比效果0.8小于1,转1.3步;
第1.3步:当前预取距离的阈值加1,预取大小和同步块大小的参数阈值分别采用经验值5和100,让该基于交织预取的帮助线程在定义4的Q6600目标多核处理器上执行;
第1.4步:由于预取加速比效果1.21大于1,返回预取距离的阈值左边界为当前预取距离阈值,即1,转第1.5步;
第1.5步:步骤一结束;
经过上述步骤的操作,即可得到预取距离的阈值左边界为1;
步骤二、预取距离的阈值右边界选取
第2.1步:由于预取距离的阈值左边界=1,转第2.2步;
第2.2步:在满足定义4的Q6600多核处理器上,采用插桩采样方法,获取该热函数f(P)的访存地址连续序列信息,如:记录1<1,80671234>、记录2<1,81783221>、记录3<1,87783229>、记录4<2,8434A789>、……、记录J<36,83110011>、……、<结束>,并设置当前记录指针为第一条记录;
第2.3步:依据目标多核处理器中共享缓存的路数=16和组数=1K,设置基于M路N组的多核共享缓存模拟结构中的M和N取值,即让M=16,N=1K=1024;
第2.4步:由于当前记录指针未到<结束>,读入当前记录到Y,即Y=<1,80671234>,转第2.5步;
第2.5步:通过对Y中的访存地址除N取余数=取余((80671234)16/1024)=取余((1000 0000 0110 0111 0001 0010 0011 0100)2/1024)=564,即该条记录中访存地址所在的组为564,如果该组的M=16路中仍有空闲路存在,则在该路中放入该地址=1000 0000 0110 0111 0001 0010 0011 0100,当前记录指针加1;
第2.6步:转第2.4步;这种情况具体说明如下:须继续执行第2.4步到第2.5步,直到第J条记录时,由于取余((83110011)16/1024=17,第17组的M=16路中已无空闲路存在,把该记录中热函数的循环体计数值=36的一半18,经取整为X=18,取ΔI等于取整[(18乘以(热函数体一次循环访存次数10-帮助线程一次循环访存次数8))/热函数体一次循环访存次数10+0.5]=取整[18乘2/10+0.5]=4,再让X等于18加ΔI的4后为22,将该X=22值返回作为预取距离的阈值右边界,并且TagR=1,转第2.7步;
第2.7步:由于TagR=1,步骤二结束;
经过上述步骤的操作,即可得到预取距离的阈值右边界为22;
步骤三、构造预取距离的阈值边界
第3.1步:将预取距离的阈值左边界1赋值给L;
第3.2步:将预取距离的阈值右边界22赋值给R;
第3.3步:如果L=该热函数循环的总次数30000,转第3.6步;
第3.4步:如果L小于该热函数循环总次数且R=该热函数循环总次数,返回L≤预取距离的阈值≤R,转第3.6步;
第3.5步:如果L=R,预取距离的唯一阈值就是L;否则,按定义3,返回L≤预取距离的阈值≤R;
第3.6步:步骤三结束。
经过上述步骤的操作,在第3.5步即可得到预取距离的阈值边界[1,22]。
结束、退出该方法。

Claims (4)

1.一种支持帮助线程预取距离参数的阈值边界选取方法,其基本思想是针对热函数,高效选取交织预取帮助线程中预取距离参数的阈值边界,其特征在于:
1)开始:摘取该应用程序的一个热函数,进入步骤1;若不存在这样的热函数,则转结束;
2)步骤一:预取距离的阈值左边界选取;
3)步骤二:预取距离的阈值右边界选取;
4)步骤三:基于特征2)和特征3)来构造预取距离的阈值边界;
5)结束:退出该方法;
2.根据权利要求1所述的一种支持帮助线程预取距离参数的阈值边界选取方法,其特征在于步骤一中预取距离的阈值左边界选取步骤为
第(1)步:针对该热函数,构造基于交织预取的帮助线程;
第(2)步:取当前预取距离的阈值为0,而预取大小和同步块大小的参数阈值分别采用经验值,让该基于交织预取的帮助线程在目标多核处理器上执行,如果预取加速比效果大于1,返回预取距离的阈值左边界为0,转第(5)步;否则,转(3)步;
第(3)步:当前预取距离的阈值加1,预取大小和同步块大小的参数阈值分别采用经验值,让该基于交织预取的帮助线程在目标多核处理器上执行;
第(4)步:如果预取加速比效果大于1或当前预取距离的阈值等于该热函数循环总次数,返回预取距离的阈值左边界为当前预取距离阈值,转第(5)步;否则,转第(3)步;
第(5)步:步骤一结束;
3.根据权利要求1所述的一种支持帮助线程预取距离参数的阈值边界选取方法,其特征在于步骤二中预取距离的阈值右边界选取步骤为
第(1)步:如果预取距离的阈值左边界为0,返回预取距离的阈值右边界为0,并且使TagR=1,转第(7)步;否则,转第(2)步;
第(2)步:在目标多核处理器上,采用插桩采样方法,获取该热函数的访存地址连续序列信息,该访存地址连续序列信息由热函数的循环体计数值、访存地址组成,即记录1<循环体计数值1,访存地址1>、记录2<循环体计数值2,访存地址2>、……、<结束>,并设置当前记录指针为第一条记录;
第(3)步:依据目标多核处理器中共享缓存的路数和组数,设置基于M路N组的多核共享缓存模拟结构中的M和N取值,即让M等于目标多核处理器中共享缓存的路数,N等于目标多核处理器中共享缓存的组数;
第(4)步:如果当前记录指针到达<结束>则TagR=2,转(7)步;否则,读入当前记录到Y,转第(5)步;
第(5)步:通过对Y中的访存地址除N取余数,来计算该条记录中访存地址所在的组,如果该组的M路中仍有空闲路存在,则在该路中放入该地址,当前记录指针加1;否则,把该记录中热函数的循环体计数值的一半,经取整为X,取ΔI等于取整[(X乘以(热函数体一次循环访存次数-帮助线程一次循环访存次数))/热函数体一次循环访存次数+0.5],再让X等于X加上这个整数修正量ΔI后,将该X值返回作为预取距离的阈值右边界,并且TagR=1,转第(7)步;
第(6)步:转第(4)步;
第(7)步:如果TagR等于2则返回(当前记录指针-1)中热函数循环体计数值作为预取距离的阈值右边界,步骤二结束;
4.根据权利要求1所述的一种支持帮助线程预取距离参数的阈值边界选取方法,其特征在于步骤三中构造预取距离的阈值边界步骤为
第(1)步:将预取距离的阈值左边界赋值给L;
第(2)步:将预取距离的阈值右边界赋值给R;
第(3)步:如果L=该热函数循环的总次数,转第(6)步;
第(4)步:如果L小于该热函数循环总次数且R=该热函数循环总次数,返回L≤预取距离的阈值≤R,转第(6)步;
第(5)步:如果L=R,预取距离的唯一阈值就是L;否则,返回L≤预取距离的阈值≤R;
第(6)步:步骤三结束。
CN201210091528.5A 2012-03-31 2012-03-31 一种支持帮助线程预取距离参数的阈值边界选取方法 Expired - Fee Related CN102662638B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210091528.5A CN102662638B (zh) 2012-03-31 2012-03-31 一种支持帮助线程预取距离参数的阈值边界选取方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210091528.5A CN102662638B (zh) 2012-03-31 2012-03-31 一种支持帮助线程预取距离参数的阈值边界选取方法

Publications (2)

Publication Number Publication Date
CN102662638A true CN102662638A (zh) 2012-09-12
CN102662638B CN102662638B (zh) 2014-07-30

Family

ID=46772139

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210091528.5A Expired - Fee Related CN102662638B (zh) 2012-03-31 2012-03-31 一种支持帮助线程预取距离参数的阈值边界选取方法

Country Status (1)

Country Link
CN (1) CN102662638B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015100674A1 (zh) * 2013-12-31 2015-07-09 华为技术有限公司 数据迁移方法、装置和处理器
CN105930209A (zh) * 2016-04-11 2016-09-07 天津职业技术师范大学 一种自适应的帮助线程预取质量控制方法
CN106776371A (zh) * 2015-12-14 2017-05-31 上海兆芯集成电路有限公司 跨距参考预取器、处理器和将数据预取到处理器的方法
CN106776047A (zh) * 2017-01-19 2017-05-31 郑州轻工业学院 面向非规则数据密集应用的群组式线程预取方法
CN108932206A (zh) * 2018-05-21 2018-12-04 南京航空航天大学 一种三维多核处理器混合缓存架构及方法
CN114817087A (zh) * 2022-05-12 2022-07-29 郑州轻工业大学 基于缓存失效行为的预取距离自适应调整方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050027941A1 (en) * 2003-07-31 2005-02-03 Hong Wang Method and apparatus for affinity-guided speculative helper threads in chip multiprocessors

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050027941A1 (en) * 2003-07-31 2005-02-03 Hong Wang Method and apparatus for affinity-guided speculative helper threads in chip multiprocessors

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
GU ZHIMIN ET AL.: "Improving Performance of the Irregular Data Intensive Application with Small Computation Workload for CMPs", 《PARALLAL PROCESSING WORKSHOPS (ICPPW), 2011 40TH INTERNATIONAL CONFERENCE ON》 *
黄艳,古志民: "帮助线程预取性能的分析和优化", 《电子科技大学学报》 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015100674A1 (zh) * 2013-12-31 2015-07-09 华为技术有限公司 数据迁移方法、装置和处理器
CN106776371A (zh) * 2015-12-14 2017-05-31 上海兆芯集成电路有限公司 跨距参考预取器、处理器和将数据预取到处理器的方法
CN106776371B (zh) * 2015-12-14 2019-11-26 上海兆芯集成电路有限公司 跨距参考预取器、处理器和将数据预取到处理器的方法
CN105930209A (zh) * 2016-04-11 2016-09-07 天津职业技术师范大学 一种自适应的帮助线程预取质量控制方法
CN105930209B (zh) * 2016-04-11 2019-06-25 天津职业技术师范大学 一种自适应的帮助线程预取质量控制方法
CN106776047A (zh) * 2017-01-19 2017-05-31 郑州轻工业学院 面向非规则数据密集应用的群组式线程预取方法
CN106776047B (zh) * 2017-01-19 2019-08-02 郑州轻工业学院 面向非规则数据密集应用的群组式线程预取方法
CN108932206A (zh) * 2018-05-21 2018-12-04 南京航空航天大学 一种三维多核处理器混合缓存架构及方法
CN108932206B (zh) * 2018-05-21 2023-07-21 南京航空航天大学 一种三维多核处理器混合缓存架构及方法
CN114817087A (zh) * 2022-05-12 2022-07-29 郑州轻工业大学 基于缓存失效行为的预取距离自适应调整方法及装置
CN114817087B (zh) * 2022-05-12 2022-11-11 郑州轻工业大学 基于缓存失效行为的预取距离自适应调整方法及装置

Also Published As

Publication number Publication date
CN102662638B (zh) 2014-07-30

Similar Documents

Publication Publication Date Title
Kim et al. Zena: Zero-aware neural network accelerator
CN102662638B (zh) 一种支持帮助线程预取距离参数的阈值边界选取方法
US9189282B2 (en) Thread-to-core mapping based on thread deadline, thread demand, and hardware characteristics data collected by a performance counter
CN102981807B (zh) 一种基于cuda并行环境的gpu程序优化方法
CN109919310B (zh) 一种面向深度学习训练任务的gpu内存优化方法及系统
CN103049241B (zh) 一种提高cpu+gpu异构装置计算性能的方法
JP2017526996A5 (zh)
DE102013114072A1 (de) System und Verfahren zum Hardware-Scheduling von indexierten Barrieren
CN102253919A (zh) 基于gpu和cpu协同运算的并行数值模拟方法和系统
CN105468439A (zh) 在cpu-gpu异构框架下遍历固定半径内邻居的自适应并行算法
CN104699464A (zh) 一种基于依赖网格的指令级并行调度方法
CN101561766B (zh) 一种支持多核帮助线程的低开销的块同步方法
CN105045564A (zh) 图形处理器中的前端动态共享方法
CN102841881A (zh) 一种基于众核处理器的多重积分计算方法
CN106484532B (zh) 面向sph流体模拟的gpgpu并行计算方法
Li et al. Efficient kernel management on GPUs
Wang et al. Gpu register packing: Dynamically exploiting narrow-width operands to improve performance
CN103577160A (zh) 一种面向大数据的特征提取并行处理方法
CN106648901A (zh) 一种多通道信号相关性分析方法及系统
CN105653243A (zh) 一种通用图形处理器多任务并发执行的任务派发方法
Kumar et al. Massively parallel simulations for disordered systems
Li et al. Thread criticality assisted replication and migration for chip multiprocessor caches
Yang et al. A lightweight method for handling control divergence in gpgpus
Zhang et al. Locality protected dynamic cache allocation scheme on GPUs
Zhang et al. Buddy SM: sharing pipeline front-end for improved energy efficiency in GPGPUs

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: 20140730

Termination date: 20150331

EXPY Termination of patent right or utility model