WO2006004826A3 - Apparatus and method for fine-grained multithreading in a multipipelined processor core - Google Patents

Apparatus and method for fine-grained multithreading in a multipipelined processor core Download PDF

Info

Publication number
WO2006004826A3
WO2006004826A3 PCT/US2005/023077 US2005023077W WO2006004826A3 WO 2006004826 A3 WO2006004826 A3 WO 2006004826A3 US 2005023077 W US2005023077 W US 2005023077W WO 2006004826 A3 WO2006004826 A3 WO 2006004826A3
Authority
WO
WIPO (PCT)
Prior art keywords
multipipelined
fine
processor core
threads
processor
Prior art date
Application number
PCT/US2005/023077
Other languages
French (fr)
Other versions
WO2006004826A2 (en
Inventor
Ricky C Hetherington
Gregory F Grohoski
Robert T Golla
Original Assignee
Sun Microsystems Inc
Ricky C Hetherington
Gregory F Grohoski
Robert T Golla
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 Sun Microsystems Inc, Ricky C Hetherington, Gregory F Grohoski, Robert T Golla filed Critical Sun Microsystems Inc
Priority to EP05763865A priority Critical patent/EP1782194A2/en
Publication of WO2006004826A2 publication Critical patent/WO2006004826A2/en
Publication of WO2006004826A3 publication Critical patent/WO2006004826A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3851Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0842Multiuser, multiprocessor or multiprocessing cache systems for multiprocessing or multitasking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0855Overlapped cache accessing, e.g. pipeline
    • G06F12/0859Overlapped cache accessing, e.g. pipeline with reload from main memory

Abstract

An apparatus and method for fine-grained multithreading in a multipipelined processor core. According to one embodiment, a processor may include instruction fetch logic configured to assign a given one of a plurality of threads to a corresponding one of a plurality of thread groups, where each of the plurality of thread groups may comprise a subset of the plurality of threads, to issue a first instruction from one of the plurality of threads during one execution cycle, and to issue a second instruction from another one of the plurality of threads during a successive execution cycle. The processor may further include a plurality of execution units, each configured to execute instructions issued from a respective thread group.
PCT/US2005/023077 2004-06-30 2005-06-30 Apparatus and method for fine-grained multithreading in a multipipelined processor core WO2006004826A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP05763865A EP1782194A2 (en) 2004-06-30 2005-06-30 Apparatus and method for fine-grained multithreading in a multipipelined processor core

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/880,488 US7401206B2 (en) 2004-06-30 2004-06-30 Apparatus and method for fine-grained multithreading in a multipipelined processor core
US10/880,488 2004-06-30

Publications (2)

Publication Number Publication Date
WO2006004826A2 WO2006004826A2 (en) 2006-01-12
WO2006004826A3 true WO2006004826A3 (en) 2006-03-23

Family

ID=35311526

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2005/023077 WO2006004826A2 (en) 2004-06-30 2005-06-30 Apparatus and method for fine-grained multithreading in a multipipelined processor core

Country Status (3)

Country Link
US (1) US7401206B2 (en)
EP (1) EP1782194A2 (en)
WO (1) WO2006004826A2 (en)

Families Citing this family (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7890735B2 (en) * 2004-08-30 2011-02-15 Texas Instruments Incorporated Multi-threading processors, integrated circuit devices, systems, and processes of operation and manufacture
US7418576B1 (en) 2004-11-17 2008-08-26 Nvidia Corporation Prioritized issuing of operation dedicated execution unit tagged instructions from multiple different type threads performing different set of operations
US8719819B2 (en) * 2005-06-30 2014-05-06 Intel Corporation Mechanism for instruction set based thread execution on a plurality of instruction sequencers
US7752627B2 (en) 2005-02-04 2010-07-06 Mips Technologies, Inc. Leaky-bucket thread scheduler in a multithreading microprocessor
US7853777B2 (en) * 2005-02-04 2010-12-14 Mips Technologies, Inc. Instruction/skid buffers in a multithreading microprocessor that store dispatched instructions to avoid re-fetching flushed instructions
US7664936B2 (en) * 2005-02-04 2010-02-16 Mips Technologies, Inc. Prioritizing thread selection partly based on stall likelihood providing status information of instruction operand register usage at pipeline stages
US7657883B2 (en) * 2005-02-04 2010-02-02 Mips Technologies, Inc. Instruction dispatch scheduler employing round-robin apparatus supporting multiple thread priorities for use in multithreading microprocessor
US7613904B2 (en) * 2005-02-04 2009-11-03 Mips Technologies, Inc. Interfacing external thread prioritizing policy enforcing logic with customer modifiable register to processor internal scheduler
US7490230B2 (en) * 2005-02-04 2009-02-10 Mips Technologies, Inc. Fetch director employing barrel-incrementer-based round-robin apparatus for use in multithreading microprocessor
US7681014B2 (en) * 2005-02-04 2010-03-16 Mips Technologies, Inc. Multithreading instruction scheduler employing thread group priorities
US7657891B2 (en) 2005-02-04 2010-02-02 Mips Technologies, Inc. Multithreading microprocessor with optimized thread scheduler for increasing pipeline utilization efficiency
US7631130B2 (en) * 2005-02-04 2009-12-08 Mips Technologies, Inc Barrel-incrementer-based round-robin apparatus and instruction dispatch scheduler employing same for use in multithreading microprocessor
US7506140B2 (en) * 2005-02-04 2009-03-17 Mips Technologies, Inc. Return data selector employing barrel-incrementer-based round-robin apparatus
US7802073B1 (en) 2006-03-29 2010-09-21 Oracle America, Inc. Virtual core management
JP4971679B2 (en) * 2006-05-10 2012-07-11 ルネサスエレクトロニクス株式会社 Processor system and performance measurement method for processor system
US8639655B2 (en) * 2006-08-31 2014-01-28 Red Hat, Inc. Dedicating threads to classes of LDAP service
US7961745B2 (en) * 2006-09-16 2011-06-14 Mips Technologies, Inc. Bifurcated transaction selector supporting dynamic priorities in multi-port switch
US7773621B2 (en) * 2006-09-16 2010-08-10 Mips Technologies, Inc. Transaction selector employing round-robin apparatus supporting dynamic priorities in multi-port switch
US7760748B2 (en) * 2006-09-16 2010-07-20 Mips Technologies, Inc. Transaction selector employing barrel-incrementer-based round-robin apparatus supporting dynamic priorities in multi-port switch
US7990989B2 (en) * 2006-09-16 2011-08-02 Mips Technologies, Inc. Transaction selector employing transaction queue group priorities in multi-port switch
US7859548B1 (en) 2006-10-19 2010-12-28 Nvidia Corporation Offloading cube map calculations to a shader
US7743200B1 (en) 2007-05-24 2010-06-22 Juniper Networks, Inc. Instruction cache using perfect hash function
US8281308B1 (en) 2007-07-23 2012-10-02 Oracle America, Inc. Virtual core remapping based on temperature
US8065506B2 (en) * 2007-08-17 2011-11-22 Texas Instruments Incorporated Application specific instruction set processor for digital radio processor receiving chain signal processing
JP5043560B2 (en) * 2007-08-24 2012-10-10 パナソニック株式会社 Program execution control device
US8006073B1 (en) 2007-09-28 2011-08-23 Oracle America, Inc. Simultaneous speculative threading light mode
US7996648B2 (en) 2007-12-19 2011-08-09 Microsoft Corporation Coupled symbiotic operating systems
US20090260013A1 (en) * 2008-04-14 2009-10-15 International Business Machines Corporation Computer Processors With Plural, Pipelined Hardware Threads Of Execution
US9501448B2 (en) 2008-05-27 2016-11-22 Stillwater Supercomputing, Inc. Execution engine for executing single assignment programs with affine dependencies
WO2009146267A1 (en) * 2008-05-27 2009-12-03 Stillwater Supercomputing, Inc. Execution engine
US8117395B1 (en) * 2008-06-25 2012-02-14 Marvell Israel (Misl) Ltd. Multi-stage pipeline for cache access
US8332590B1 (en) 2008-06-25 2012-12-11 Marvell Israel (M.I.S.L.) Ltd. Multi-stage command processing pipeline and method for shared cache access
US8335912B2 (en) * 2009-04-22 2012-12-18 Oracle America, Inc. Logical map table for detecting dependency conditions between instructions having varying width operand values
US8458444B2 (en) 2009-04-22 2013-06-04 Oracle America, Inc. Apparatus and method for handling dependency conditions between floating-point instructions
US8504805B2 (en) * 2009-04-22 2013-08-06 Oracle America, Inc. Processor operating mode for mitigating dependency conditions between instructions having different operand sizes
US20100274961A1 (en) * 2009-04-22 2010-10-28 Golla Robert T Physically-indexed logical map table
US9058180B2 (en) * 2009-06-29 2015-06-16 Oracle America, Inc. Unified high-frequency out-of-order pick queue with support for triggering early issue of speculative instructions
US8429386B2 (en) * 2009-06-30 2013-04-23 Oracle America, Inc. Dynamic tag allocation in a multithreaded out-of-order processor
US9286075B2 (en) * 2009-09-30 2016-03-15 Oracle America, Inc. Optimal deallocation of instructions from a unified pick queue
WO2011104823A1 (en) * 2010-02-23 2011-09-01 富士通株式会社 Multi-core processor system, thread control method, and thread control program
US8875146B2 (en) 2011-08-01 2014-10-28 Honeywell International Inc. Systems and methods for bounding processing times on multiple processing units
US8621473B2 (en) 2011-08-01 2013-12-31 Honeywell International Inc. Constrained rate monotonic analysis and scheduling
US9606808B2 (en) * 2012-01-11 2017-03-28 Nvidia Corporation Method and system for resolving thread divergences
US9207977B2 (en) 2012-02-06 2015-12-08 Honeywell International Inc. Systems and methods for task grouping on multi-processors
US9612868B2 (en) 2012-10-31 2017-04-04 Honeywell International Inc. Systems and methods generating inter-group and intra-group execution schedules for instruction entity allocation and scheduling on multi-processors
CN103034733A (en) * 2012-12-25 2013-04-10 北京讯鸟软件有限公司 Data monitoring statistical method for call center
EP3108358B1 (en) * 2014-02-20 2021-06-23 Stillwater Supercomputing, Inc. Execution engine for executing single assignment programs with affine dependencies
US9626218B1 (en) * 2014-03-10 2017-04-18 Altera Corporation Repartitioning and reordering of multiple threads into subsets based on possible access conflict, for sequential access to groups of memory banks in a shared memory
US9984037B1 (en) 2015-04-27 2018-05-29 Synaptic Engines, Llc Scheduler for a fine grained graph processor
US10360034B2 (en) * 2017-04-18 2019-07-23 Samsung Electronics Co., Ltd. System and method for maintaining data in a low-power structure
US11789741B2 (en) * 2018-03-08 2023-10-17 Sap Se Determining an optimum quantity of interleaved instruction streams of defined coroutines
US11531550B2 (en) * 2020-11-05 2022-12-20 Cadence Design Systems, Inc. Program thread selection between a plurality of execution pipelines
WO2022126532A1 (en) * 2020-12-17 2022-06-23 华为技术有限公司 Data processing method and apparatus

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020156999A1 (en) * 2001-04-19 2002-10-24 International Business Machines Corporation Mixed-mode hardware multithreading

Family Cites Families (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4845659A (en) 1986-08-15 1989-07-04 International Business Machines Corporation Accelerated validity response permitting early issue of instructions dependent upon outcome of floating point operations
US4879676A (en) 1988-02-29 1989-11-07 Mips Computer Systems, Inc. Method and apparatus for precise floating point exceptions
JPH01269151A (en) 1988-04-21 1989-10-26 Hitachi Ltd Multiplex processor system testing method
JP2858140B2 (en) 1988-10-19 1999-02-17 アポロ・コンピューター・インコーポレーテッド Pipeline processor device and method
US5488729A (en) 1991-05-15 1996-01-30 Ross Technology, Inc. Central processing unit architecture with symmetric instruction scheduling to achieve multiple instruction launch and execution
US5257215A (en) 1992-03-31 1993-10-26 Intel Corporation Floating point and integer number conversions in a floating point adder
US5287508A (en) * 1992-04-07 1994-02-15 Sun Microsystems, Inc. Method and apparatus for efficient scheduling in a multiprocessor system
US5546593A (en) 1992-05-18 1996-08-13 Matsushita Electric Industrial Co., Ltd. Multistream instruction processor able to reduce interlocks by having a wait state for an instruction stream
US5559977A (en) 1992-08-04 1996-09-24 Intel Corporation Method and apparatus for executing floating point (FP) instruction pairs in a pipelined processor by stalling the following FP instructions in an execution stage
US5341321A (en) 1993-05-05 1994-08-23 Hewlett-Packard Company Floating point arithmetic unit using modified Newton-Raphson technique for division and square root
US5386375A (en) 1993-11-01 1995-01-31 Motorola, Inc. Floating point data processor and a method for performing a floating point square root operation within the data processor
US5339266A (en) 1993-11-29 1994-08-16 Motorola, Inc. Parallel method and apparatus for detecting and completing floating point operations involving special operands
US5548545A (en) 1995-01-19 1996-08-20 Exponential Technology, Inc. Floating point exception prediction for compound operations and variable precision using an intermediate exponent bus
US5787030A (en) 1995-07-05 1998-07-28 Sun Microsystems, Inc. Correct and efficient sticky bit calculation for exact floating point divide/square root results
US5619439A (en) 1995-07-05 1997-04-08 Sun Microsystems, Inc. Shared hardware for multiply, divide, and square root exponent calculation
US5812439A (en) 1995-10-10 1998-09-22 Microunity Systems Engineering, Inc. Technique of incorporating floating point information into processor instructions
US5667724A (en) * 1996-05-13 1997-09-16 Motorola Phosphor and method of making same
CN1147785C (en) 1996-08-27 2004-04-28 松下电器产业株式会社 Multi-program-flow synchronous processor independently processing multiple instruction stream, soft controlling processing function of every instrunetion
US6088788A (en) 1996-12-27 2000-07-11 International Business Machines Corporation Background completion of instruction and associated fetch request in a multithread processor
US6073159A (en) * 1996-12-31 2000-06-06 Compaq Computer Corporation Thread properties attribute vector based thread selection in multithreading processor
US6820107B1 (en) 1997-05-08 2004-11-16 Renesas Technology Corporation Square root extraction circuit and floating-point square root extraction device
US5867724A (en) 1997-05-30 1999-02-02 National Semiconductor Corporation Integrated routing and shifting circuit and method of operation
US6085305A (en) 1997-06-25 2000-07-04 Sun Microsystems, Inc. Apparatus for precise architectural update in an out-of-order processor
US6298367B1 (en) 1998-04-06 2001-10-02 Advanced Micro Devices, Inc. Floating point addition pipeline including extreme value, comparison and accumulate functions
US6697935B1 (en) 1997-10-23 2004-02-24 International Business Machines Corporation Method and apparatus for selecting thread switch events in a multithreaded processor
US6076157A (en) 1997-10-23 2000-06-13 International Business Machines Corporation Method and apparatus to force a thread switch in a multithreaded processor
US6131104A (en) 1998-03-27 2000-10-10 Advanced Micro Devices, Inc. Floating point addition pipeline configured to perform floating point-to-integer and integer-to-floating point conversion operations
US6212544B1 (en) 1997-10-23 2001-04-03 International Business Machines Corporation Altering thread priorities in a multithreaded processor
US6567839B1 (en) 1997-10-23 2003-05-20 International Business Machines Corporation Thread switch control in a multithreaded processor system
US6460134B1 (en) 1997-12-03 2002-10-01 Intrinsity, Inc. Method and apparatus for a late pipeline enhanced floating point unit
US6088800A (en) 1998-02-27 2000-07-11 Mosaid Technologies, Incorporated Encryption processor with shared memory interconnect
US6219776B1 (en) * 1998-03-10 2001-04-17 Billions Of Operations Per Second Merged array controller and processing element
US6282554B1 (en) 1998-04-30 2001-08-28 Intel Corporation Method and apparatus for floating point operations and format conversion operations
US6243788B1 (en) * 1998-06-17 2001-06-05 International Business Machines Corporation Cache architecture to enable accurate cache sensitivity
US6594681B1 (en) 1998-11-04 2003-07-15 Sun Microsystems, Inc. Quotient digit selection logic for floating point division/square root
US6349319B1 (en) 1999-01-29 2002-02-19 Sun Microsystems, Inc. Floating point square root and reciprocal square root computation unit in a processor
US6317840B1 (en) 1999-03-24 2001-11-13 International Business Machines Corporation Control of multiple equivalent functional units for power reduction
US6507862B1 (en) * 1999-05-11 2003-01-14 Sun Microsystems, Inc. Switching method in a multi-threaded processor
US6341347B1 (en) 1999-05-11 2002-01-22 Sun Microsystems, Inc. Thread switch logic in a multiple-thread processor
US6542991B1 (en) 1999-05-11 2003-04-01 Sun Microsystems, Inc. Multiple-thread processor with single-thread interface shared among threads
US6631392B1 (en) 1999-07-30 2003-10-07 Mips Technologies, Inc. Method and apparatus for predicting floating-point exceptions
US6675292B2 (en) 1999-08-13 2004-01-06 Sun Microsystems, Inc. Exception handling for SIMD floating point-instructions using a floating point status register to report exceptions
US6523050B1 (en) 1999-08-19 2003-02-18 National Semiconductor Corporation Integer to floating point conversion using one's complement with subsequent correction to eliminate two's complement in critical path
US6415308B1 (en) 1999-08-19 2002-07-02 National Semiconductor Corporation Converting negative floating point numbers to integer notation without two's complement hardware
US6427196B1 (en) 1999-08-31 2002-07-30 Intel Corporation SRAM controller for parallel processor architecture including address and command queue and arbiter
US6668317B1 (en) 1999-08-31 2003-12-23 Intel Corporation Microengine for parallel processor architecture
US6687383B1 (en) * 1999-11-09 2004-02-03 International Business Machines Corporation System and method for coding audio information in images
US6629236B1 (en) 1999-11-12 2003-09-30 International Business Machines Corporation Master-slave latch circuit for multithreaded processing
US6357016B1 (en) 1999-12-09 2002-03-12 Intel Corporation Method and apparatus for disabling a clock signal within a multithreaded processor
US6496925B1 (en) 1999-12-09 2002-12-17 Intel Corporation Method and apparatus for processing an event occurrence within a multithreaded processor
US6889319B1 (en) 1999-12-09 2005-05-03 Intel Corporation Method and apparatus for entering and exiting multiple threads within a multithreaded processor
US6564328B1 (en) 1999-12-23 2003-05-13 Intel Corporation Microprocessor with digital power throttle
US6625654B1 (en) 1999-12-28 2003-09-23 Intel Corporation Thread signaling in multi-threaded network processor
US6633895B1 (en) 2000-02-22 2003-10-14 Hewlett-Packard Development Company, L.P. Apparatus and method for sharing overflow/underflow compare hardware in a floating-point multiply-accumulate (FMAC) or floating-point adder (FADD) unit
US6694425B1 (en) 2000-05-04 2004-02-17 International Business Machines Corporation Selective flush of shared and other pipeline stages in a multithread processor
US6668308B2 (en) 2000-06-10 2003-12-23 Hewlett-Packard Development Company, L.P. Scalable architecture based on single-chip multiprocessing
US6681345B1 (en) 2000-08-15 2004-01-20 International Business Machines Corporation Field protection against thread loss in a multithreaded computer processor
US6748556B1 (en) 2000-08-15 2004-06-08 International Business Machines Corporation Changing the thread capacity of a multithreaded computer processor
US6629237B2 (en) 2000-09-01 2003-09-30 Intel Corporation Solving parallel problems employing hardware multi-threading in a parallel processing environment
US7035998B1 (en) * 2000-11-03 2006-04-25 Mips Technologies, Inc. Clustering stream and/or instruction queues for multi-streaming processors
US6687838B2 (en) 2000-12-07 2004-02-03 Intel Corporation Low-power processor hint, such as from a PAUSE instruction
US6671827B2 (en) 2000-12-21 2003-12-30 Intel Corporation Journaling for parallel hardware threads in multithreaded processor
US6651158B2 (en) * 2001-06-22 2003-11-18 Intel Corporation Determination of approaching instruction starvation of threads based on a plurality of conditions
US6898694B2 (en) 2001-06-28 2005-05-24 Intel Corporation High instruction fetch bandwidth in multithread processor using temporary instruction cache to deliver portion of cache line in subsequent clock cycle
US6847985B1 (en) 2001-08-10 2005-01-25 Lsi Logic Corporation Floating point divide and square root processor
US6963894B2 (en) 2002-04-08 2005-11-08 Intel Corporation Methods and apparatus for predicting an underflow condition associated with a floating-point multiply-add operation
US7117346B2 (en) * 2002-05-31 2006-10-03 Freescale Semiconductor, Inc. Data processing system having multiple register contexts and method therefor
US7143412B2 (en) * 2002-07-25 2006-11-28 Hewlett-Packard Development Company, L.P. Method and apparatus for optimizing performance in a multi-processing system
US7478276B2 (en) * 2005-02-10 2009-01-13 International Business Machines Corporation Method for checkpointing instruction groups with out-of-order floating point instructions in a multi-threaded processor

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020156999A1 (en) * 2001-04-19 2002-10-24 International Business Machines Corporation Mixed-mode hardware multithreading

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
KALLA R ET AL: "IBM Power5 chip: a dual-core multithreaded processor", IEEE MICRO, vol. 24, no. 2, April 2004 (2004-04-01), pages 40 - 47, XP002355466 *
KONGETIRA P ET AL: "Niagara: a 32-way multithreaded Sparc processor", IEEE MICRO, vol. 25, no. 2, April 2005 (2005-04-01), pages 21 - 29, XP002355469 *
See also references of EP1782194A2 *
SUN MICROSYSTEMS: "Introduction to Throughput Computing", February 2003 (2003-02-01), pages 1 - 18, XP002355468, Retrieved from the Internet <URL:http://web.archive.org/web/20040619232849/www.sun.com/processors/whitepapers/throughput_whitepaper.pdf> [retrieved on 20051122] *
SUN MICROSYSTEMS: "MAJC Architecture Tutorial. White Paper", September 1999 (1999-09-01), pages 1 - 31, XP002355467, Retrieved from the Internet <URL:http://solutions.sun.com/embedded/databook/pdf/whitepapers/WPR-0064-01.pdf> [retrieved on 20051122] *

Also Published As

Publication number Publication date
US7401206B2 (en) 2008-07-15
US20060004995A1 (en) 2006-01-05
EP1782194A2 (en) 2007-05-09
WO2006004826A2 (en) 2006-01-12

Similar Documents

Publication Publication Date Title
WO2006004826A3 (en) Apparatus and method for fine-grained multithreading in a multipipelined processor core
US11307862B2 (en) Compiling and combining instructions from different branches for execution in a processing element of a multithreaded processor
CN103336718B (en) A kind of GPU thread scheduling optimization method
US7383427B2 (en) Multi-scalar extension for SIMD instruction set processors
CN106104481A (en) Certainty and opportunistic multithreading
WO2010043706A3 (en) Method for the deterministic execution and synchronisation of an information processing system comprising a plurality of processing cores executing system tasks
HRP20161316T1 (en) Methods and systems for allocating interrupts in a multithreaded processor
WO2006083543A3 (en) Multithreading processor including thread scheduler based on instruction stall likelihood prediction
ATE540353T1 (en) DIVISION OF THREADS IN A PROCESSOR
GB2485683A (en) Thread shift: Allocating threads to cores
WO2008003536A3 (en) Method, system and computer program for determining the processing order of a plurality of events
CN100520714C (en) Multi-threaded processor
IN2012DN00929A (en)
WO2010107774A3 (en) Real-time multithreaded scheduler and scheduling method
TW200713036A (en) Selecting multiple threads for substantially concurrent processing
WO2005081104A3 (en) Methods and apparatus for processor task migration in a multi-processor system
JP2016532180A5 (en)
CA2337172A1 (en) Method and apparatus for allocating functional units in a multithreaded vliw processor
CA2337962A1 (en) Method and apparatus for releasing functional units in a multithreaded vliw processor
US9740498B2 (en) Opportunistic multi-thread method and processor
CN105975252A (en) Method and device for realizing flow line of processing instructions and processor
JP2006268070A5 (en)
CA2341098A1 (en) Method and apparatus for splitting packets in a multithreaded vliw processor
EP2255280A1 (en) Pipeline processors
WO2008155804A1 (en) Simultaneous multithreaded instruction completion controller

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KM KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NG NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Country of ref document: DE

WWE Wipo information: entry into national phase

Ref document number: 2005763865

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 2005763865

Country of ref document: EP