CN101520724B - 重启优化的前瞻线程颗粒及其重启优化方法 - Google Patents

重启优化的前瞻线程颗粒及其重启优化方法 Download PDF

Info

Publication number
CN101520724B
CN101520724B CN2009100483133A CN200910048313A CN101520724B CN 101520724 B CN101520724 B CN 101520724B CN 2009100483133 A CN2009100483133 A CN 2009100483133A CN 200910048313 A CN200910048313 A CN 200910048313A CN 101520724 B CN101520724 B CN 101520724B
Authority
CN
China
Prior art keywords
input parameter
thread
speculative thread
particles
restart
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
Application number
CN2009100483133A
Other languages
English (en)
Other versions
CN101520724A (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.)
University of Shanghai for Science and Technology
Original Assignee
University of Shanghai for 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 University of Shanghai for Science and Technology filed Critical University of Shanghai for Science and Technology
Priority to CN2009100483133A priority Critical patent/CN101520724B/zh
Publication of CN101520724A publication Critical patent/CN101520724A/zh
Application granted granted Critical
Publication of CN101520724B publication Critical patent/CN101520724B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

本发明公开一种重启优化的前瞻线程颗粒及其重启优化方法,该前瞻线程颗粒由输入参数标识部分、执行部分、结果存储部分组成,输入参数标识部分由N+1个依次排列的二进制位构成,它用于标识前瞻线程颗粒是否使用了所述输入参数标识位组对应的输入参数;执行部分由前瞻线程中的若干程序语句构成,用于存储所述前瞻线程颗粒的执行语句;结果存储部分用于存储前瞻线程颗粒的执行结果。该重启优化方法操作步骤如下:A、检测失效的前瞻线程输入参数;B、查找依赖于步骤A中失效的前瞻线程输入参数的前瞻线程颗粒;C、将步骤B查找到的前瞻线程颗粒重启。本发明具有显著优点:它能够迅速判断前瞻失效时必须重启的前瞻线程颗粒,降低线程重启代价。

Description

重启优化的前瞻线程颗粒及其重启优化方法
技术领域
本发明涉及的是计算机领域,提出了一种重启优化的前瞻线程颗粒及其重启优化方法。
背景技术
计算机技术的不断发展和应用领域的广泛深入都对处理器性能有了更高的要求。但是传统的提高处理器性能的手段,例如提高处理器晶体管的集成度、提高处理器时钟频率等受到了极大地限制。这些限制包括处理器工艺和时钟频率已接近极限,其提升变得越来越困难;随着时钟频率的增加,处理器功耗越来越大,并且散热问题也成为影响处理器性能稳定发挥的关键问题。
目前,高性能处理器问题上日益重要的线延迟、功耗以及设计和验证的复杂度等问题共同促进了片上多核处理器(Chip Multi-Processors,CMP)时代的来临。当前主流的商用多核处理器主要针对多线程应用,单个串行程序的加速很难受益于多核结构。如何充分利用高性能计算机的软、硬件资源,加速计算任务的快速完成;面对多年来积累的已验证正确且十分有效的串行应用程序,如何将其移植到超级计算机上高效运行,这些问题长期一直是高性能计算领域最为关心和头痛的问题。基于线程级前瞻(Thread-Level Speculative,TLS)的并行技术是解决这些问题的主要途径之一.前瞻技术推断得出的结果并不一定总是正确的,当前瞻技术推断失效时,必须重启失效的线程,但重启线程的时间开销和资源开销极大,甚至抵消了串行程序并行带来的收益,因此,优化线程重启称为串行程序并行化的关键技术之一,有必要进一步细化线程,减小线程粒度,当线程发生前瞻失效时,只要重启该线程的若干必需部分即可,而不需重启整个线程。
发明内容
本发明要解决的技术问题是提供一种重启优化的前瞻线程颗粒及其重启优化方法,该前瞻线程结构能根据前瞻线程的输入参数在前瞻线程失效时对前瞻线程颗粒的影响来设计控制前瞻线程颗粒重启优化,进而利用该结构优化前瞻线程失效时的重启操作。
该方法能根据前瞻线程的输入参数对前瞻线程颗粒的影响来设计前瞻线程颗粒重启优化控制结构,尽可能减少前瞻失效时的不必要的程序语句的执行,降低前瞻线程重启操作的时间开销和资源开销。
为了达到上述目的,本发明的重启优化的前瞻线程颗粒的技术方案是:
该前瞻线程颗粒由输入参数标识部分、执行部分、结果存储部分组成,输入参数标识部分由N+1个依次排列的二进制位构成,它用于标识前瞻线程颗粒是否使用了所述输入参数标识位组对应的输入参数;执行部分由前瞻线程中的若干程序语句构成,用于存储所述前瞻线程颗粒的执行语句;结果存储部分用于存储前瞻线程颗粒的执行结果。
根据上述的发明构思,本发明的重启优化的前瞻线程颗粒及其重启优化方法采用下述技术方案:
它是根据前瞻线程中各条程序语句对输入参数的使用情况,实现失效线程的重启优化,其具体操作步骤如下:
A、检测失效的前瞻线程输入参数;
B、查找依赖于步骤A中失效的前瞻线程输入参数的前瞻线程颗粒;
C、将步骤B查找到的前瞻线程颗粒重启。
上述步骤B查找依赖于步骤A中失效的前瞻线程输入参数的前瞻线程颗粒的操作步骤如下:
B1、判断前瞻线程颗粒是否查找完毕,如果是,则本步骤结束,否则转步骤B2;
B2、判断所述的前瞻线程颗粒的输入参数标识部分的第1个二进制位是否为0,如果是,则转步骤B1,否则转步骤B3;
B3、判断失效的前瞻线程输入参数对应的前瞻线程颗粒的输入参数标识部分中的二进制位是否为1,如果是,则标识前瞻线程颗粒为必需重启,否则转步骤B1。
本发明与已有技术相比较,具有如下面显而易见的突出实质性特点和显著优点:本发明能够迅速判断前瞻失效时必须重启的前瞻线程颗粒,降低线程重启代价。
附图说明
图1是本发明的重启优化的前瞻线程颗粒的结构示意图;
图2是本发明中的查找必需重启的前瞻线程颗粒操作的流程图。
具体实施方式
本发明的一个优选实施例结合附图详述如下:本实施例所述方案的应用环境是面向多核处理器的前瞻线程并行执行环境,本实施例不限定所述技术方案应用环境中多核处理器架构和线程调度方式。
下面结合说明书附图和具体实施方式对本发明作进一步详细的说明。
如图1所示,上述重启优化的前瞻线程颗粒由输入参数标识部分、执行部分、结果存储部分组成,输入参数标识部分由N+1个依次排列的二进制位构成,它用于标识前瞻线程颗粒是否使用了所述输入参数标识位组对应的输入参数;执行部分由前瞻线程中的若干程序语句构成,用于存储所述前瞻线程颗粒的执行语句;结果存储部分用于存储前瞻线程颗粒的执行结果。
参照图2,示出了本发明中的直接查找必需重启的前瞻线程颗粒操作的流程图。
步骤101、判断前瞻线程颗粒是否查找完毕。
步骤102、判断所述的前瞻线程颗粒的输入参数标识部分的第1个二进制位是否为0。
如果第1个二进制位为0,则表明该前瞻线程颗粒没有使用前瞻的输入参数;如果为1,则表明该前瞻线程颗粒使用了前瞻的输入参数,但该前瞻的输入参数的位置由下一步确定。
步骤103、判断失效的前瞻线程输入参数对应的前瞻线程颗粒输入参数标识部分中的二进制位是否为1。
如果二进制为1,则表明该前瞻线程颗粒使用了前瞻失效的输入参数,且该前瞻线程颗粒必需重启。
步骤104、标识上述前瞻线程颗粒为必需重启。
以上对本一种前瞻线程颗粒重启优化方法,进行了详细的介绍。本文结合说明书附图和具体实施例进行阐述只是用于帮助理解本发明的方法和核心思想;同时,对于本领域的一般技术人员,依据本发明的方法和思想,在具体实施方式和应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (1)

1.一种重启优化的前瞻线程颗粒的重启优化方法,其特征在于,根据一种重启优化的前瞻线程颗粒,它由输入参数标识部分、执行部分、结果存储部分组成,输入参数标识部分由N+1个依次排列的二进制位构成,输入参数标识部分用于标识前瞻线程颗粒是否使用了所述输入参数标识位组对应的输入参数;执行部分由前瞻线程中的若干程序语句构成,用于存储所述前瞻线程颗粒的执行语句;结果存储部分用于存储前瞻线程颗粒的执行结果,其具体操作步骤如下:
A、检测失效的前瞻线程输入参数;
B、查找依赖于步骤A中失效的前瞻线程输入参数的前瞻线程颗粒;
C、将步骤B查找到的前瞻线程颗粒重启。
上述步骤B查找依赖于步骤A中失效的前瞻线程输入参数的前瞻线程颗粒的操作步骤如下:
B1、判断前瞻线程颗粒是否查找完毕,如果是,则本步骤结束,否则转步骤B2;
B2、判断所述的前瞻线程颗粒的输入参数标识部分的第1个二进制位是否为0,如果第1个二进制位为0,表明该前瞻线程颗粒没有使用前瞻的输入参数,则转步骤B1,如果第1个二进制位为1,表明该前瞻线程颗粒使用了前瞻的输入参数,则转步骤B3;
B3、判断失效的前瞻线程输入参数对应的前瞻线程颗粒的输入参数标识部分中的二进制位是否为1,如果是,则标识前瞻线程颗粒为必需重启,否则转步骤B1。
CN2009100483133A 2009-03-26 2009-03-26 重启优化的前瞻线程颗粒及其重启优化方法 Expired - Fee Related CN101520724B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009100483133A CN101520724B (zh) 2009-03-26 2009-03-26 重启优化的前瞻线程颗粒及其重启优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009100483133A CN101520724B (zh) 2009-03-26 2009-03-26 重启优化的前瞻线程颗粒及其重启优化方法

Publications (2)

Publication Number Publication Date
CN101520724A CN101520724A (zh) 2009-09-02
CN101520724B true CN101520724B (zh) 2012-05-02

Family

ID=41081334

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009100483133A Expired - Fee Related CN101520724B (zh) 2009-03-26 2009-03-26 重启优化的前瞻线程颗粒及其重启优化方法

Country Status (1)

Country Link
CN (1) CN101520724B (zh)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050144602A1 (en) * 2003-12-12 2005-06-30 Tin-Fook Ngai Methods and apparatus to compile programs to use speculative parallel threads

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050144602A1 (en) * 2003-12-12 2005-06-30 Tin-Fook Ngai Methods and apparatus to compile programs to use speculative parallel threads

Also Published As

Publication number Publication date
CN101520724A (zh) 2009-09-02

Similar Documents

Publication Publication Date Title
CN101807144B (zh) 一种前瞻多线程并行执行优化方法
CN105389158B (zh) 数据处理系统、编译器、处理器的方法和机器可读介质
US10782977B2 (en) Fault detecting and fault tolerant multi-threaded processors
US8954775B2 (en) Power gating functional units of a processor
US20150046679A1 (en) Energy-Efficient Run-Time Offloading of Dynamically Generated Code in Heterogenuous Multiprocessor Systems
US9170792B2 (en) Dynamic optimization of pipelined software
AU2016281599A1 (en) Decoupled processor instruction window and operand buffer
KR20140113444A (ko) 공유 메모리에 대한 액세스들의 동기화를 완화하기 위한 프로세서들, 방법들 및 시스템들
AU2016281598A1 (en) Mapping instruction blocks into instruction windows based on block size
CN103810035A (zh) 智能上下文管理
CN103678571A (zh) 应用于单台多核处理器主机的多线程网络爬虫执行方法
WO2021218633A1 (zh) Cpu指令处理方法、控制器和中央处理单元
Mittal A survey of value prediction techniques for leveraging value locality
CN101520724B (zh) 重启优化的前瞻线程颗粒及其重启优化方法
CN102063291B (zh) 一种前瞻线程的多级并行执行方法
CN111857830B (zh) 一种提前转发指令数据的通路设计方法、系统及存储介质
CN101814019B (zh) 一种前瞻失效的线程识别方法
CN108845832B (zh) 一种提高处理器主频的流水线细分装置
US11880231B2 (en) Accurate timestamp or derived counter value generation on a complex CPU
Mehta Speculative register reclamation
CN102012841B (zh) 一种前瞻失效线程重启调度方法
RU2427883C2 (ru) Окончание инструкции с учетом потребляемой энергии
CN101526894A (zh) 控制前瞻线程颗粒重启优化的结构
Ootsu et al. Performance Estimation of Hot-Path Limited Speculative Multithreading on Entire Program
CN102073482B (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: 20120502

Termination date: 20150326

EXPY Termination of patent right or utility model