CN102495726B - 机会多线程方法及处理器 - Google Patents
机会多线程方法及处理器 Download PDFInfo
- Publication number
- CN102495726B CN102495726B CN201110361140.8A CN201110361140A CN102495726B CN 102495726 B CN102495726 B CN 102495726B CN 201110361140 A CN201110361140 A CN 201110361140A CN 102495726 B CN102495726 B CN 102495726B
- Authority
- CN
- China
- Prior art keywords
- thread
- instruction
- clock period
- clock cycle
- clock
- 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
- 238000000034 method Methods 0.000 title claims abstract description 20
- 206010038743 Restlessness Diseases 0.000 claims description 5
- 238000004519 manufacturing process Methods 0.000 claims description 5
- 230000001960 triggered effect Effects 0.000 description 6
- 230000007547 defect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3867—Concurrent instruction execution, e.g. pipeline, look ahead using instruction pipelines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3851—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
Abstract
本发明公布了一种机会多线程方法及处理器。该方法包括以下步骤:如果第零线程、第一线程、第二线程、第三线程都有指令准备好且等待执行时,第零时钟周期、第一时钟周期、第二时钟周期、第三时钟周期就被固定的分配给第零线程、第一线程、第二线程、第三线程;如果有一个线程由于指令没有准备好而无法在指定的时钟周期发出指令,而上一个线程在上一个指定的时钟周期发出一定的指令后仍然有指令准备好且等待执行时,上一个线程就占用指定的时钟周期。处理器包括一个指令内存,一个指令解码,一个指令流控制器和算术逻辑单元,所述机会多线程处理器为每级的流水线增加一个线程指令有效预测电路和一组2维的线程身份寄存器。
Description
技术领域
本发明涉及一种多线程处理器技术(Multi-threading).特别是涉及一种机会多线程方法及处理器。
背景技术
多线程并行处理技术(Multi-Threading)被广泛的应用在高性能处理器的设计中以降低高速处理器指令执行中存在的等待周期的影响以提高处理器的性能和运行效率。其中用的最普遍的是同步多线程技术(Simultaneous Multi-threading) 或叫 SMT。如 Intel 的 Hyper-Threading, IBM 的 POWER5, Sun Microsystems 的 UltraSPARC T2及 MIPS 的 MT 都是采用了SMT技术。
SMT技术除了需要给每个线程都有自己的一套执行程序所需的寄存器外还要在每级的 流水线加上线程跟踪逻辑,增加共享资源的尺寸,如指令Cache, TLBs等。其线程跟踪逻辑不仅要跟踪线程的行程还要检查和判断该线程是否已执行完成。由于会有大量的线程处于执行或半执行状态,因而CPU的Caches及TLB的尺寸必须足够大以避免不必要的线程之间的Thrashing。
虽然SMT技术能提高处理器的运算能力但由于硬件的复杂程度大大提高因而很难应用于嵌入式处理器及低功耗处理器的设计。
为了克服SMT多线程控制电路的复杂性和降低功耗。另一类简化的多线程技术,分时多线程技术,也得到一定应用。分时多线程技术是指在一定的指令周期内只有一个线程在运行。它又可分成分块多线程(BLOCK MULTI-THREADING)和交错多线程(INTERLEAVED MULTI-THREADING)。分块多线程技术因为其对处理器的运行效率提高非常有限而通常用于像微控制器(MICRO-CONTROLER)等低性能处理器。交错多线程技术因为其控制电路简单但其运算能力和效率比单线程处理器有提高明显而在一要求高性能低功耗的处理器中得到一定的推广应用。其中典型的代表就是令牌触发多线程技术 (Token Triggered threading)。
这种多线程技术有如下几个特点:
(1)它是一种分时执行的过程。每一个线程的执行是按自己所授予的时钟周期来执行。而每个时钟周期只有一个线程发出指令。
(2)一个线程通过后会告诉下个周期应该是哪个线程该启动。这样大大的简化了线程选择硬件。
(3)硬件保证了每个线程都有相同的指令执行时间
(4)运算结果能保证在指定的周期内完成。因此不需要指令执行相关检查和绕行硬件
图一给出了一个四线程的令牌触发多线程的多线程执行时序图。
令牌触发多线程技术在简化多线程的硬件结构降低功耗上效果明显,但是也因此降低了处理器运算单元的使用效率尤其是单个线程的处理效率下降以致处理器的执行能力比SMT要降低很多。
下面是目前的Sandblaster2.0的令牌触发多线程结构所存在的一些缺陷
1.为确保线程之间不会互相干扰及简化硬件结构而采用的分时顺序执行的策略的同时也造成了时钟周期的使用效率降低。也降低了单个线程的处理能力。比如线程T1由于指令Miss而需要从外部读取时,由于外部存储器的速度较慢而导致T1不能及时取得指令而线程T0则有指令等待的执行.但是由于结构限制了时钟周期C1只能被用于T1这时时钟周期C1就被浪费了
2.为了避免线程之间的Thrashing及简化跟踪电路,Sandblaster2.0设计成每个线程都有自己一个完全独立的指令内存。线程之间完全不能分享或共享其他线程的指令内存而极大的浪费了内存资源。
发明内容
本发明目的是针对现有技术存在的缺陷提供一种机会驱动多线程方法及处理器。
本发明为实现上述目的,采用如下技术方案:
本发明机会多线程方法,机会驱动多线程方法使用第零线程、第一线程、第二线程、第三线程和第零时钟周期、第一时钟周期、第二时钟周期、第三时钟周期,机会多线程方法包括以下步骤:
一、如果第零线程、第一线程、第二线程、第三线程都有指令准备好且等待执行时,第零时钟周期、第一时钟周期、第二时钟周期、第三时钟周期就被固定的分配给第零线程、第一线程、第二线程、第三线程;
二、如果有一个线程由于指令没有准备好而无法在指定的时钟周期发出指令,而上一个线程在上一个指定的时钟周期发出一定的指令后仍然有指令准备好且等待执行时,上一个线程就占用指定的时钟周期。
机会多程方法的处理器,包括一个指令内存(I-Cache), 一个指令解码(I-decoder), 一个指令流控制器(Branch)和算术逻辑单元(ALUs), 每个线程都有自己的一套执行程序所需的寄存器外还要增加一个线程指令有效预测电路和在每级的流水线加上线程跟踪逻辑或线程身份设别电路;
所述机会多线程方法为增加一个线程指令有效预测电路和为每级的流水线增加一组2维的线程身份寄存器。
所述指令有效预测电路是用于预测下个时钟周期设定的线程是否有指令需求执行或指令是否有效(Valid),如果不有效就把该时钟周期让给当前线程。
所述一组2维的线程身份(ID)寄存器则是用于跟踪线程指令在每级流水线的执行情况以保证结果数据不会被搞混乱。
可推广到n 个线程和相应的n个时钟周期数,n为大于1的自然数。
本发明每个线程的起始执行周期不再固定不变;如果某个线程由于指令miss而在分配给该线程的时钟周期内没有可执行的指令而其前一个线程仍然有指令等待执行时,其前一位线程可占用现有线程的时钟周期;每个线程,无论其是在哪个时钟周期发出的,其执行所需周期数仍然不变;为避免线程之间的混乱,每个线程的ID是一个2维的ID。
附图说明
图 1 :令牌触发 多线程时序图;
图 2 :典型的HARVARD结构的处理器;
图 3 :机会驱动多线程处理器结构图;
图 4 :机会驱动多线程时序图。
具体实施方式
图2是一个典型的Harvard 结构的处理器.它有一个指令内存(I-Cache), 一个指令解码(I-decoder), 一个指令流控制器(Branch), 算术逻辑单元(ALUs)。一个多线程结构的处理器通常需要给每个线程都有自己的一套执行程序所需的寄存器外还要根据所用技术不同而在每级的流水线加上线程跟踪逻辑或线程身份设别电路
机会多线程处理器结构则是在一个典型的处理器结构上给每个线程一套自己的执行程序寄存器外还要为每级的流水线增加一个线程指令有效预测电路和一组2维的线程身份寄存器。其逻辑框图见图3。指令有效预测电路是用于预测下个时钟周期设定的线程指令是否有效(Valid)。如果不有效就把该时钟周期让给当前线程。
一组2维的线程身份(ID)寄存器则是用于跟踪线程指令在每级流水线的执行情况以保证结果数据不会被搞混乱。
机会多线程技术的工作原理如下:
1.如果所有线程P0, P1, P2, P3都有指令准备好了(Valid)等待执行时,时钟周期C0, C1, C2, C3就被固定的分配给线程P0, P1, P2, P3.
2. 如果有一个线程,比如T1由于指令没有准备好(miss)而无法在指定的时钟周期发出指令。但是线程T0在时钟周期C0发出一定的指令后仍然有指令准备好了等待执行时,P0就可占用时钟周期C1,为了避免同一个线程在不同时钟周期发出的指令以避免混乱。机会多线技术将每个线程的命名采用了2维命名法。即P0在时钟周期C0时发出的指令是P0,0,P0在时钟周期C1时发出的指令是P0,1,同样的当线程P2没有指令在时钟周期C2需要执行时而T1有指令准备好了等待执行时,P1可以占用C2时钟周期。而相应的线程P1在周期C2时发出的指令被命名成P1,1
图4给出了一个4线程,4级流水线的机会多线程的操作控制流程。图中,Ci 是时钟周期数,Pij 是线程身份。
Claims (2)
1.一种机会多线程方法,其特征在于,所述机会多线程方法为增加一个线程指令有效预测电路和为每级的流水线增加一组2维的线程身份寄存器;所述指令有效预测电路是用于预测下个时钟周期设定的线程是否有指令需求执行或指令是否有效(Valid),如果不有效就把该时钟周期让给当前线程;所述一组2维的线程身份寄存器则是用于跟踪线程指令在每级流水线的执行情况以保证结果数据不会被搞混乱;机会多线程方法使用第零线程、第一线程、第二线程、第三线程、…第n线程和第零时钟周期、第一时钟周期、第二时钟周期、第三时钟周期、…第n个时钟周期,机会多线程方法包括以下步骤:
一、如果第零线程、第一线程、第二线程、第三线程、…第n线程都有指令准备好且等待执行时,第零时钟周期第零线程发出指令,第一时钟周期第一线程发出指令,第二时钟周期第二线程发出指令,第三时钟周期第三线程发出指令,...第n时钟周期第n线程发出指令;
二、如果有一个线程由于指令没有准备好而无法在指定的时钟周期发出指令,而上一个线程在上一个指定的时钟周期发出一定的指令后仍然有指令准备好且等待执行时,上一个线程就占用指定的时钟周期;
其中,每个线程的命名采用二维命名法,第零线程在第零时钟周期C0发出指令时,线程命名为P0,0,第一线程在第一时钟周期C1发出指令时,线程命名为P1,0,第二线程在第二时钟周期C2发出指令时,线程命名为P2,0,...第n线程在第n时钟周期Cn发出指令时,线程命名为Pn,0;
当第一线程在第一时钟周期C1没有指令需要执行时,而第零线程有指令准备好并等待执行时,第零线程可以占用第一时钟周期C1,线程被命名成P0,1,当第二线程在第二时钟周期C2没有指令需要执行时,而第一线程有指令准备好并等待执行时,第一线程可以占用第二时钟周期C2,线程被命名成P1,1,...第n线程在第n时钟周期Cn没有指令需要执行时,而第n-1线程有指令准备好并等待执行时,第n-1线程可以占用第n时钟周期Cn,线程被命名成Pn-1,1;
类似的,当第二线程在第二时钟周期C2没有指令需要执行时,第一线程也没有指令准备好,而第零线程有指令准备好且等待执行时,第零线程可以占用第二时钟周期C2,线程被命名成P0,2,当第三线程在第三时钟周期C3没有指令需要执行时,第二线程也没有指令准备好,而第一线程有指令准备好并等待执行时,第一线程可以占用第三时钟周期C3,线程被命名成P1,2,...第n线程在第n时钟周期Cn没有指令需要执行时,第n-1线程也没有指令准备好,而第n-2线程有指令准备好并等待执行时,第n-2线程可以占用第n时钟周期Cn,线程被命名成Pn-2,2; 用此二维命名法以保证结果数据不会被搞混乱。
2.一种利用权利要求1所述的机会多线程方法的机会多线程处理器,包括一个指令内存(I-Cache),一个指令解码(I-decoder),一个指令流控制器(Branch)和算术逻辑单元(ALUs),每个线程都有自己的一套执行程序所需的寄存器外还要增加一个线程指令有效预测电路和为每级的流水线增加一组2维的线程身份寄存器;所述指令有效预测电路是用于预测下个时钟周期设定的线程是否有指令需求执行或指令是否有效(Valid),如果不有效就把该时钟周期让给当前线程;所述一组2维的线程身份寄存器则是用于跟踪线程指令在每级流水线的执行情况以保证结果数据不会被搞混乱。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110361140.8A CN102495726B (zh) | 2011-11-15 | 2011-11-15 | 机会多线程方法及处理器 |
EP12850445.3A EP2782004B1 (en) | 2011-11-15 | 2012-11-15 | Opportunistic multi-thread method and processor |
PCT/CN2012/084686 WO2013071874A1 (zh) | 2011-11-15 | 2012-11-15 | 机会多线程方法及处理器 |
US14/357,871 US9740498B2 (en) | 2011-11-15 | 2012-11-15 | Opportunistic multi-thread method and processor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110361140.8A CN102495726B (zh) | 2011-11-15 | 2011-11-15 | 机会多线程方法及处理器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102495726A CN102495726A (zh) | 2012-06-13 |
CN102495726B true CN102495726B (zh) | 2015-05-20 |
Family
ID=46187554
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110361140.8A Expired - Fee Related CN102495726B (zh) | 2011-11-15 | 2011-11-15 | 机会多线程方法及处理器 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9740498B2 (zh) |
EP (1) | EP2782004B1 (zh) |
CN (1) | CN102495726B (zh) |
WO (1) | WO2013071874A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102495726B (zh) | 2011-11-15 | 2015-05-20 | 无锡德思普科技有限公司 | 机会多线程方法及处理器 |
US9558000B2 (en) | 2014-02-06 | 2017-01-31 | Optimum Semiconductor Technologies, Inc. | Multithreading using an ordered list of hardware contexts |
US9766894B2 (en) | 2014-02-06 | 2017-09-19 | Optimum Semiconductor Technologies, Inc. | Method and apparatus for enabling a processor to generate pipeline control signals |
US9996354B2 (en) * | 2015-01-09 | 2018-06-12 | International Business Machines Corporation | Instruction stream tracing of multi-threaded processors |
CN105045564A (zh) * | 2015-06-26 | 2015-11-11 | 季锦诚 | 图形处理器中的前端动态共享方法 |
US11144353B2 (en) * | 2019-09-27 | 2021-10-12 | Advanced Micro Devices, Inc. | Soft watermarking in thread shared resources implemented through thread mediation |
CN115629807B (zh) * | 2022-10-31 | 2023-04-14 | 海光信息技术股份有限公司 | 多线程处理器的译码方法、处理器、芯片及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002015398A2 (en) * | 2000-08-14 | 2002-02-21 | Sun Microsystems, Inc. | High speed multiple-bit flip-flop for multithreading |
US7360064B1 (en) * | 2003-12-10 | 2008-04-15 | Cisco Technology, Inc. | Thread interleaving in a multithreaded embedded processor |
CN100428282C (zh) * | 2002-10-11 | 2008-10-22 | 沙桥技术有限公司 | 令牌触发多线程操作的方法和装置 |
Family Cites Families (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2037708C (en) | 1990-05-04 | 1998-01-20 | Richard J. Eickemeyer | General purpose compound apparatus for instruction-level parallel processors |
US5303356A (en) | 1990-05-04 | 1994-04-12 | International Business Machines Corporation | System for issuing instructions for parallel execution subsequent to branch into a group of member instructions with compoundability in dictation tag |
US5392393A (en) | 1993-06-04 | 1995-02-21 | Sun Microsystems, Inc. | Architecture for a high performance three dimensional graphics accelerator |
US6138230A (en) | 1993-10-18 | 2000-10-24 | Via-Cyrix, Inc. | Processor with multiple execution pipelines using pipe stage state information to control independent movement of instructions between pipe stages of an execution pipeline |
DE69422780T2 (de) | 1993-11-05 | 2000-08-17 | Intergraph Corp | Superskalare Rechnerarchitektur mit Softwarescheduling |
US5974534A (en) | 1994-02-14 | 1999-10-26 | Hewlett-Packard Company | Predecoding and steering mechanism for instructions in a superscalar processor |
US6047323A (en) | 1995-10-19 | 2000-04-04 | Hewlett-Packard Company | Creation and migration of distributed streams in clusters of networked computers |
US6260189B1 (en) | 1998-09-14 | 2001-07-10 | Lucent Technologies Inc. | Compiler-controlled dynamic instruction dispatch in pipelined processors |
US6668317B1 (en) | 1999-08-31 | 2003-12-23 | Intel Corporation | Microengine for parallel processor architecture |
JP4693326B2 (ja) | 1999-12-22 | 2011-06-01 | ウビコム インコーポレイテッド | 組込み型プロセッサにおいてゼロタイムコンテクストスイッチを用いて命令レベルをマルチスレッド化するシステムおよび方法 |
US6907520B2 (en) | 2001-01-11 | 2005-06-14 | Sun Microsystems, Inc. | Threshold-based load address prediction and new thread identification in a multithreaded microprocessor |
US6928645B2 (en) * | 2001-03-30 | 2005-08-09 | Intel Corporation | Software-based speculative pre-computation and multithreading |
EP1367484B1 (en) | 2002-05-31 | 2013-07-24 | STMicroelectronics Limited | Instruction encoding |
US7418585B2 (en) | 2003-08-28 | 2008-08-26 | Mips Technologies, Inc. | Symmetric multiprocessor operating system for execution on non-independent lightweight thread contexts |
DE602004017879D1 (de) * | 2003-08-28 | 2009-01-02 | Mips Tech Inc | Integrierter mechanismus zum suspendieren und endznem prozessor |
US7310722B2 (en) * | 2003-12-18 | 2007-12-18 | Nvidia Corporation | Across-thread out of order instruction dispatch in a multithreaded graphics processor |
US8074051B2 (en) * | 2004-04-07 | 2011-12-06 | Aspen Acquisition Corporation | Multithreaded processor with multiple concurrent pipelines per thread |
US7543132B1 (en) | 2004-06-30 | 2009-06-02 | Sun Microsystems, Inc. | Optimizing hardware TLB reload performance in a highly-threaded processor with multiple page sizes |
US7343474B1 (en) * | 2004-06-30 | 2008-03-11 | Sun Microsystems, Inc. | Minimal address state in a fine grain multithreaded processor |
US7487503B2 (en) | 2004-08-12 | 2009-02-03 | International Business Machines Corporation | Scheduling threads in a multiprocessor computer |
US7890735B2 (en) * | 2004-08-30 | 2011-02-15 | Texas Instruments Incorporated | Multi-threading processors, integrated circuit devices, systems, and processes of operation and manufacture |
US20060130062A1 (en) | 2004-12-14 | 2006-06-15 | International Business Machines Corporation | Scheduling threads in a multi-threaded computer |
US7657891B2 (en) * | 2005-02-04 | 2010-02-02 | Mips Technologies, Inc. | Multithreading microprocessor with optimized thread scheduler for increasing pipeline utilization efficiency |
US7652922B2 (en) | 2005-09-30 | 2010-01-26 | Mosaid Technologies Incorporated | Multiple independent serial link memory |
JP2007133456A (ja) * | 2005-11-08 | 2007-05-31 | Hitachi Ltd | 半導体装置 |
US8456191B2 (en) | 2006-06-21 | 2013-06-04 | Element Cxi, Llc | Data-driven integrated circuit architecture |
US20080126766A1 (en) | 2006-11-03 | 2008-05-29 | Saurabh Chheda | Securing microprocessors against information leakage and physical tampering |
US7707390B2 (en) * | 2007-04-25 | 2010-04-27 | Arm Limited | Instruction issue control within a multi-threaded in-order superscalar processor |
WO2009022294A2 (en) | 2007-08-14 | 2009-02-19 | Nokia Corporation | Power saving for uplink scheduling grant signaling and decoding |
US8082420B2 (en) * | 2007-10-24 | 2011-12-20 | International Business Machines Corporation | Method and apparatus for executing instructions |
CN101526895B (zh) * | 2009-01-22 | 2011-01-05 | 杭州中天微系统有限公司 | 基于指令双发射的高性能低功耗嵌入式处理器 |
US8499299B1 (en) | 2010-06-29 | 2013-07-30 | Ca, Inc. | Ensuring deterministic thread context switching in virtual machine applications |
CN102495726B (zh) | 2011-11-15 | 2015-05-20 | 无锡德思普科技有限公司 | 机会多线程方法及处理器 |
-
2011
- 2011-11-15 CN CN201110361140.8A patent/CN102495726B/zh not_active Expired - Fee Related
-
2012
- 2012-11-15 US US14/357,871 patent/US9740498B2/en active Active
- 2012-11-15 WO PCT/CN2012/084686 patent/WO2013071874A1/zh active Application Filing
- 2012-11-15 EP EP12850445.3A patent/EP2782004B1/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002015398A2 (en) * | 2000-08-14 | 2002-02-21 | Sun Microsystems, Inc. | High speed multiple-bit flip-flop for multithreading |
CN100428282C (zh) * | 2002-10-11 | 2008-10-22 | 沙桥技术有限公司 | 令牌触发多线程操作的方法和装置 |
US7360064B1 (en) * | 2003-12-10 | 2008-04-15 | Cisco Technology, Inc. | Thread interleaving in a multithreaded embedded processor |
Also Published As
Publication number | Publication date |
---|---|
WO2013071874A1 (zh) | 2013-05-23 |
EP2782004B1 (en) | 2022-06-01 |
EP2782004A1 (en) | 2014-09-24 |
EP2782004A4 (en) | 2015-05-27 |
US20140351568A1 (en) | 2014-11-27 |
CN102495726A (zh) | 2012-06-13 |
US9740498B2 (en) | 2017-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102495726B (zh) | 机会多线程方法及处理器 | |
JP6526609B2 (ja) | プロセッサ | |
TWI628594B (zh) | 用戶等級分叉及會合處理器、方法、系統及指令 | |
US10684860B2 (en) | High performance processor system and method based on general purpose units | |
CN108027771B (zh) | 基于块的处理器核复合寄存器 | |
CN108027772B (zh) | 用于逻辑处理器的不同的系统寄存器 | |
CN105144082B (zh) | 基于平台热以及功率预算约束,对于给定工作负荷的最佳逻辑处理器计数和类型选择 | |
KR101847857B1 (ko) | 스레드 일시중지 프로세서들, 방법들, 시스템들 및 명령어들 | |
CN109375949B (zh) | 一种具有多个核的处理器 | |
US8516483B2 (en) | Transparent support for operating system services for a sequestered sequencer | |
CN106293626B (zh) | 持久性提交处理器、方法、装置、制品和电子设备 | |
US20130080749A1 (en) | Processor and control method of processor | |
CN110647358B (zh) | 同步多线程处理器 | |
CN105378652A (zh) | 线程共享资源分配方法及装置 | |
CN202711237U (zh) | 机会多线程处理器 | |
CN110647357B (zh) | 同步多线程处理器 | |
US20150074378A1 (en) | System and Method for an Asynchronous Processor with Heterogeneous Processors | |
US20140201505A1 (en) | Prediction-based thread selection in a multithreading processor | |
CN205721743U (zh) | 一种可控动态多线程方法的处理器 | |
CN108255587B (zh) | 一种同步多线程处理器 | |
CN105824605B (zh) | 一种可控动态多线程方法及处理器 | |
Zhang | Chip Multi-threading and Sun's Niagara-series |
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: 20150520 Termination date: 20201115 |
|
CF01 | Termination of patent right due to non-payment of annual fee |