AU2001229567A1 - Method and apparatus for partitioning a resource between multiple threads withina multi-threaded processor - Google Patents

Method and apparatus for partitioning a resource between multiple threads withina multi-threaded processor

Info

Publication number
AU2001229567A1
AU2001229567A1 AU2001229567A AU2956701A AU2001229567A1 AU 2001229567 A1 AU2001229567 A1 AU 2001229567A1 AU 2001229567 A AU2001229567 A AU 2001229567A AU 2956701 A AU2956701 A AU 2956701A AU 2001229567 A1 AU2001229567 A1 AU 2001229567A1
Authority
AU
Australia
Prior art keywords
withina
partitioning
resource
multiple threads
threaded processor
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.)
Abandoned
Application number
AU2001229567A
Inventor
Glenn Hinton
Robert Krick
Chan W Lee
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of AU2001229567A1 publication Critical patent/AU2001229567A1/en
Abandoned legal-status Critical Current

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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • 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/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • 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/3017Runtime instruction translation, e.g. macros
    • 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/3802Instruction prefetching
    • 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/3802Instruction prefetching
    • G06F9/3808Instruction prefetching for instruction reuse, e.g. trace cache, branch target cache
    • 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/3818Decoding for concurrent execution
    • G06F9/382Pipelined decoding, e.g. using predecoding
    • 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
    • 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/3838Dependency mechanisms, e.g. register scoreboarding
    • G06F9/384Register renaming
    • 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/3854Instruction completion, e.g. retiring, committing or graduating
    • G06F9/3856Reordering of instructions, e.g. using queues or age tags
AU2001229567A 2000-03-24 2001-01-16 Method and apparatus for partitioning a resource between multiple threads withina multi-threaded processor Abandoned AU2001229567A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09534191 2000-03-24
US09/534,191 US7856633B1 (en) 2000-03-24 2000-03-24 LRU cache replacement for a partitioned set associative cache
PCT/US2001/001577 WO2001077820A2 (en) 2000-03-24 2001-01-16 Method and apparatus for partitioning a resource between multiple threads within a multi-threaded processor

Publications (1)

Publication Number Publication Date
AU2001229567A1 true AU2001229567A1 (en) 2001-10-23

Family

ID=24129052

Family Applications (1)

Application Number Title Priority Date Filing Date
AU2001229567A Abandoned AU2001229567A1 (en) 2000-03-24 2001-01-16 Method and apparatus for partitioning a resource between multiple threads withina multi-threaded processor

Country Status (8)

Country Link
US (1) US7856633B1 (en)
CN (1) CN1429361B (en)
AU (1) AU2001229567A1 (en)
DE (1) DE10195962T1 (en)
GB (1) GB2377529B (en)
HK (1) HK1049529B (en)
TW (1) TWI233051B (en)
WO (1) WO2001077820A2 (en)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7380085B2 (en) 2001-11-14 2008-05-27 Intel Corporation Memory adapted to provide dedicated and or shared memory to multiple processors and method therefor
US7363474B2 (en) 2001-12-31 2008-04-22 Intel Corporation Method and apparatus for suspending execution of a thread until a specified memory access occurs
US7127561B2 (en) 2001-12-31 2006-10-24 Intel Corporation Coherency techniques for suspending execution of a thread until a specified memory access occurs
US20030229740A1 (en) * 2002-06-10 2003-12-11 Maly John Warren Accessing resources in a microprocessor having resources of varying scope
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
US7529914B2 (en) * 2004-06-30 2009-05-05 Intel Corporation Method and apparatus for speculative execution of uncontended lock instructions
US7237094B2 (en) * 2004-10-14 2007-06-26 International Business Machines Corporation Instruction group formation and mechanism for SMT dispatch
US8195922B2 (en) * 2005-03-18 2012-06-05 Marvell World Trade, Ltd. System for dynamically allocating processing time to multiple threads
GB2427045B (en) * 2005-06-06 2007-11-21 Transitive Ltd Method and apparatus for converting program code with access coordination for a shared resource
US8543769B2 (en) * 2009-07-27 2013-09-24 International Business Machines Corporation Fine grained cache allocation
US8745618B2 (en) * 2009-08-25 2014-06-03 International Business Machines Corporation Cache partitioning with a partition table to effect allocation of ways and rows of the cache to virtual machine in virtualized environments
US8370578B2 (en) * 2011-03-03 2013-02-05 Hitachi, Ltd. Storage controller and method of controlling storage controller
US8458447B2 (en) * 2011-06-17 2013-06-04 Freescale Semiconductor, Inc. Branch target buffer addressing in a data processor
US20130097387A1 (en) * 2011-10-14 2013-04-18 The Board Of Trustees Of The Leland Stanford Junior University Memory-based apparatus and method
CN104375887B (en) * 2013-08-16 2019-06-25 联想(北京)有限公司 A kind of information processing method and electronic equipment
CN104461928B (en) * 2013-09-16 2018-11-16 华为技术有限公司 Divide the method and device of cache
GB2519103B (en) * 2013-10-09 2020-05-06 Advanced Risc Mach Ltd Decoding a complex program instruction corresponding to multiple micro-operations
GB2533415B (en) * 2014-12-19 2022-01-19 Advanced Risc Mach Ltd Apparatus with at least one resource having thread mode and transaction mode, and method
EP3258382B1 (en) * 2016-06-14 2021-08-11 Arm Ltd A storage controller
US10606599B2 (en) * 2016-12-09 2020-03-31 Advanced Micro Devices, Inc. Operation cache
US10282296B2 (en) 2016-12-12 2019-05-07 Intel Corporation Zeroing a cache line
CN108255587B (en) * 2016-12-29 2021-08-24 展讯通信(上海)有限公司 Synchronous multi-thread processor
US10437593B2 (en) * 2017-04-27 2019-10-08 Nvidia Corporation Techniques for comprehensively synchronizing execution threads
US10642757B2 (en) 2017-11-14 2020-05-05 International Business Machines Corporation Single call to perform pin and unpin operations
US10558366B2 (en) 2017-11-14 2020-02-11 International Business Machines Corporation Automatic pinning of units of memory
US10635602B2 (en) * 2017-11-14 2020-04-28 International Business Machines Corporation Address translation prior to receiving a storage reference using the address to be translated
US10592164B2 (en) 2017-11-14 2020-03-17 International Business Machines Corporation Portions of configuration state registers in-memory
US10901738B2 (en) 2017-11-14 2021-01-26 International Business Machines Corporation Bulk store and load operations of configuration state registers
US10552070B2 (en) * 2017-11-14 2020-02-04 International Business Machines Corporation Separation of memory-based configuration state registers based on groups
US10761751B2 (en) 2017-11-14 2020-09-01 International Business Machines Corporation Configuration state registers grouped based on functional affinity
US10698686B2 (en) * 2017-11-14 2020-06-30 International Business Machines Corporation Configurable architectural placement control
US10664181B2 (en) 2017-11-14 2020-05-26 International Business Machines Corporation Protecting in-memory configuration state registers
US10496437B2 (en) 2017-11-14 2019-12-03 International Business Machines Corporation Context switch by changing memory pointers
US10761983B2 (en) * 2017-11-14 2020-09-01 International Business Machines Corporation Memory based configuration state registers
CN108182303B (en) * 2017-12-13 2020-08-28 京微齐力(北京)科技有限公司 Programmable device structure based on mixed function memory unit
US10540181B2 (en) * 2018-01-19 2020-01-21 Marvell World Trade Ltd. Managing branch prediction information for different contexts
US10599437B2 (en) 2018-01-19 2020-03-24 Marvell World Trade Ltd. Managing obscured branch prediction information
CN112579277B (en) * 2020-12-24 2022-09-16 海光信息技术股份有限公司 Central processing unit, method, device and storage medium for simultaneous multithreading
CN112953853A (en) * 2021-02-05 2021-06-11 井芯微电子技术(天津)有限公司 Shared cache system and method, electronic device and storage medium
US20230273926A1 (en) * 2022-02-25 2023-08-31 Visa International Service Association System, Method, and Computer Program Product for Efficiently Storing Multi-Threaded Log Data

Family Cites Families (103)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3771138A (en) 1971-08-31 1973-11-06 Ibm Apparatus and method for serializing instructions from two independent instruction streams
JPS6145354A (en) 1984-08-10 1986-03-05 Nec Corp Microprocessor
US5228131A (en) 1988-02-24 1993-07-13 Mitsubishi Denki Kabushiki Kaisha Data processor with selectively enabled and disabled branch prediction operation
JPH06105460B2 (en) 1988-06-07 1994-12-21 富士通株式会社 Multiprocessor processor switching device
GB8817911D0 (en) 1988-07-27 1988-09-01 Int Computers Ltd Data processing apparatus
EP0473714A1 (en) 1989-05-26 1992-03-11 Massachusetts Institute Of Technology Parallel multithreaded data processing system
GB2234613B (en) 1989-08-03 1993-07-07 Sun Microsystems Inc Method and apparatus for switching context of state elements in a microprocessor
US5167024A (en) 1989-09-08 1992-11-24 Apple Computer, Inc. Power management for a laptop computer with slow and sleep modes
US5396635A (en) 1990-06-01 1995-03-07 Vadem Corporation Power conservation apparatus having multiple power reduction levels dependent upon the activity of the computer system
DE4129614C2 (en) 1990-09-07 2002-03-21 Hitachi Ltd System and method for data processing
US5428810A (en) 1991-03-15 1995-06-27 Hewlett-Packard Company Allocation of resources of a pipelined processor by clock phase for parallel execution of dependent processes
US5430850A (en) 1991-07-22 1995-07-04 Massachusetts Institute Of Technology Data processing system with synchronization coprocessor for multiple threads
JP2520544B2 (en) 1991-09-26 1996-07-31 インターナショナル・ビジネス・マシーンズ・コーポレイション Method for monitoring task overrun status and apparatus for detecting overrun of task execution cycle
US5357617A (en) 1991-11-22 1994-10-18 International Business Machines Corporation Method and apparatus for substantially concurrent multiple instruction thread processing by a single pipeline processor
US5875464A (en) * 1991-12-10 1999-02-23 International Business Machines Corporation Computer system with private and shared partitions in cache
RU2029359C1 (en) 1991-12-29 1995-02-20 Вычислительный центр коллективного пользования РАН Data processing device
US5404469A (en) 1992-02-25 1995-04-04 Industrial Technology Research Institute Multi-threaded microprocessor architecture utilizing static interleaving
US5452401A (en) 1992-03-31 1995-09-19 Seiko Epson Corporation Selective power-down for high performance CPU/system
US5386561A (en) 1992-03-31 1995-01-31 International Business Machines Corporation Method of integrated system load control through dynamic time-slicing in a virtual storage environment
US5325526A (en) 1992-05-12 1994-06-28 Intel Corporation Task scheduling in a multicomputer system
JPH0695898A (en) 1992-09-16 1994-04-08 Hitachi Ltd Control method for virtual computer and virtual computer system
US5392437A (en) 1992-11-06 1995-02-21 Intel Corporation Method and apparatus for independently stopping and restarting functional units
DK0627100T3 (en) 1992-12-23 2000-06-26 Ebauchesfabrik Eta Ag Low power multitasking controller
US5473572A (en) 1993-02-16 1995-12-05 Chips And Technologies, Inc. Power saving system for a memory controller
US5586332A (en) 1993-03-24 1996-12-17 Intel Corporation Power management for low power processors through the use of auto clock-throttling
DE69429204T2 (en) 1993-03-26 2002-07-25 Cabletron Systems Inc Sequence control method and device for a communication network
JPH06314203A (en) 1993-04-28 1994-11-08 Fujitsu Ltd Method and device for optimizing compiler
US5337285A (en) 1993-05-21 1994-08-09 Rambus, Inc. Method and apparatus for power control in devices
US5454117A (en) 1993-08-25 1995-09-26 Nexgen, Inc. Configurable branch prediction for a processor performing speculative execution
US5528513A (en) 1993-11-04 1996-06-18 Digital Equipment Corp. Scheduling and admission control policy for a continuous media server
US5632038A (en) 1994-02-22 1997-05-20 Dell Usa, L.P. Secondary cache system for portable computer
US5524263A (en) 1994-02-25 1996-06-04 Intel Corporation Method and apparatus for partial and full stall handling in allocation
US5809271A (en) 1994-03-01 1998-09-15 Intel Corporation Method and apparatus for changing flow of control in a processor
JP3547482B2 (en) 1994-04-15 2004-07-28 株式会社日立製作所 Information processing equipment
US5590061A (en) 1994-05-12 1996-12-31 Apple Computer, Inc. Method and apparatus for thermal management in a computer system
US5623471A (en) 1994-05-26 1997-04-22 International Business Machines Corporation Adaptive backup for storage library
US6009454A (en) 1994-09-30 1999-12-28 Allen-Bradley Company, Llc Multi-tasking operation system for industrial controller
US5724565A (en) 1995-02-03 1998-03-03 International Business Machines Corporation Method and system for processing first and second sets of instructions by first and second types of processing systems
JPH08320797A (en) 1995-05-24 1996-12-03 Fuji Xerox Co Ltd Program control system
JPH096633A (en) 1995-06-07 1997-01-10 Internatl Business Mach Corp <Ibm> Method and system for operation of high-performance multiplelogical route in data-processing system
US5996083A (en) 1995-08-11 1999-11-30 Hewlett-Packard Company Microprocessor having software controllable power consumption
US5983339A (en) 1995-08-21 1999-11-09 International Business Machines Corporation Power down system and method for pipelined logic functions
US5900025A (en) 1995-09-12 1999-05-04 Zsp Corporation Processor having a hierarchical control register file and methods for operating the same
US5701432A (en) 1995-10-13 1997-12-23 Sun Microsystems, Inc. Multi-threaded processing system having a cache that is commonly accessible to each thread
US5799180A (en) 1995-10-31 1998-08-25 Texas Instruments Incorporated Microprocessor circuits, systems, and methods passing intermediate instructions between a short forward conditional branch instruction and target instruction through pipeline, then suppressing results if branch taken
US5740417A (en) 1995-12-05 1998-04-14 Motorola, Inc. Pipelined processor operating in different power mode based on branch prediction state of branch history bit encoded as taken weakly not taken and strongly not taken states
US5701448A (en) 1995-12-15 1997-12-23 Cyrix Corporation Detecting segment limit violations for branch target when the branch unit does not supply the linear address
US5809522A (en) 1995-12-18 1998-09-15 Advanced Micro Devices, Inc. Microprocessor system with process identification tag entries to reduce cache flushing after a context switch
US5880979A (en) 1995-12-21 1999-03-09 Intel Corporation System for providing the absolute difference of unsigned values
RU2110089C1 (en) 1995-12-22 1998-04-27 Бурцев Всеволод Сергеевич Computer system
GB2311880A (en) 1996-04-03 1997-10-08 Advanced Risc Mach Ltd Partitioned cache memory
GB2311882B (en) 1996-04-04 2000-08-09 Videologic Ltd A data processing management system
KR100500002B1 (en) 1996-08-27 2005-09-08 마츠시타 덴끼 산교 가부시키가이샤 Multithreaded processor for processing multiple instruction streams independently of each other by flexibly controlling throughput in each instruction stream
US6385715B1 (en) 1996-11-13 2002-05-07 Intel Corporation Multi-threading for a processor utilizing a replay queue
US6353844B1 (en) * 1996-12-23 2002-03-05 Silicon Graphics, Inc. Guaranteeing completion times for batch jobs without static partitioning
US6088788A (en) 1996-12-27 2000-07-11 International Business Machines Corporation Background completion of instruction and associated fetch request in a multithread processor
US5854922A (en) 1997-01-16 1998-12-29 Ford Motor Company Micro-sequencer apparatus and method of combination state machine and instruction memory
EP0856797B1 (en) * 1997-01-30 2003-05-21 STMicroelectronics Limited A cache system for concurrent processes
US6470376B1 (en) 1997-03-04 2002-10-22 Matsushita Electric Industrial Co., Ltd Processor capable of efficiently executing many asynchronous event tasks
US5835705A (en) 1997-03-11 1998-11-10 International Business Machines Corporation Method and system for performance per-thread monitoring in a multithreaded processor
GB2323188B (en) 1997-03-14 2002-02-06 Nokia Mobile Phones Ltd Enabling and disabling clocking signals to elements
US6314511B2 (en) 1997-04-03 2001-11-06 University Of Washington Mechanism for freeing registers on processors that perform dynamic out-of-order execution of instructions using renaming registers
US6314530B1 (en) 1997-04-08 2001-11-06 Advanced Micro Devices, Inc. Processor having a trace access instruction to access on-chip trace memory
US6366945B1 (en) * 1997-05-23 2002-04-02 Ibm Corporation Flexible dynamic partitioning of resources in a cluster computing environment
US6035374A (en) 1997-06-25 2000-03-07 Sun Microsystems, Inc. Method of executing coded instructions in a multiprocessor having shared execution resources including active, nap, and sleep states in accordance with cache miss latency
US6161167A (en) * 1997-06-27 2000-12-12 Advanced Micro Devices, Inc. Fully associate cache employing LRU groups for cache replacement and mechanism for selecting an LRU group
US5872965A (en) 1997-06-30 1999-02-16 Sun Microsystems, Inc. System and method for performing multiway branches using a visual instruction set
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
US5996085A (en) 1997-07-15 1999-11-30 International Business Machines Corporation Concurrent execution of machine context synchronization operations and non-interruptible instructions
JP3790021B2 (en) 1997-08-13 2006-06-28 株式会社東芝 Semiconductor memory device
US6105051A (en) 1997-10-23 2000-08-15 International Business Machines Corporation Apparatus and method to guarantee forward progress in execution of threads in a multithreaded processor
US6212544B1 (en) 1997-10-23 2001-04-03 International Business Machines Corporation Altering thread priorities 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
US6697935B1 (en) 1997-10-23 2004-02-24 International Business Machines Corporation Method and apparatus for selecting thread switch events in a multithreaded processor
US5987492A (en) * 1997-10-31 1999-11-16 Sun Microsystems, Inc. Method and apparatus for processor sharing
US6381682B2 (en) * 1998-06-10 2002-04-30 Compaq Information Technologies Group, L.P. Method and apparatus for dynamically sharing memory in a multiprocessor system
US5999963A (en) * 1997-11-07 1999-12-07 Lucent Technologies, Inc. Move-to-rear list scheduling
US6442585B1 (en) * 1997-11-26 2002-08-27 Compaq Computer Corporation Method for scheduling contexts based on statistics of memory system interactions in a computer system
US6256775B1 (en) 1997-12-11 2001-07-03 International Business Machines Corporation Facilities for detailed software performance analysis in a multithreaded processor
US6182210B1 (en) 1997-12-16 2001-01-30 Intel Corporation Processor having multiple program counters and trace buffers outside an execution pipeline
US6052709A (en) 1997-12-23 2000-04-18 Bright Light Technologies, Inc. Apparatus and method for controlling delivery of unsolicited electronic mail
US5999932A (en) 1998-01-13 1999-12-07 Bright Light Technologies, Inc. System and method for filtering unsolicited electronic mail messages using data matching and heuristic processing
US6430593B1 (en) 1998-03-10 2002-08-06 Motorola Inc. Method, device and article of manufacture for efficient task scheduling in a multi-tasking preemptive priority-based real-time operating system
US6092175A (en) 1998-04-02 2000-07-18 University Of Washington Shared register storage mechanisms for multithreaded computer systems with out-of-order execution
US6330584B1 (en) 1998-04-03 2001-12-11 Mmc Networks, Inc. Systems and methods for multi-tasking, resource sharing and execution of computer instructions
US6374286B1 (en) * 1998-04-06 2002-04-16 Rockwell Collins, Inc. Real time processor capable of concurrently running multiple independent JAVA machines
US6308279B1 (en) 1998-05-22 2001-10-23 Intel Corporation Method and apparatus for power mode transition in a multi-thread processor
US6480952B2 (en) 1998-05-26 2002-11-12 Advanced Micro Devices, Inc. Emulation coprocessor
US6205519B1 (en) * 1998-05-27 2001-03-20 Hewlett Packard Company Cache management for a multi-threaded processor
US6317820B1 (en) 1998-06-05 2001-11-13 Texas Instruments Incorporated Dual-mode VLIW architecture providing a software-controlled varying mix of instruction-level and task-level parallelism
US6289461B1 (en) 1998-06-09 2001-09-11 Placeware, Inc. Bi-directional process-to-process byte stream protocol
US6115709A (en) 1998-09-18 2000-09-05 Tacit Knowledge Systems, Inc. Method and system for constructing a knowledge profile of a user having unrestricted and restricted access portions according to respective levels of confidence of content of the portions
US6625635B1 (en) 1998-11-02 2003-09-23 International Business Machines Corporation Deterministic and preemptive thread scheduling and its use in debugging multithreaded applications
US6477562B2 (en) 1998-12-16 2002-11-05 Clearwater Networks, Inc. Prioritized instruction scheduling for multi-streaming processors
US6389449B1 (en) 1998-12-16 2002-05-14 Clearwater Networks, Inc. Interstream control and communications for multi-streaming digital processors
US7111290B1 (en) 1999-01-28 2006-09-19 Ati International Srl Profiling program execution to identify frequently-executed portions and to assist binary translation
US6493800B1 (en) * 1999-03-31 2002-12-10 International Business Machines Corporation Method and system for dynamically partitioning a shared cache
US6535905B1 (en) 1999-04-29 2003-03-18 Intel Corporation Method and apparatus for thread switching within a multithreaded processor
US6438671B1 (en) 1999-07-01 2002-08-20 International Business Machines Corporation Generating partition corresponding real address in partitioned mode supporting system
US6542921B1 (en) * 1999-07-08 2003-04-01 Intel Corporation Method and apparatus for controlling the processing priority between multiple threads in 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
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

Also Published As

Publication number Publication date
US7856633B1 (en) 2010-12-21
GB2377529B (en) 2004-10-27
TWI233051B (en) 2005-05-21
DE10195962T1 (en) 2003-02-20
WO2001077820A2 (en) 2001-10-18
HK1049529B (en) 2005-05-13
HK1049529A1 (en) 2003-05-16
GB0224460D0 (en) 2002-11-27
CN1429361B (en) 2010-06-23
GB2377529A (en) 2003-01-15
WO2001077820A3 (en) 2002-04-18
CN1429361A (en) 2003-07-09

Similar Documents

Publication Publication Date Title
AU2001229567A1 (en) Method and apparatus for partitioning a resource between multiple threads withina multi-threaded processor
HK1069648A1 (en) A multi-threaded processor and method for assigning thread priority
IL146159A0 (en) Method and apparatus for thread switching within a multi-threaded processor
AU5640800A (en) Method and apparatus for controlling the processing priority between multiple threads in a multithreaded processor
AU4078100A (en) System and method for optimizing the allocation of a resource
AU4208900A (en) System and method for optimizing the allocation of a resource
AU2592200A (en) A method and apparatus for performing predicate prediction
AU2387400A (en) A method and apparatus for improved predicate prediction
HK1068434A1 (en) Method and apparatus for assigning thread priority in a multi-threaded processor
GB0224107D0 (en) System and method for securing a computer
AU2001294112A1 (en) System for allocating resources in a process system and method of operating the same
AU2003287706A1 (en) Apparatus and method for multi-threaded processors performance control
AU6274999A (en) Method for forming a critical dimension test structure and its use
AU3299299A (en) System and method for executing a request from a client application
AU2001274967A1 (en) A method and system for managing the resources of an application program
EP1390839A4 (en) Method and apparatus for allocating processor resources in a logically partitioned computer system
AU2001279151A1 (en) System and method for analysing a transactional monitoring system
AU2002231358A1 (en) Method and apparatus for scheduling multiple micro-operations in a processor
AU2001277270A1 (en) Method and apparatus for a morphology-preserving smoothing
AU2001241679A1 (en) Method and apparatus for improving utilization of a resource on a shared client
AU2001241639A1 (en) Method and apparatus for organizing threads
GB2341460B (en) Method and apparatus for arbitrating between requests for access to a shared resource
AU5497401A (en) Apparatus and method for resource arbitration
AU7574398A (en) Method and apparatus for tdm interrupt transmissions between multiple devices and a processor
AU7731496A (en) Method and apparatus for determining the status of a shared resource