CN1914593A - 共享已空闲的处理器执行资源 - Google Patents
共享已空闲的处理器执行资源 Download PDFInfo
- Publication number
- CN1914593A CN1914593A CNA2005800039091A CN200580003909A CN1914593A CN 1914593 A CN1914593 A CN 1914593A CN A2005800039091 A CNA2005800039091 A CN A2005800039091A CN 200580003909 A CN200580003909 A CN 200580003909A CN 1914593 A CN1914593 A CN 1914593A
- Authority
- CN
- China
- Prior art keywords
- processor
- execution resources
- logic
- processor execution
- keeps
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 claims description 16
- 238000013519 translation Methods 0.000 claims description 12
- 238000012545 processing Methods 0.000 description 6
- 230000003068 static effect Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 2
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30076—Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
- G06F9/3009—Thread control instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3851—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Hardware Redundancy (AREA)
- Multi Processors (AREA)
Abstract
处理器包括多个逻辑处理器,以及指令集,所述指令集包括一条或更多条指令,当所述指令被第一逻辑处理器执行时,所述指令响应于第一逻辑处理器被调度进入空闲状态,导致第一逻辑处理器使之前为第一处理器保留的处理器执行资源对所述多个逻辑处理器中的第二处理器可用。
Description
背景
在图1a中描述的处理器高级视图中,处理器被概念化为由两个组件组成,第一个实现处理器的体系结构状态(举例来说,例如它的寄存器和程序计数器),并且第二个由处理器执行资源(举例来说,例如翻译后备缓冲区(Translation Lookaside Buffer,TLB))组成。
如图1b所描述的,在一类基于多处理技术处理器的系统中,多个物理处理器通过总线系统互连,并且每个物理处理器维持在硬件上的单独的体系结构状态以及在硬件上的处理器执行资源的单独的集合。在调度这样的系统的每个处理器去执行不同线程的线程调度情形(scenario)中,当出现下列情况时可能发生一实例:系统中的处理器中的一个已经空闲,因为它正在系统中较慢的设备(例如硬盘驱动器)上等待,或者因为它当前未被调度去执行线程。在该实例中,处理器和它的执行资源的全部也是空闲的,并且对系统的其他处理器是不可用的。
在例如图1c中描述的另一类基于处理器的系统中,为多个逻辑处理器维持在处理器硬件上的单独的体系结构状态的硬件处理器却可以具有单一的处理器核心流水线(corepipeline),所述处理器核心流水线由逻辑处理器以及单个集合的处理器执行资源(包括由逻辑处理器共享的TLB)共享。其中,这样的处理器体系结构可以用具有超线程技术的IntelXeonTM处理器来举例说明,并且这样的处理器体系结构在本领域是公知的。
在这样的逻辑多处理技术系统中,线程调度器可以调度不同的线程以在逻辑处理器中的每一个上执行,因为每个逻辑处理器以与所有其他逻辑处理器分开的方式维持其体系结构状态。当操作系统线程调度器使得逻辑处理器空闲或者逻辑处理器正在等待来自慢储存设备的数据时,逻辑处理器可以或者执行空闲任务(典型地为紧凑循环(tight loop)),并且周期性地检查中断;或者它可以挂起其活动并且等待某个类型的唤醒信号来恢复线程的执行。
与处理器执行资源在物理上是分开的多处理技术系统形成对照,在这类逻辑多处理技术系统中,当这样的系统中的多个逻辑处理器中的一个为空闲时,未被已空闲的逻辑处理器使用的动态分配的处理器执行资源对当前正为用户或系统执行线程的其他逻辑处理器可以是可用的。
然而,可以为逻辑处理器保留逻辑多处理技术系统中的处理器执行资源。这可以以不同的方式来进行。对于一个实施例,逻辑处理器可以锁定动态分配的处理器执行资源(例如来自TLB的翻译寄存器(TR)),从而使它对其他逻辑处理器不可用。在另一实例中,逻辑处理器可以是静态分配的处理器执行资源(例如TC),并且因此这些静态分配的资源可能对其他逻辑处理器不可用。即使在资源保留所针对的逻辑处理器为空闲之后,这些保留的(reserved)资源通常仍然对其他逻辑处理器不可用。因此,在逻辑处理器处于空闲时,由逻辑处理器锁定的TR通常仍然被所述逻辑处理器锁定;并且,在逻辑处理器处于空闲时,分配给逻辑处理器的静态分配的TC仍然被静态地分配给所述逻辑处理器。
附图简要说明
图1描述不同类型的处理器体系结构的高级视图。
图2是在一个实施方案中的处理的流程图。
图3描述在一个实施方案中的基于处理器的系统。
详细说明
在一个实施方案中,处理的发生如图2中的高级流程图中所示。在附图中,两个逻辑处理器,处理器1(200)和处理器2(205),正在执行由包括线程调度器210的操作系统调度的线程。在215中,例如,由于线程的终止或页错误,处理器1从执行线程中切换出来,并且返回线程调度器。如果不再为该逻辑处理器调度任务(220),那么处理器执行空闲序列(225-230)。首先,逻辑处理器放弃由逻辑处理器持有的(held)任何保留的处理器执行资源(225),将它们释放到公共池260。因此,例如,处理器1可以将翻译缓存项或翻译缓存寄存器返回到翻译后备缓冲区中的寄存器通用池。
在不同的实施方案中,在步骤225中的处理可以不同。在一些实施方案中,被释放的以排他方式持有的资源可以是动态分配的资源,并且之前已经被处理器1锁定。在这样的实施方案中,在步骤225,逻辑处理器解锁所述资源并由此使得其对其他逻辑处理器可用。在另一个实施方案中,以排他方式持有的资源可能之前已经被静态地分配给了处理器1。在这样的实施方案中,在步骤225,静态分配的资源被解除分配,并且被返回到动态分配的资源的池260。
在处理器1进入空闲状态(例如在本实施方案中的挂起状态230)后,通过例如中断235的唤醒信号可以请求执行新的或被恢复的线程。在其他实施方案中,处理器可以进入空闲任务循环而不是进入在230中描述的挂起,并且周期性地检查中断。
在唤醒信号之后,通过按需将以排他方式保留的资源锁定到或者静态地分配给它自身,逻辑处理器重新获得以排他方式保留的资源(240)。逻辑处理器随后切换到要引入的(incoming)线程,并且继续该线程的执行(245)。
在挂起或空闲状态之前,由处理器1在225中释放的资源对于另一个例如处理器2(205)的逻辑处理器成为可用的,所述处理器2(205)执行例如被描述的用户线程250的线程。这些资源随后可以在线程的执行期间(255)按需从共享的处理器执行资源的池动态地分配给逻辑处理器。
图3描述在一个实施方案中的基于处理器的系统,其中所述逻辑处理器被实现为处理器300的一部分。在逻辑处理器上执行的程序被储存在通过总线系统320以连接方式耦合到处理器的存储器340中。存储器可以包括储存固件的非易失性存储器部分(section),所述固件包括基本上如上所述地执行处理的线程调度器。
许多其他的实施方案是可能的。例如,尽管上面的描述将其自身限制到逻辑处理器,但是,类似的处理可以适用于共享任何公共的执行资源的物理上分开的多处理器。在这样的实施方案中,实现了逻辑和物理多处理技术的混合方案,其中单独的体系结构状态和一些执行资源在硬件上是分开的,但是其他的执行资源在硬件上是共享的,并且可以使用类似于在图2中描述的处理来释放。在一些实施方案中,上面谈到的线程调度器可以形成驻留在如图3中描述的非易失性存储器中的固件的一个组件,而在其他实施方案中,它可以是储存在处理器可访问的盘介质上的操作系统软件的一部分。在一些实施方案中,被采取来释放和保留处理器执行资源的动作可以直接在硬件上实现,并且附属于处理器的指令执行系统,而在其他的实施方案中,它们可以是被处理器所采取的作为一个或更多个指令的执行的一部分。在一些实施方案中,共享的执行资源可以包括与TLB无关的专用寄存器。实施方案不限于两个处理器,三个或更多个处理器可以共享执行资源并且执行类似于上面描述的处理。
与所要求保护的主题相一致的实施方案可以作为包括机器可读介质的计算机程序产品来提供,所述机器可读介质具有储存在其上的数据,当所述数据被机器访问时,所述数据可以导致机器执行根据所要求保护的主题的处理。机器可读介质可以包括软盘、光盘、DVD-ROM盘、DVD-RAM盘、DVD-RW盘、DVD+RW盘、CD-R盘、CD-RW盘、CD-ROM盘以及磁光盘、ROM、RAM、EPROM、EEPROM、磁或光卡、闪存或适于储存电子指令的其他类型的介质/机器可读介质,但不限于此。此外,实施方案还可以作为计算机程序产品被下载,其中所述程序可以通过在载波或其他传播介质中具体实施的数字信号的方式经由通信链路(例如调制解调器或网络连接)从远程计算机传输到请求的计算机。
所述方法中的许多方法是以它们最基本的形式来描述的,但是可以从所述方法中的任何一个添加或删除步骤,并且可以从被描述的教导中的任一个增加或减少信息,而不背离所要求保护的主题的基本范围。很明显的,对于本领域技术人员,可以做出许多进一步的修改和改动。提供特定的实施方案不是为了限制本发明而是为了举例来说明它。要求保护的主题的范围不是由上面提供的具体实施例来确定,而是仅仅由所附的权利要求书来确定。
Claims (28)
1.一种方法,包括:
在多个处理器共享处理器执行资源的基于处理器的系统中,响应于所述多个处理器中的第一处理器被调度进入空闲状态,使之前为所述第一处理器保留的处理器执行资源对所述多个处理器中的第二处理器可用。
2.如权利要求1所述的方法,还包括响应于所述第一处理器被调度去执行任务,为所述第一处理器保留所述处理器执行资源。
3.如权利要求2所述的方法,其中所述多个处理器中的每一个是所述基于处理器的系统中的逻辑处理器。
4.如权利要求3所述的方法,其中所述第一处理器被调度进入空闲状态还包括所述第一处理器执行请求所述第一处理器进入空闲状态的处理器指令。
5.如权利要求4所述的方法,其中使之前为所述第一处理器保留的所述处理器执行资源对第二处理器可用的操作还包括将所述处理器执行资源释放到从所述第二处理器可访问的处理器执行资源的公共池。
6.如权利要求5所述的方法,其中所述第一处理器被调度去执行任务还包括所述第一处理器接收唤醒信号。
7.如权利要求6所述的方法,其中之前为所述第一处理器保留的所述处理器执行资源还包括之前静态地分配给所述第一处理器的所述处理器执行资源;并且其中将所述处理器执行资源释放到处理器执行资源的公共池的操作还包括解除分配所述处理器执行资源。
8.如权利要求6所述的方法,其中之前为所述第一处理器保留的所述处理器执行资源还包括之前由所述第一处理器锁定的所述处理器执行资源;并且其中将所述处理器执行资源释放到处理器执行资源的公共池的操作还包括所述第一处理器解锁所述处理器执行资源。
9.如权利要求6所述的方法,其中处理器执行资源的所述公共池包括翻译后备缓冲区,并且所述处理器执行资源是来自所述翻译后备缓冲区的翻译缓存项。
10.一种处理器,包括:
多个逻辑处理器;以及
指令集,所述指令集包括一条或多条指令,当所述指令被第一逻辑处理器执行时,所述指令响应于所述第一逻辑处理器被调度进入空闲状态,导致所述第一逻辑处理器使之前为所述第一处理器保留的处理器执行资源对所述多个处理器中的第二处理器可用。
11.如权利要求10所述的处理器,其中所述第一逻辑处理器被调度进入空闲状态还包括所述第一处理器执行请求所述第一逻辑处理器进入空闲状态的处理器指令。
12.如权利要求11所述的处理器,其中导致所述第一逻辑处理器使之前为所述第一逻辑处理器保留的所述处理器执行资源对第二逻辑处理器可用的操作还包括将所述处理器执行资源释放到从所述第二逻辑处理器可访问的处理器执行资源的公共池。
13.如权利要求12所述的处理器,其中之前为所述第一逻辑处理器保留的所述处理器执行资源还包括之前静态地分配给所述第一逻辑处理器的所述处理器执行资源;并且其中将所述处理器执行资源释放到处理器执行资源的公共池的操作还包括解除分配所述处理器执行资源。
14.如权利要求12所述的处理器,其中之前为所述第一逻辑处理器保留的所述处理器执行资源还包括之前静态地分配给所述第一逻辑处理器的所述处理器执行资源;并且其中将所述处理器执行资源释放到处理器执行资源的公共池的操作还包括所述第一处理器解锁所述处理器执行资源。
15.一种系统,包括:
处理器,所述处理器包括
多个逻辑处理器;以及
指令集,所述指令集包括一条或多条指令,当所述指令被第一逻辑处理器执行时,所述指令响应于所述第一逻辑处理器被调度进入空闲状态,导致所述第一逻辑处理器使之前为所述第一处理器保留的处理器执行资源对所述多个处理器中的第二处理器可用;
固件,所述固件调度所述第一逻辑处理器进入空闲状态;以及
将所述固件和所述处理器互连的总线。
16.如权利要求15所述的系统,其中所述第一逻辑处理器被调度进入空闲状态还包括所述第一处理器执行请求所述第一逻辑处理器进入空闲状态的处理器指令。
17.如权利要求16所述的系统,其中导致所述第一逻辑处理器使之前为所述第一逻辑处理器保留的所述处理器执行资源对第二逻辑处理器可用的操作还包括将所述处理器执行资源释放到从所述第二逻辑处理器可访问的处理器执行资源的公共池。
18.如权利要求17所述的系统,其中之前为所述第一逻辑处理器保留的所述处理器执行资源还包括之前静态地分配给所述第一逻辑处理器的所述处理器执行资源;并且其中将所述处理器执行资源释放到处理器执行资源的公共池的操作还包括解除分配所述处理器执行资源。
19.如权利要求17所述的系统,其中之前为所述第一逻辑处理器保留的所述处理器执行资源还包括之前静态地分配给所述第一逻辑处理器的所述处理器执行资源;并且其中将所述处理器执行资源释放到处理器执行资源的公共池的操作还包括所述第一处理器解锁所述处理器执行资源。
20.一种具有储存在其上的数据的机器可访问介质,当所述数据被机器访问时,所述数据导致所述机器执行方法,所述方法包括:
在多个处理器共享处理器执行资源的基于处理器的系统中,响应于所述多个处理器中的第一处理器被调度进入空闲状态,使之前为所述第一处理器保留的处理器执行资源对所述多个处理器中的第二处理器可用。
21.如权利要求20所述的机器可访问介质,还包括响应于所述第一处理器被调度去执行任务,为所述第一处理器保留所述处理器执行资源。
22.如权利要求21所述的机器可访问介质,其中所述多个处理器中的每一个是所述基于处理器的系统中的逻辑处理器。
23.如权利要求22所述的机器可访问介质,其中所述第一处理器被调度进入空闲状态还包括所述第一处理器执行请求所述第一处理器进入空闲状态的处理器指令。
24.如权利要求23所述的机器可访问介质,其中使之前为所述第一处理器保留的所述处理器执行资源对第二处理器可用的操作还包括将所述处理器执行资源释放到从所述第二处理器可访问的处理器执行资源的公共池。
25.如权利要求24所述的机器可访问介质,其中所述第一处理器被调度去执行任务还包括所述第一处理器接收唤醒信号。
26.如权利要求25所述的机器可访问介质,其中之前为所述第一处理器保留的所述处理器执行资源还包括之前静态地分配给所述第一处理器的所述处理器执行资源;并且其中将所述处理器执行资源释放到处理器执行资源的公共池的操作还包括解除分配所述处理器执行资源。
27.如权利要求25所述的机器可访问介质,其中之前为所述第一处理器保留的所述处理器执行资源还包括之前由所述第一处理器锁定的所述处理器执行资源;并且其中将所述处理器执行资源释放到处理器执行资源的公共池的操作还包括所述第一处理器解锁所述处理器执行资源。
28.如权利要求25所述的机器可访问介质,其中所述处理器执行资源的公共池包括翻译后备缓冲区,并且所述处理器执行资源是来自所述翻译后备缓冲区的翻译缓存项。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/772,750 | 2004-02-04 | ||
US10/772,750 US8984517B2 (en) | 2004-02-04 | 2004-02-04 | Sharing idled processor execution resources |
PCT/US2005/001281 WO2005078575A2 (en) | 2004-02-04 | 2005-01-14 | Sharing idled processor execution resources |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010105224674A Division CN101968751B (zh) | 2004-02-04 | 2005-01-14 | 共享已空闲的处理器执行资源 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1914593A true CN1914593A (zh) | 2007-02-14 |
CN1914593B CN1914593B (zh) | 2011-01-19 |
Family
ID=34808624
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2005800039091A Expired - Fee Related CN1914593B (zh) | 2004-02-04 | 2005-01-14 | 共享已空闲的处理器执行资源的方法和装置 |
CN2010105224674A Active CN101968751B (zh) | 2004-02-04 | 2005-01-14 | 共享已空闲的处理器执行资源 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010105224674A Active CN101968751B (zh) | 2004-02-04 | 2005-01-14 | 共享已空闲的处理器执行资源 |
Country Status (5)
Country | Link |
---|---|
US (2) | US8984517B2 (zh) |
EP (2) | EP3048527B1 (zh) |
JP (2) | JP2007520825A (zh) |
CN (2) | CN1914593B (zh) |
WO (1) | WO2005078575A2 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8984517B2 (en) | 2004-02-04 | 2015-03-17 | Intel Corporation | Sharing idled processor execution resources |
CN106126336A (zh) * | 2016-06-17 | 2016-11-16 | 上海兆芯集成电路有限公司 | 处理器以及调度方法 |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060015589A1 (en) * | 2004-07-16 | 2006-01-19 | Ang Boon S | Generating a service configuration |
US7421575B2 (en) * | 2004-07-16 | 2008-09-02 | Hewlett-Packard Development Company, L.P. | Configuring a physical platform in a reconfigurable data center |
US9003421B2 (en) * | 2005-11-28 | 2015-04-07 | Intel Corporation | Acceleration threads on idle OS-visible thread execution units |
US7461241B2 (en) * | 2006-07-31 | 2008-12-02 | International Business Machines Corporation | Concurrent physical processor reassignment method |
JP5195408B2 (ja) * | 2008-12-25 | 2013-05-08 | 富士通セミコンダクター株式会社 | マルチコアシステム |
JP5469940B2 (ja) * | 2009-07-13 | 2014-04-16 | 株式会社日立製作所 | 計算機システム、仮想計算機モニタ及び仮想計算機モニタのスケジューリング方法 |
US8621185B1 (en) * | 2010-02-24 | 2013-12-31 | Marvell International Ltd. | Processor load determination and speed control |
KR20120083801A (ko) * | 2011-01-18 | 2012-07-26 | 삼성전자주식회사 | 가상머신을 위한 멀티미디어 데이터 선행처리장치 및 방법 |
CN104011703B (zh) | 2011-12-22 | 2017-04-12 | 英特尔公司 | 用于指定应用线程性能状态的指令的指令处理装置及相关方法 |
US9465751B2 (en) * | 2012-03-30 | 2016-10-11 | Intel Corporation | Efficient locking of memory pages |
US9396020B2 (en) | 2012-03-30 | 2016-07-19 | Intel Corporation | Context switching mechanism for a processing core having a general purpose CPU core and a tightly coupled accelerator |
US9582287B2 (en) * | 2012-09-27 | 2017-02-28 | Intel Corporation | Processor having multiple cores, shared core extension logic, and shared core extension utilization instructions |
US20170052866A1 (en) * | 2015-08-21 | 2017-02-23 | International Business Machines Corporation | Managing a shared pool of configurable computing resources which uses a set of dynamically-assigned resources |
US20180341482A1 (en) * | 2015-12-18 | 2018-11-29 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and arrangement for utilization of a processing arrangement |
US11094032B2 (en) * | 2020-01-03 | 2021-08-17 | Qualcomm Incorporated | Out of order wave slot release for a terminated wave |
CN112000019B (zh) * | 2020-07-24 | 2024-04-26 | 青岛海尔空调器有限总公司 | 用于共享设备指令控制的方法、装置及设备 |
CN116737347B (zh) * | 2023-08-14 | 2023-10-13 | 南京翼辉信息技术有限公司 | 一种任务调度控制方法 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2253420A5 (zh) * | 1973-11-30 | 1975-06-27 | Honeywell Bull Soc Ind | |
JPH0348938A (ja) | 1989-07-17 | 1991-03-01 | Nec Corp | 仮想計算機方式 |
JPH0659981A (ja) * | 1992-08-06 | 1994-03-04 | Matsushita Electric Ind Co Ltd | 情報処理装置 |
JP3186244B2 (ja) | 1992-09-18 | 2001-07-11 | 株式会社日立製作所 | 仮想計算機システム |
US6633897B1 (en) * | 1995-06-30 | 2003-10-14 | International Business Machines Corporation | Method and system for scheduling threads within a multiprocessor data processing system using an affinity scheduler |
US6128713A (en) * | 1997-09-24 | 2000-10-03 | Microsoft Corporation | Application programming interface enabling application programs to control allocation of physical memory in a virtual memory system |
US6260068B1 (en) * | 1998-06-10 | 2001-07-10 | Compaq Computer Corporation | Method and apparatus for migrating resources in a multi-processor computer system |
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 |
US6389449B1 (en) * | 1998-12-16 | 2002-05-14 | Clearwater Networks, Inc. | Interstream control and communications for multi-streaming digital processors |
ID30170A (id) | 1999-03-29 | 2001-11-08 | Unilever Nv | Komposisi-komposisi pembersih kamar kecil |
US6496925B1 (en) * | 1999-12-09 | 2002-12-17 | Intel Corporation | Method and apparatus for processing an event occurrence within a multithreaded processor |
US6728858B2 (en) * | 2001-03-30 | 2004-04-27 | Intel Corporation | Method and apparatus including heuristic for sharing TLB entries |
US20020184290A1 (en) * | 2001-05-31 | 2002-12-05 | International Business Machines Corporation | Run queue optimization with hardware multithreading for affinity |
US7428732B2 (en) * | 2001-12-05 | 2008-09-23 | Intel Corporation | Method and apparatus for controlling access to shared resources in an environment with multiple logical processors |
US20030126416A1 (en) * | 2001-12-31 | 2003-07-03 | Marr Deborah T. | Suspending execution of a thread in a multi-threaded processor |
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 |
US8984517B2 (en) | 2004-02-04 | 2015-03-17 | Intel Corporation | Sharing idled processor execution resources |
-
2004
- 2004-02-04 US US10/772,750 patent/US8984517B2/en active Active
-
2005
- 2005-01-14 WO PCT/US2005/001281 patent/WO2005078575A2/en not_active Application Discontinuation
- 2005-01-14 EP EP15020261.2A patent/EP3048527B1/en active Active
- 2005-01-14 CN CN2005800039091A patent/CN1914593B/zh not_active Expired - Fee Related
- 2005-01-14 CN CN2010105224674A patent/CN101968751B/zh active Active
- 2005-01-14 EP EP05705735A patent/EP1716482A2/en not_active Ceased
- 2005-01-14 JP JP2006552130A patent/JP2007520825A/ja not_active Abandoned
-
2011
- 2011-12-28 JP JP2011288768A patent/JP5546529B2/ja active Active
-
2015
- 2015-03-16 US US14/659,541 patent/US20150268956A1/en not_active Abandoned
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8984517B2 (en) | 2004-02-04 | 2015-03-17 | Intel Corporation | Sharing idled processor execution resources |
CN106126336A (zh) * | 2016-06-17 | 2016-11-16 | 上海兆芯集成电路有限公司 | 处理器以及调度方法 |
CN106126336B (zh) * | 2016-06-17 | 2019-06-04 | 上海兆芯集成电路有限公司 | 处理器以及调度方法 |
Also Published As
Publication number | Publication date |
---|---|
EP1716482A2 (en) | 2006-11-02 |
EP3048527B1 (en) | 2020-07-15 |
JP2007520825A (ja) | 2007-07-26 |
US20150268956A1 (en) | 2015-09-24 |
JP2012104140A (ja) | 2012-05-31 |
US8984517B2 (en) | 2015-03-17 |
JP5546529B2 (ja) | 2014-07-09 |
EP3048527A1 (en) | 2016-07-27 |
WO2005078575A3 (en) | 2006-06-15 |
CN1914593B (zh) | 2011-01-19 |
CN101968751B (zh) | 2013-01-02 |
CN101968751A (zh) | 2011-02-09 |
US20050172292A1 (en) | 2005-08-04 |
WO2005078575A2 (en) | 2005-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1914593B (zh) | 共享已空闲的处理器执行资源的方法和装置 | |
CN100418058C (zh) | 管理计算机内的计算机程序的临界区锁的方法 | |
US8042114B2 (en) | Resource allocation in a NUMA architecture based on separate application specified resource and strength preferences for processor and memory resources | |
US9058218B2 (en) | Resource allocation based on anticipated resource underutilization in a logically partitioned multi-processor environment | |
CN100549964C (zh) | 信息处理设备、中断处理控制方法 | |
US8146089B2 (en) | Sharing resources of a partitioned system | |
KR101239082B1 (ko) | 멀티코어 아키텍처 내의 리소스 관리 | |
US7962910B2 (en) | Selective generation of an asynchronous notification for a partition management operation in a logically-partitioned computer | |
US20070204268A1 (en) | Methods and systems for scheduling processes in a multi-core processor environment | |
US20060123423A1 (en) | Borrowing threads as a form of load balancing in a multiprocessor data processing system | |
CN100578459C (zh) | 线程调度方法及其装置 | |
GB2421328A (en) | Scheduling threads for execution in a multi-threaded processor. | |
CN107515781B (zh) | 一种基于多处理器的确定性任务调度及负载均衡系统 | |
KR101639853B1 (ko) | 복수의 엔진에 의해 명령어 시퀀스들의 실행을 지원하기 위한 자원들 및 상호접속 구조들의 비집중 할당 | |
KR100400165B1 (ko) | 처리 시스템 스케쥴링 | |
CN111459622A (zh) | 调度虚拟cpu的方法、装置、计算机设备和存储介质 | |
US8327383B2 (en) | Cancellation of concurrent worker objects | |
JP2002278778A (ja) | 対称型マルチプロセッサシステムにおけるスケジュール装置 | |
US9442772B2 (en) | Global and local interconnect structure comprising routing matrix to support the execution of instruction sequences by a plurality of engines | |
Debattista et al. | Wait-free cache-affinity thread scheduling | |
CN116909729A (zh) | Gpu多任务调度方法 | |
Vella | A summary of research in system software and concurrency at the University of Malta: multithreading |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110119 |
|
CF01 | Termination of patent right due to non-payment of annual fee |