ATE502338T1 - Mehrkern-mehrthread-prozessor - Google Patents

Mehrkern-mehrthread-prozessor

Info

Publication number
ATE502338T1
ATE502338T1 AT04779885T AT04779885T ATE502338T1 AT E502338 T1 ATE502338 T1 AT E502338T1 AT 04779885 T AT04779885 T AT 04779885T AT 04779885 T AT04779885 T AT 04779885T AT E502338 T1 ATE502338 T1 AT E502338T1
Authority
AT
Austria
Prior art keywords
cores
thread
crossbar
cache
bank memories
Prior art date
Application number
AT04779885T
Other languages
English (en)
Inventor
Kunle Olukotun
Original Assignee
Oracle America Inc
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 Oracle America Inc filed Critical Oracle America Inc
Application granted granted Critical
Publication of ATE502338T1 publication Critical patent/ATE502338T1/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 or look ahead
    • G06F9/3824Operand accessing
    • G06F9/3834Maintaining memory consistency
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0811Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/167Interprocessor communication using a common memory, e.g. mailbox
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • G06F15/781On-chip cache; Off-chip memory
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30032Movement instructions, e.g. MOVE, SHIFT, ROTATE, SHUFFLE
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • G06F9/30047Prefetch instructions; cache control instructions
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/30003Arrangements for executing specific machine instructions
    • G06F9/30076Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
    • G06F9/30087Synchronisation or serialisation instructions
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/30003Arrangements for executing specific machine instructions
    • G06F9/30076Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
    • G06F9/3009Thread control instructions
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/30098Register arrangements
    • G06F9/30141Implementation provisions of register files, e.g. ports
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 or look ahead
    • G06F9/3824Operand accessing
    • G06F9/3826Bypassing or forwarding of data results, e.g. locally between pipeline stages or within a pipeline stage
    • G06F9/3828Bypassing or forwarding of data results, e.g. locally between pipeline stages or within a pipeline stage with global bypass, e.g. between pipelines, between clusters
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 or 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 OR CALCULATING; 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 or look ahead
    • G06F9/3861Recovery, e.g. branch miss-prediction, exception handling
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • G06F9/3888Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by a single instruction for multiple threads [SIMT] in parallel
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • G06F9/3889Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by multiple instructions, e.g. MIMD, decoupled access or execute
    • G06F9/3891Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by multiple instructions, e.g. MIMD, decoupled access or execute organised in groups of units sharing resources, e.g. clusters
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0813Multiuser, multiprocessor or multiprocessing cache systems with a network or matrix configuration

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Multimedia (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Multi Processors (AREA)
  • Pharmaceuticals Containing Other Organic And Inorganic Compounds (AREA)
  • Saccharide Compounds (AREA)
AT04779885T 2003-08-19 2004-07-30 Mehrkern-mehrthread-prozessor ATE502338T1 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US49660203P 2003-08-19 2003-08-19
US10/855,233 US7873785B2 (en) 2003-08-19 2004-05-26 Multi-core multi-thread processor
PCT/US2004/024956 WO2005020067A2 (en) 2003-08-19 2004-07-30 Multi-core multi-thread processor

Publications (1)

Publication Number Publication Date
ATE502338T1 true ATE502338T1 (de) 2011-04-15

Family

ID=34198155

Family Applications (1)

Application Number Title Priority Date Filing Date
AT04779885T ATE502338T1 (de) 2003-08-19 2004-07-30 Mehrkern-mehrthread-prozessor

Country Status (6)

Country Link
US (1) US7873785B2 (de)
EP (1) EP1660992B1 (de)
AT (1) ATE502338T1 (de)
DE (1) DE602004031855D1 (de)
TW (1) TWI256590B (de)
WO (1) WO2005020067A2 (de)

Families Citing this family (103)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8176298B2 (en) 2002-10-08 2012-05-08 Netlogic Microsystems, Inc. Multi-core multi-threaded processing systems with instruction reordering in an in-order pipeline
US7627721B2 (en) * 2002-10-08 2009-12-01 Rmi Corporation Advanced processor with cache coherency
US8478811B2 (en) * 2002-10-08 2013-07-02 Netlogic Microsystems, Inc. Advanced processor with credit based scheme for optimal packet flow in a multi-processor system on a chip
US7334086B2 (en) * 2002-10-08 2008-02-19 Rmi Corporation Advanced processor with system on a chip interconnect technology
US8015567B2 (en) 2002-10-08 2011-09-06 Netlogic Microsystems, Inc. Advanced processor with mechanism for packet distribution at high line rate
US7961723B2 (en) 2002-10-08 2011-06-14 Netlogic Microsystems, Inc. Advanced processor with mechanism for enforcing ordering between information sent on two independent networks
US8037224B2 (en) * 2002-10-08 2011-10-11 Netlogic Microsystems, Inc. Delegating network processor operations to star topology serial bus interfaces
US7346757B2 (en) * 2002-10-08 2008-03-18 Rmi Corporation Advanced processor translation lookaside buffer management in a multithreaded system
US20050044324A1 (en) * 2002-10-08 2005-02-24 Abbas Rashid Advanced processor with mechanism for maximizing resource usage in an in-order pipeline with multiple threads
US7984268B2 (en) * 2002-10-08 2011-07-19 Netlogic Microsystems, Inc. Advanced processor scheduling in a multithreaded system
US20050033831A1 (en) * 2002-10-08 2005-02-10 Abbas Rashid Advanced processor with a thread aware return address stack optimally used across active threads
US20050033889A1 (en) * 2002-10-08 2005-02-10 Hass David T. Advanced processor with interrupt delivery mechanism for multi-threaded multi-CPU system on a chip
US7924828B2 (en) * 2002-10-08 2011-04-12 Netlogic Microsystems, Inc. Advanced processor with mechanism for fast packet queuing operations
US9088474B2 (en) * 2002-10-08 2015-07-21 Broadcom Corporation Advanced processor with interfacing messaging network to a CPU
US7536692B2 (en) * 2003-11-06 2009-05-19 Intel Corporation Thread-based engine cache partitioning
US20050154573A1 (en) * 2004-01-08 2005-07-14 Maly John W. Systems and methods for initializing a lockstep mode test case simulation of a multi-core processor design
EP1723523A1 (de) * 2004-02-20 2006-11-22 Continental Teves AG & Co. oHG VERFAHREN UND INTEGRIERTER SCHALTKREIS ZUR ERH HUNG DER ST&O uml;RFESTIGKEIT
US7784054B2 (en) * 2004-04-14 2010-08-24 Wm Software Inc. Systems and methods for CPU throttling utilizing processes
US8230423B2 (en) * 2005-04-07 2012-07-24 International Business Machines Corporation Multithreaded processor architecture with operational latency hiding
US7856636B2 (en) 2005-05-10 2010-12-21 Hewlett-Packard Development Company, L.P. Systems and methods of sharing processing resources in a multi-threading environment
US7631125B2 (en) 2005-09-30 2009-12-08 Intel Corporation Dynamically migrating channels
GB0519981D0 (en) 2005-09-30 2005-11-09 Ignios Ltd Scheduling in a multicore architecture
US7747897B2 (en) * 2005-11-18 2010-06-29 Intel Corporation Method and apparatus for lockstep processing on a fixed-latency interconnect
CN101366004A (zh) * 2005-12-06 2009-02-11 波士顿电路公司 用于带有专用线程管理的多核处理的方法和设备
JP4653841B2 (ja) * 2006-02-28 2011-03-16 インテル・コーポレーション 多数コアプロセッサの信頼性強化
GB0605383D0 (en) * 2006-03-17 2006-04-26 Williams Paul N Processing system
US7773090B1 (en) * 2006-06-13 2010-08-10 Nvidia Corporation Kernel mode graphics driver for dual-core computer system
WO2008040076A1 (en) * 2006-10-05 2008-04-10 Waratek Pty Limited Contention resolution with echo cancellation
CN100416506C (zh) * 2006-10-27 2008-09-03 北京金山软件有限公司 基于多核cpu架构的网游服务器的数据分配方法及系统
US7809926B2 (en) * 2006-11-03 2010-10-05 Cornell Research Foundation, Inc. Systems and methods for reconfiguring on-chip multiprocessors
JP4230504B2 (ja) * 2006-11-30 2009-02-25 株式会社日立製作所 データプロセッサ
JPWO2008087779A1 (ja) * 2007-01-19 2010-05-06 日本電気株式会社 アレイ型プロセッサおよびデータ処理システム
JP4444305B2 (ja) * 2007-03-28 2010-03-31 株式会社東芝 半導体装置
US20090109996A1 (en) * 2007-10-29 2009-04-30 Hoover Russell D Network on Chip
US20090125706A1 (en) * 2007-11-08 2009-05-14 Hoover Russell D Software Pipelining on a Network on Chip
US20090125703A1 (en) * 2007-11-09 2009-05-14 Mejdrich Eric O Context Switching on a Network On Chip
US8261025B2 (en) 2007-11-12 2012-09-04 International Business Machines Corporation Software pipelining on a network on chip
US8526422B2 (en) * 2007-11-27 2013-09-03 International Business Machines Corporation Network on chip with partitions
US7996648B2 (en) 2007-12-19 2011-08-09 Microsoft Corporation Coupled symbiotic operating systems
US8473667B2 (en) * 2008-01-11 2013-06-25 International Business Machines Corporation Network on chip that maintains cache coherency with invalidation messages
US8719553B2 (en) * 2008-01-31 2014-05-06 Arm Norway As Method for re-circulating a fragment through a rendering pipeline
US8044971B2 (en) * 2008-01-31 2011-10-25 Arm Norway As Methods of and apparatus for processing computer graphics
US8719555B2 (en) * 2008-01-31 2014-05-06 Arm Norway As Method for overcoming livelock in a multi-threaded system
US8200939B2 (en) * 2008-01-31 2012-06-12 Arm Norway As Memory management unit in a microprocessor system
US8115783B2 (en) * 2008-01-31 2012-02-14 Arm Norway As Methods of and apparatus for processing computer graphics
US9596324B2 (en) * 2008-02-08 2017-03-14 Broadcom Corporation System and method for parsing and allocating a plurality of packets to processor core threads
US8490110B2 (en) * 2008-02-15 2013-07-16 International Business Machines Corporation Network on chip with a low latency, high bandwidth application messaging interconnect
US20090260013A1 (en) * 2008-04-14 2009-10-15 International Business Machines Corporation Computer Processors With Plural, Pipelined Hardware Threads Of Execution
US20090271172A1 (en) * 2008-04-24 2009-10-29 International Business Machines Corporation Emulating A Computer Run Time Environment
US8423715B2 (en) 2008-05-01 2013-04-16 International Business Machines Corporation Memory management among levels of cache in a memory hierarchy
US8392664B2 (en) * 2008-05-09 2013-03-05 International Business Machines Corporation Network on chip
US20090282419A1 (en) * 2008-05-09 2009-11-12 International Business Machines Corporation Ordered And Unordered Network-Addressed Message Control With Embedded DMA Commands For A Network On Chip
US8494833B2 (en) * 2008-05-09 2013-07-23 International Business Machines Corporation Emulating a computer run time environment
US20090282211A1 (en) * 2008-05-09 2009-11-12 International Business Machines Network On Chip With Partitions
US8214845B2 (en) * 2008-05-09 2012-07-03 International Business Machines Corporation Context switching in a network on chip by thread saving and restoring pointers to memory arrays containing valid message data
US8230179B2 (en) * 2008-05-15 2012-07-24 International Business Machines Corporation Administering non-cacheable memory load instructions
US8438578B2 (en) * 2008-06-09 2013-05-07 International Business Machines Corporation Network on chip with an I/O accelerator
US8195884B2 (en) * 2008-09-18 2012-06-05 International Business Machines Corporation Network on chip with caching restrictions for pages of computer memory
US8347309B2 (en) * 2009-07-29 2013-01-01 Oracle America, Inc. Dynamic mitigation of thread hogs on a threaded processor
US8266383B1 (en) * 2009-09-28 2012-09-11 Nvidia Corporation Cache miss processing using a defer/replay mechanism
US20110153953A1 (en) * 2009-12-23 2011-06-23 Prakash Khemani Systems and methods for managing large cache services in a multi-core system
US8516577B2 (en) * 2010-09-22 2013-08-20 Intel Corporation Regulating atomic memory operations to prevent denial of service attack
US8751720B2 (en) * 2010-11-08 2014-06-10 Moon J. Kim Computationally-networked unified data bus
US8930676B2 (en) * 2010-12-22 2015-01-06 Via Technologies, Inc. Master core discovering enabled cores in microprocessor comprising plural multi-core dies
US8583850B2 (en) * 2011-02-14 2013-11-12 Oracle America, Inc. Micro crossbar switch and on-die data network using the same
CN102135904A (zh) * 2011-03-11 2011-07-27 华为技术有限公司 一种面向多核目标系统的映射方法及装置
US9921967B2 (en) 2011-07-26 2018-03-20 Intel Corporation Multi-core shared page miss handler
US9330002B2 (en) * 2011-10-31 2016-05-03 Cavium, Inc. Multi-core interconnect in a network processor
CN102520916B (zh) * 2011-11-28 2015-02-11 深圳中微电科技有限公司 在mvp处理器中消除纹理延迟和寄存器管理的方法
CN110083494B (zh) * 2011-12-30 2023-07-25 英特尔公司 在多核心环境中管理硬件错误的方法和装置
WO2013118188A1 (en) * 2012-02-10 2013-08-15 Hitachi, Ltd. Storage system and method thereof for migrating data with cache bypass
US9665375B2 (en) 2012-04-26 2017-05-30 Oracle International Corporation Mitigation of thread hogs on a threaded processor and prevention of allocation of resources to one or more instructions following a load miss
US9514069B1 (en) 2012-05-24 2016-12-06 Schwegman, Lundberg & Woessner, P.A. Enhanced computer processor and memory management architecture
US9575806B2 (en) 2012-06-29 2017-02-21 Intel Corporation Monitoring accesses of a thread to multiple memory controllers and selecting a thread processor for the thread based on the monitoring
US9141426B2 (en) * 2012-09-28 2015-09-22 Intel Corporation Processor having per core and package level P0 determination functionality
US9047092B2 (en) * 2012-12-21 2015-06-02 Arm Limited Resource management within a load store unit
US9582604B2 (en) * 2013-03-27 2017-02-28 Thomson Licensing Caching mechanism to improve user interface responsiveness
US9367472B2 (en) 2013-06-10 2016-06-14 Oracle International Corporation Observation of data in persistent memory
WO2015050594A2 (en) * 2013-06-16 2015-04-09 President And Fellows Of Harvard College Methods and apparatus for parallel processing
KR20150019349A (ko) * 2013-08-13 2015-02-25 삼성전자주식회사 다중 쓰레드 실행 프로세서 및 이의 동작 방법
US9921848B2 (en) * 2014-03-27 2018-03-20 International Business Machines Corporation Address expansion and contraction in a multithreading computer system
US9940264B2 (en) 2014-10-10 2018-04-10 International Business Machines Corporation Load and store ordering for a strongly ordered simultaneous multithreading core
US9575802B2 (en) 2014-10-28 2017-02-21 International Business Machines Corporation Controlling execution of threads in a multi-threaded processor
US11080064B2 (en) 2014-10-28 2021-08-03 International Business Machines Corporation Instructions controlling access to shared registers of a multi-threaded processor
US9870340B2 (en) * 2015-03-30 2018-01-16 International Business Machines Corporation Multithreading in vector processors
US9864700B1 (en) * 2016-08-17 2018-01-09 Advanced Micro Devices, Inc. Method and apparatus for power reduction in a multi-threaded mode
US11157407B2 (en) 2016-12-15 2021-10-26 Optimum Semiconductor Technologies Inc. Implementing atomic primitives using cache line locking
US10606762B2 (en) 2017-06-16 2020-03-31 International Business Machines Corporation Sharing virtual and real translations in a virtual cache
US10698836B2 (en) 2017-06-16 2020-06-30 International Business Machines Corporation Translation support for a virtual cache
US10831664B2 (en) 2017-06-16 2020-11-10 International Business Machines Corporation Cache structure using a logical directory
US11294710B2 (en) * 2017-11-10 2022-04-05 Advanced Micro Devices, Inc. Thread switch for accesses to slow memory
US11226819B2 (en) * 2017-11-20 2022-01-18 Advanced Micro Devices, Inc. Selective prefetching in multithreaded processing units
US10997029B2 (en) * 2019-03-07 2021-05-04 International Business Machines Corporation Core repair with failure analysis and recovery probe
CN110083571B (zh) * 2019-03-27 2023-02-03 中国计量大学上虞高等研究院有限公司 一种分布式实时存储装置及其数据传输方法
CN112541166B (zh) * 2019-09-20 2024-09-06 杭州中天微系统有限公司 一种方法、系统和计算机可读存储介质
US11874761B2 (en) * 2019-12-17 2024-01-16 The Boeing Company Apparatus and method to assign threads to a plurality of processor cores for virtualization of a hardware configuration
CN111258732B (zh) * 2020-01-13 2023-07-04 中科寒武纪科技股份有限公司 一种数据处理的方法、数据处理装置和电子设备
US20230359488A1 (en) * 2020-10-01 2023-11-09 Universiteit Gent Central processing unit with multiple instruction queues
US12106110B2 (en) * 2021-08-31 2024-10-01 Ceremorphic, Inc. Multiple interfaces for multiple threads of a hardware multi-thread microprocessor
CN115114188B (zh) * 2022-06-23 2023-04-07 云南大学 一种嵌入式处理器高速缓存器结构及控制方法
US20240388389A1 (en) * 2023-05-16 2024-11-21 Honeywell International Inc. Frequency hopping technique for multiple frequency bands in networks
CN116910071B (zh) * 2023-07-06 2026-01-13 北京华胜天成科技股份有限公司 一种基于无锁缓冲区的数据采集方法及系统
CN118519956B (zh) * 2024-06-07 2025-05-09 北京开源芯片研究院 数据交互方法、装置、电子设备及储存介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6209020B1 (en) * 1996-09-20 2001-03-27 Nortel Networks Limited Distributed pipeline memory architecture for a computer system with even and odd pids
US5978379A (en) * 1997-01-23 1999-11-02 Gadzoox Networks, Inc. Fiber channel learning bridge, learning half bridge, and protocol
US5974538A (en) * 1997-02-21 1999-10-26 Wilmot, Ii; Richard Byron Method and apparatus for annotating operands in a computer system with source instruction identifiers
US5907712A (en) * 1997-05-30 1999-05-25 International Business Machines Corporation Method for reducing processor interrupt processing time by transferring predetermined interrupt status to a system memory for eliminating PIO reads from the interrupt handler
US6233599B1 (en) * 1997-07-10 2001-05-15 International Business Machines Corporation Apparatus and method for retrofitting multi-threaded operations on a computer by partitioning and overlapping registers
US6016542A (en) * 1997-12-31 2000-01-18 Intel Corporation Detecting long latency pipeline stalls for thread switching
US6535905B1 (en) * 1999-04-29 2003-03-18 Intel Corporation Method and apparatus for thread switching within a multithreaded processor
US6901491B2 (en) * 2001-10-22 2005-05-31 Sun Microsystems, Inc. Method and apparatus for integration of communication links with a remote direct memory access protocol
US8024735B2 (en) * 2002-06-14 2011-09-20 Intel Corporation Method and apparatus for ensuring fairness and forward progress when executing multiple threads of execution
US7085959B2 (en) * 2002-07-03 2006-08-01 Hewlett-Packard Development Company, L.P. Method and apparatus for recovery from loss of lock step
US6931489B2 (en) * 2002-08-12 2005-08-16 Hewlett-Packard Development Company, L.P. Apparatus and methods for sharing cache among processors
US7062606B2 (en) * 2002-11-01 2006-06-13 Infineon Technologies Ag Multi-threaded embedded processor using deterministic instruction memory to guarantee execution of pre-selected threads during blocking events
US7093079B2 (en) * 2002-12-17 2006-08-15 Intel Corporation Snoop filter bypass

Also Published As

Publication number Publication date
US20050044319A1 (en) 2005-02-24
TW200523802A (en) 2005-07-16
US7873785B2 (en) 2011-01-18
DE602004031855D1 (de) 2011-04-28
TWI256590B (en) 2006-06-11
EP1660992A2 (de) 2006-05-31
WO2005020067A3 (en) 2006-05-26
EP1660992B1 (de) 2011-03-16
WO2005020067A2 (en) 2005-03-03

Similar Documents

Publication Publication Date Title
ATE502338T1 (de) Mehrkern-mehrthread-prozessor
DE60239227D1 (de) Verfahren und gerät, um kommunikationsverbindungen mit einem fern dma zugriff protokol zu integrieren
Putnam et al. A reconfigurable fabric for accelerating large-scale datacenter services
Butts Synchronization through communication in a massively parallel processor array
ATE372550T1 (de) Cache-crossbar-arbitrierung
DE602004017029D1 (de) Mehrprozessorsystem und -verfahren mit mehreren speicher-hub-modulen
CN104699631A (zh) Gpdsp中多层次协同与共享的存储装置和访存方法
TW200632742A (en) Method and apparatus for varying energy per instruction according to the amount of available parallelism
McCalpin Memory bandwidth and system balance in hpc systems
CN105378652B (zh) 线程共享资源分配方法及装置
FR2927438B1 (fr) Methode de prechargement dans une hierarchie de memoires des configurations d'un systeme heterogene reconfigurable de traitement de l'information
CN109918197B (zh) 数据处理装置
CN110503179A (zh) 计算方法以及相关产品
ATE550716T1 (de) Crossbar-architektur mit mehrkern-mehrthread- prozessoren
Wang et al. A low overhead in-network data compressor for the memory hierarchy of chip multiprocessors
Eisenman et al. Parallel graph processing on modern multi-core servers: New findings and remaining challenges
WO2016048553A1 (en) Nonvolatile memory module
Marino et al. Insights on memory controller scaling in multi-core embedded systems
Adegbija et al. Analysis of cache tuner architectural layouts for multicore embedded systems
Lashgar et al. Warp size impact in GPUs: large or small?
Lin et al. DRAM-level prefetching for fully-buffered DIMM: Design, performance and power saving
Falahati et al. ISP: Using idle SMs in hardware-based prefetching
Sibai On the performance benefits of sharing and privatizing second and third-level cache memories in homogeneous multi-core architectures
TW200728985A (en) Reduction of snoop accesses
Li et al. CCC: crossbar connected caches for reducing energy consumption of on-chip multiprocessors

Legal Events

Date Code Title Description
RER Ceased as to paragraph 5 lit. 3 law introducing patent treaties