当前位置: 首页 > 专利查询>上海大学专利>正文

一种前瞻失效线程的划分方法技术

技术编号:6066279 阅读:343 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种前瞻失效线程的划分方法,其具体步骤如下:A、检测前瞻失效线程;B、对确定前瞻失效线程的描述;C、对确定前瞻失效线程的重启范围的描述;D、根据前瞻失效线程和前瞻失效线程的重启范围的描述求出各个失效参数的距离和最大距离,将的距离中距离最大距离作为前瞻失效线程划分基准N;E、根据步骤D得到的距离和最大距离对前瞻失效线程进行划分,合并小线程,满足新的线程体积和划分基准N相近;F、前瞻失效线程划分结束。该方法能够消除线程间的数据相关性,减少线程的控制开销,减少了线程重启所消耗的资源和时间。

A method for partitioning a lookahead failure thread

The invention discloses a prospective failure thread partition method, the specific steps are as follows: A, B, prospective failure detection thread; to determine the prospective failure thread description; C, to determine the scope of the prospective failure of thread restart description; D, the distance and the maximum distance of each failure parameters calculated according to prospective thread failure the failure to restart the thread and forward a description of the scope, the distance in the distance as the maximum distance of prospective failure thread partition benchmark N; E, according to the step D to get the distance and the maximum distance to classify the prospective failure with small thread, thread, thread size and meet the new N benchmarks are similar; F, prospective thread failure the end of division. This method can eliminate the data dependency among threads, reduce the control overhead of threads, and reduce the resource and time consumed by thread restart.

【技术实现步骤摘要】

本专利技术涉及,属于计算机

技术介绍
目前,高性能处理器仅仅提高处理器主频和复杂的指令流水线技术已经难以显著 提高其性能,而且这样做还会导致高功耗和散热等棘手问题,因此,单片多核处理器(Chip Multi-Processors, CMP)技术成为提高处理器性能的关键技术之一。虽然CMP技术对并行 执行多线程有很好的效果,但现在大多数程序还都是串行程序,如何将这些串行程序应用 于CMP平台,并让其高效的运行,这些问题一直阻碍着高性能计算的发展。基于线程级前瞻(Thread-Level Speculative, TLS)的并行技术是解决这些问题 的主要途径之一。但是前瞻技术推断得出的结果并不一定总是正确,这表示有一部分线程 必然会前瞻失效,前瞻失效线程的重启可能造成极大的资源开销。
技术实现思路
本专利技术的目的在于针对现有技术存在问题,是提供一种前瞻失效线程的划分方 法,该方法能够对前瞻失效线程进行再次划分,消除线程间的数据相关性,减少线程的控制 开销,又能够保持线程间的访存负载平衡,减少线程重启所消耗的资源和时间。为达到上述目的,本专利技术的构思是将前瞻失效线程划分为更小的颗粒,在进行线 程划分时,兼顾线程的体积、线程间的数据相关性、线程间的缓存负载平衡的制约因素,其 中,线程体积为线程所含的指令数,相对均等的线程体积能够使程序加载运行过程中各个 处理器核在指令执行、访存负载更加均衡,线程的体积足够大能忽略线程的控制开销,有利 于挖掘线程级并行性,发挥多线程结构的优势。根据上述的专利技术构思,本专利技术采用下述技术方案,其特征在于,其具体操作步骤如下A、检测前瞻失效线程;B、对确定前瞻失效线程的描述;C、对确定前瞻失效线程的重启范围的描述;D、根据前瞻失效线程和前瞻失效线程的重启范围的描述求出各个失效参数的距离和 最大距离,将距离中最大距离作为前瞻失效线程划分基准N ;E、根据步骤D得到的距离和最大距离对前瞻失效线程进行划分,合并小线程,满足划 分后的线程体积和划分基准N相近;F、前瞻失效线程划分结束。上述步骤B中所述的对前瞻失效线程的描述,其具体描述如下Bi、令前瞻失效线程中的任意一个前瞻失效参数^在线程Tm的第k行处第η次引入, 记为Pm (xn) =k,线程Tm的总代码行数记为Lm ;上述步骤C中所述的对确定前瞻失效线程的重启范围的描述,其具体如下Cl、若前瞻失效线程中有一个失效参数X,则该前瞻失效线程的重启范围为=Pm(X1)到 PmOO,记为PmOO-Pm(X1),其中η为该参数最后一次调用,m为线程号;C2、若前瞻失效线程中有多个失效参数X,y……z,则前瞻失效线程 的重启范围为该多个失效参数的重启范围的并集,记为(PmOO-Pm(X1)) U ( Pm(Yn)-Pm(Y1)) U ……U ( Pm(Zn)-Pm(Z1));上述步骤D中所述的根据前瞻失效线程和前瞻失效线程的重启范围的描述方法求出 各个失效参数的距离和最大距离,将最大距离作为前瞻失效线程的划分基准N,其具体操作 步骤如下首先,令前瞻失效处理中任意前瞻失效参数x、y,线程 \、τ2,X e Ti、ye 1~2,乂到7的 距离表示前瞻失效参数X到前瞻失效参数1的代码行数,记为D (X,y),然后,分别求出各个 失效参数的距离和最大距离,将最大距离作为前瞻失效线程的划分基准N,其具体如下D1、若一个前瞻失效线程中包含一个前瞻失效参数,x=y, T1= T2,则χ到y的距离和最 大距离为D (X,y) = P1 (xn) -P1 (Xlri),N=maxD (x, y);D2、若一个前瞻实效参数包含在多个前瞻失效线程中,x=y,T1 φ Τ2,且存在从一个前瞻线程T1到另一个前瞻线程T2的路径》,则χ到y沿路径f的距离D I (x, y) = + ;若一个前瞻线程T1到另一个前瞻线程路径 为唯一路径,则路径ι的距离和最大距 离为=D(X,y)= Dl (X,y),N=max D (x, y);D3、若一个前瞻失效线程中包含多个前瞻失效参数,χ本y,Tl= T2,则χ到y的距离和 最大距离,D (X,y) = P1 (xn) -P1 (yn),N=maxD (χ, y)。本专利技术的与现有技术相比较,具有如下显而易见的 突出实质性特点和显著优点该方法对前瞻失效线程进行再次划分能够消除线程间的数据 相关性,减少线程的控制开销,又能够保持线程间的访存负载平衡,增加了正确线程执行的 重用性、减少了线程重启所消耗的资源和时间。附图说明图1是本专利技术的的流程图。 具体实施例方式下面结合说明书附图和具体实施方式对本专利技术作进一步详细的说明。本实施例所述方案的应用环境是面向多核处理器的前瞻线程并行执行环境,本实 施例不限定所述技术方案应用环境中多核处理器架构和线程划分方式。参照图1,本专利技术的,其具体步骤如下 步骤101、检测前瞻失效线程;步骤102、对确定前瞻失效线程进行描述,其描述如下令前瞻失效线程中的任一个前 瞻失效参数y在线程Tm的第k行第η次被引入,该前瞻失效线程中的参数的最后一次被调 用,记为Pm (yn) =k,线程Tm的代码行数记为Lm ;步骤103、确定前瞻失效线程的重启范围,其描述如下若前瞻失效线程中有一个失效 参数y,则该前瞻失效线程的重启范围为Pffl(Y1)到?111(711),记为?111(711)- 1(71),其中,11为该参数最后一次调用,m为线程号;若前瞻失效线程中有多个失效参数x、y……z,则前瞻失 效线程的重启范围为该多个失效参数的重启范围的并集,记为(Pm(Xn)-Pm(X1)) U ( Pffl(Yn)-Pm(Y1)) U-· U ( Pm(Zn)-Pm(Z1));步骤104、根据前瞻失效线程和前瞻失效线程的重启范围的描述求出各个失效参数的 距离和最大距离,将最大距离作为前瞻失效线程划分基准N,其具体描述如下首先,令前瞻失效处理中任意前瞻失效参数x、y,线程T1、T2,X e τι y e τ」χ到y 的距离表示前瞻失效参数X到前瞻失效参数1的代码行数,记为D (X,y),然后,分别求出各 个失效参数的距离和最大距离,将最大距离作为前瞻失效线程的划分基准N,其具体如下 步骤1041、若一个前瞻失效线程中包含一个前瞻失效参数,x=y, T1= T2,则χ到y的距 离和最大距离为D (x, y) = P1 (xn) -P1 (Xlri),N=maxD (x, y);步骤1042、若一个前瞻实效参数包含在多个前瞻失效线程中,x=y, T1 # T2,且存在从一个前瞻线程T1到另一个前瞻线程T2的路径I,则χ到y沿路径?的距离D I (x, y) = + ;若一个前瞻线程T1到另一个前瞻线程路径 为唯一路径,则路径 的 距离和最大距离为=D(X,y)= D (x y), N=max D (χ, y);步骤1043、若一个前瞻失效线程中包含多个前瞻失效参数,χ工y,Tl= T2,则χ到y的 距离和最大距离,D (x, y) = P1 (xn) -P1 (yn),N=maxD (χ, y);步骤105、根据步骤104所求出的距离和最大距离将前瞻失效线程进行划分,合并小线 程,满足线程体积和划分基准N相近;步骤106本文档来自技高网...

【技术保护点】
一种前瞻失效线程的划分方法,其特征在于该方法是:将前瞻失效线程划分为更小的颗粒,在进行线程划分时,兼顾线程的体积、线程间的数据相关性、线程间的访存负载平衡的制约因素,其中,线程的体积为线程所含的指令数,相对均等的线程体积能够使程序加载运行过程中各个处理器核在指令执行、访存负载更加均衡,线程的体积足够大能忽略线程的控制开销,有利于挖掘线程级并行性,发挥多线程结构的优势,其具体步骤如下:A、检测前瞻失效线程;B、对确定前瞻失效线程的描述;C、对确定前瞻失效线程的重启范围的描述;D、根据前瞻失效线程和前瞻失效线程的重启范围的描述求出各个失效参数的距离和最大距离,将距离中最大距离作为前瞻失效线程划分基准N;E、根据步骤D得到的距离和最大距离对前瞻失效线程进行划分,合并小线程,满足划分后的线程体积和划分基准N相近;F、前瞻失效线程划分结束。

【技术特征摘要】

【专利技术属性】
技术研发人员:赵文江杨旭涛杨洪斌吴悦徐振坤
申请(专利权)人:上海大学
类型:发明
国别省市:31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1