CN1841331A - 为被先占的虚拟处理器分配应得处理器周期的方法和系统 - Google Patents
为被先占的虚拟处理器分配应得处理器周期的方法和系统 Download PDFInfo
- Publication number
- CN1841331A CN1841331A CNA2006100582239A CN200610058223A CN1841331A CN 1841331 A CN1841331 A CN 1841331A CN A2006100582239 A CNA2006100582239 A CN A2006100582239A CN 200610058223 A CN200610058223 A CN 200610058223A CN 1841331 A CN1841331 A CN 1841331A
- Authority
- CN
- China
- Prior art keywords
- preemption
- subregion
- virtual processor
- credit rating
- 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.)
- Granted
Links
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/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
-
- 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
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Hardware Redundancy (AREA)
Abstract
一种方法、装置、系统和信号承载介质,在一个实施方式中,如果虚拟处理器被先占并且分区不能在分派窗口期间接收到物理处理器周期的应得能力,则计算分区的先占信用度。先占信用度是分区不能接收到的那部分应得能力。只要分区具有剩余的先占信用度,就在随后的分派窗口中,将先占信用度的一部分分配给虚拟处理器,并且减少先占信用度。这样,在一个实施方式中,可保证共享处理器分区接收到其处理器周期的应得分配。
Description
技术领域
本发明的实施方式一般涉及计算机。特别地,本发明的实施方式一般涉及在计算机系统的共享处理器分区中分配虚拟处理器。
背景技术
通常引用1948年EDVAC计算机系统的发展作为计算机时代的开端。自那时起,计算机系统已经发展成为极其精密的设备,而且计算机系统可出现在很多不同的设置中。计算机系统通常包括诸如半导体和电路板的硬件以及也称为计算机程序的软件的组合。随着半导体工艺和计算机架构的进步推动计算机硬件的性能变得更高,更加精密而且复杂的计算机软件已经发展到利用硬件的较高性能,得到比几年之前更为强大的现今的计算机系统。计算机技术中一个显著的进步就是并行处理的发展,也就是多个任务的并行执行。
已经开发出多种计算机软件和硬件技术,以有利于增加的并行处理。从硬件的角度来看,计算机越来越依赖于多个微处理器以提供增加的工作负载能力。此外,已经开发出一些支持并行执行多个线程能力的微处理器,来有效地提供许多相同的性能增益,这些性能增益可以通过使用多个微处理器而获得。从软件的角度来看,已经开发出多线程操作系统和内核,其允许计算机程序并发地在多个线程中执行,使得基本上可以同时执行多个任务。
另外,一些计算机实现了逻辑分区的概念,其中允许单个物理计算机基本上像多个独立的虚拟计算机那样进行操作,独立的虚拟计算机称为逻辑分区,物理计算机中的多种资源(例如,处理器、存储器以及输入/输出设备)在多个逻辑分区之间进行分配。每个逻辑分区执行单独的操作系统,而且从用户以及在逻辑分区之上执行的软件应用的角度来看,每个逻辑分区作为完全独立的计算机进行操作。多个操作系统中的每一个运行于单独的分区,分区在分区管理器或管理程序(hypervisor)的控制下进行操作。
不仅将很多个体资源,例如处理器分配给分区,而且也分配部分的资源。从而,发展出共享处理器分区的概念。共享处理器分区是在处理器共享池中与其它共享处理器分区共享物理处理器的分区。共享处理器分区的配置参数中的一个就是分区的应得能力。分区的应得能力,限定在一个时间段中物理处理器的分区份额。管理程序需要保证共享处理器分区的应得能力不超过共享处理器池的能力,共享处理器池是一组用于运行共享处理器分区的处理器。管理程序还必须保证每个分区在一个时间段上接收到与其应得能力相对应的物理处理器周期,使得每个分区接收其公平的一份资源,并且没有分区会因缺少资源而影响性能。这个时间段称为管理程序分派窗口。每个分区被所谓地分配一个“虚拟处理器”,其代表共享处理器池中物理处理器(可以随时间变化)之一的若干个CPU(中央处理单元)周期。
从性能的角度来看,只要虚拟处理器有任务要处理,就希望分区的虚拟处理器在尽可能少的分派中接收到其分配的周期。最可能的情况是,虚拟处理器在单个分派的分派窗口中接收到其所有周期。较少的分派具有切换开销较少的性能优势,这种开销包括保存以及恢复虚拟处理器的状态。较少的分派还允许有效地利用处理器高速缓冲存储器。
在某些配置下,较少分派的性能目标与保证虚拟处理器应得周期的功能目标相冲突,所以,如果管理程序试图在分区的一个分派的分派窗口中给出全部应得能力,则有些虚拟处理器会接收不到其全部应得能力。
为了说明这点,考虑在图2A中所示具有四个物理处理器(P0、P1、P2和P3)以及五个虚拟处理器(V0、V1、V2、V3和V4)的配置,其中向五个分区中的每一个分配一个虚拟处理器。在这个示例中,每个分派窗口(分派窗口0、分派窗口1、分派窗口2、分派窗口3、分派窗口4、分派窗口5、分派窗口6以及分派窗口7)代表10msec(毫秒),使得表200中的每个时隙代表将给定物理处理器的CPU周期分配给具体虚拟处理器2msec。此外,在这个示例中,五个虚拟处理器(V0、V1、V2、V3和V4)中的每个具有0.8个物理处理器的应得能力,这意味着8个分派窗口上的应得能力是8*(10msec)*.8=64msec。表200中的空时隙代表相关联的物理处理器空闲的时间,这是因为每个虚拟处理器每次只能够利用一个物理处理器。将虚拟处理器(V0、V1、V2、V3和V4)分配到表200中时隙的模式代表管理程序试图在虚拟处理器一个分派的分派窗口中给出全部应得能力。
图2A中示例所示的结果是虚拟处理器V0、V1和V2都至少接收到其64msec的应得能力(V0和V1接收64msec的物理CPU周期,而虚拟处理器V2接收到68msec的物理CPU周期)。遗憾的是,虚拟处理器V3只接收到38msec的物理CPU周期,虚拟处理器V4只接收到40msec的物理CPU周期。因此,由于管理程序试图在虚拟处理器一个分派的每个分派窗口中给出全部应得能力,虚拟处理器V3和V4没有接收到其64msec的物理CPU周期的应得能力。
当前试图解决这个问题的一种技术是使用很短的分派窗口(例如,1msec)。这样短的分派窗口允许管理程序在可用的物理处理器上对分区进行循环。虽然这种技术保证分区将会在分派窗口上接收到它们的应得能力,但也产生较大的切换开销,而且导致管理程序难以维持处理器的紧密性,导致性能的下降。
因此,没有更好的方法在较少分派的性能目标与保证虚拟处理器应得CPU周期个数的功能目标之间进行平衡,逻辑分区系统将继续努力克服性能问题。
发明内容
提供一种方法、装置、系统和信号承载介质,在一个实施方式中,如果虚拟处理器被先占并不能在分派窗口期间接收到物理处理器周期的应得能力,则计算分区的先占信用度。先占信用度是分区不能接收到的那部分应得能力。只要分区具有剩余的先占信用度,就在随后的分派窗口中将先占信用度的一部分分配给虚拟处理器,并减少先占信用度。这样,在一个实施方式中,可保证共享处理器分区接收到其处理器周期的应得分配。
附图说明
在下文中,结合附图描述本发明的多种实施方式:
图1描述用于实现本发明一个实施方式的示例系统的框图。
图2A描述依照一种试图在虚拟处理器一个分派的分派窗口中给出全部应得能力的技术,将虚拟处理器分派给物理处理器的框图。
图2B描述依照本发明一个实施方式将虚拟处理器分派给物理处理器的框图。
图3描述依照本发明一个实施方式的逻辑分区控制块的框图。
图4描述依照本发明一个实施方式将物理处理器分配给虚拟处理器的示例处理的流程图。
图5描述依照本发明一个实施方式,在整个时间段上将物理处理器分配给虚拟处理器的示例处理的流程图。
图6描述依照本发明一个实施方式将分区的先占信用度清零的示例处理的流程图。
但是,需要注意,附图只说明本发明的示例实施方式,由于本发明可能允许其它同样有效的实施方式,因此不能认为是对其范围的限制。
具体实施方式
参考附图,其中在所有的几个附图中相同的标号表示相同的部分,图1描述依照本发明一个实施方式的与网络130相连的计算机系统100的高级框图表示。计算机系统100的主要部件包括一个或多个处理器101、主存储器102、终端接口111、存储器接口112、I/O(输入/输出)设备接口113和通信/网络接口114,所有这些部件相连以通过存储器总线103、I/O总线104以及I/O总线接口单元105进行部件间通信。
计算机系统100包含一个或多个通用可编程中央处理单元(CPU)101A、101B、101C和101D,在这里,一般称为处理器101。在一个实施方式中,计算机系统100包含代表相对大型系统的多个处理器;但是,在另一个实施方式中,计算机系统100可选地可以是单个CPU系统。每个处理器101执行存储在主存储器102中的指令,而且可以包括一层或多层板上高速缓冲存储器。
主存储器102是用于存储数据和程序的随机存取半导体存储器。主存储器102在概念上是单个单片式实体,但是在其它实施方式中,主存储器102是更复杂的布置,例如高速缓冲存储器的层次和其它存储设备。例如,存储器可存在于多层的高速缓冲存储器,而且这些高速缓冲存储器可进一步根据功能进行划分,使得一个高速缓冲存储器保存指令而另一个高速缓冲存储器保存处理器使用的非指令数据。存储器还可以是分布式的,并且与不同的CPU或CPU组相关联,如在多种所谓非均匀存储器访问(NUMA)计算机架构中的任何一种所已知的。
所示存储器102包含在计算机100中实现逻辑分区计算环境所使用的资源以及主要软件部件,存储器102包括由分区管理器或管理程序136管理的多个逻辑分区134。虽然所示分区134和管理程序136包含在计算机系统100的存储器102中,但是在其它实施方式中,其中一些或者全部可以位于不同的计算机系统,而且可以例如通过网络130进行远程访问。此外,计算机系统100可使用虚拟寻址机制,其允许计算机系统100的程序表现为就像其只能访问大型、单个存储器实体,而不能访问多个、较小型的存储器实体一样。从而,虽然所示分区134和管理程序136驻留于存储器102中,但是这些元素不必同时完全包含在同一个存储设备中。
每个逻辑分区134使用操作系统142,操作系统142以与非分区计算机操作系统相同的方式控制逻辑分区134的主要操作。例如,可使用从国际商业机器公司可得的i5OS操作系统实现每个操作系统142,但是在其它实施方式中,操作系统142可以是Linux、AIX、UNIX、MicrosoftWindows,或者任何适当的操作系统。同时,操作系统142中的一些或全部可以彼此相同或不同。如现有技术中众所周知的,可支持任意数量的逻辑分区134,并且由于向计算机100中添加分区或者从计算机100中删除分区,任何时候驻留在计算机100中的逻辑分区134的数量可以动态变化。
每个逻辑分区134执行于单独或独立的存储器空间中,从而从执行于每个这种逻辑分区中的每个应用144的角度来看,每个逻辑分区表现得与独立的非分区计算机相同。这样,用户应用通常不需要任何特殊配置以用于分区环境中。给定作为单个虚拟计算机的逻辑分区134的性质,就可以希望支持分区间通信以允许逻辑分区彼此通信,就好像逻辑分区位于单独物理机器上一样。这样,在某些实现方式中,可以希望支持与管理程序136相关联的虚拟局域网(LAN)适配器(未示出),以允许逻辑分区134通过诸如以太网协议的网络协议彼此通信。在另一个实施方式中,虚拟网络适配器可桥接到物理适配器,例如网络接口适配器114。依照本发明各实施方式,也支持其它支持分区之间通信的方式。
虽然所示管理程序136位于存储器102中,但是在其它实施方式中,管理程序102的全部或其一部分可以实现于固件或硬件中。管理程序136可执行低层分区管理功能,例如页面表管理,也可执行更高层的分区管理功能,例如创建和删除分区、并行I/O维护、向多个分区134分配处理器、存储器以及其它硬件或软件资源。
在一个实施方式中,管理程序136包括能够在处理器101上执行的指令,或者能够由执行于处理器101的指令进行解释的声明,以执行下面参考图4、图5和图6进一步描述的功能。在另一个实施方式中,管理程序136可实现于微代码或固件中。在另一个实施方式中,管理程序136可通过逻辑门和/或其它适当的硬件技术实现于硬件中。
管理程序136静态地和/或动态地向每个逻辑分区134分配计算机100中可用资源的一部分。例如,可以向每个逻辑分区134分配一个或多个处理器101和/或一个或多个硬件线程,以及可用存储器空间的一部分。逻辑分区134可以共享具体软件和/或硬件资源,例如处理器101,使得给定资源可由多于一个的逻辑分区使用。在可选方案中,可以每次只将软件和硬件资源分配给仅一个逻辑分区134。附加资源,例如大容量存储器、备份存储器、用户输入、网络连接和I/O适配器通常被分配给逻辑分区134中的一个或多个。资源可以以多种方式进行分配,例如,按照逐个总线进行分配或者逐个资源进行,且多个逻辑分区共享同一总线上的资源。甚至每次可将一些资源分配给多个逻辑分区。在这里所标识的资源只是示例,任何能够被分配的适当资源都可使用。
管理程序136包括逻辑分区控制块146,管理程序使用逻辑分区控制块在分区134之间分配资源。逻辑分区控制块146在下面参考图3进行进一步描述。
存储器总线103提供数据通信通道,用于在处理器101、主存储器102和I/O总线接口单元105之间传送数据。I/O总线接口单元105进一步与系统I/O总线104相连,用于向多个I/O单元传送数据以及从多个I/O单元中传送数据。I/O总线接口单元105通过系统I/O总线104与多个I/O接口单元111、112、113和114进行通信,这些I/O接口单元也称为I/O处理器(IOP)或I/O适配器(IOA)。例如,系统I/O总线104可以是工业标准PCI总线,或者任何其它适当的总线技术。
I/O接口单元支持与多个存储器和I/O设备的通信。例如,终端接口单元111支持一个或多个用户终端121、122、123和124的连接。存储器接口单元112支持一个或多个直接存取存储设备(DASD)125、126和127(虽然可选地可以是其它设备,但是通常是旋转式磁盘驱动器存储设备,包括磁盘驱动器阵列,将其配置为对于主机来说是单个大型存储设备)的连接。主存储器102的内容可存储在直接存取存储设备125、126和127中,并可从中取回。
I/O和其它设备接口113提供对任何多种其它输入/输出设备或其它类型设备的接口。两个这种设备,打印机128和传真机129示于图1的示例性实施方式中,但是在其它实施方式中,可能存在很多可能是不同类型的其它这种设备。网络接口114提供一个或多个从计算机系统100到其它数字设备和计算机系统的通信通道;例如,这种通道可包括一个或多个网络130。
虽然图1中所示的存储器总线103作为相对简单的单一总线结构,在处理器101、主存储器102和I/O总线接口105之间提供直接通信通道,但是实际上,存储器总线103可包括多个不同的总线或通信通道,它们可以排列为任何多种形式,例如在分层的、星形或网状结构中的点对点链路、多个层次总线、并行和冗余通道等等。此外,虽然将I/O总线接口105和I/O总线104示出为各自的单个单元,但是计算机系统100实际上可包含多个I/O总线接口单元105和/或多个I/O总线104。虽然示出多个I/O接口单元,其将系统I/O总线104与通向多个I/O设备的多个通信通道分开,但是在其它实施方式中,I/O设备其中的一些或全部直接与一个或多个系统I/O总线相连。
图1中所述计算机系统100具有多个连接的终端121、122、123和124,例如,可以代表多用户“大型”计算机系统。通常,在这种情况下,虽然本发明并未限于任何特定尺寸的系统,但是附加设备的实际数量多于图1中所示出的。计算机系统100可以可选地为单用户系统,通常只包含单个用户显示器和键盘输入,或者可以是服务器或者几乎或根本不具有直接用户接口的类似设备,但是其接收来自其他计算机系统(客户端)的请求。在其它实施方式中,计算机系统100可实现为个人计算机、便携式计算机、膝上型计算机或笔记本电脑、PDA(个人数字助理)、输入板式计算机、袖珍式计算机、电话、寻呼机、汽车、电话会议系统、电器,或者任何其它适当类型的电子设备。
网络130可以是任何适当的网络或者网络组合,并且可支持适用于去往/来自计算机系统100的数据和/或编码通信的任何适当协议。在多种实施方式中,网络130可代表存储设备或存储设备组合,其既可以直接也可以间接地与计算机系统100相连。在一个实施方式中,网络130可支持Infiniband(无限波段)技术。在另一个实施方式中,网络130可支持无线通信。在另一个实施方式中,网络130可支持硬连线通信,例如电话线路或线缆。在另一个实施方式中,网络130可支持以太网IEEE(电子和电气工程师协会)802.3x规范。在另一个实施方式中,网络130可能是互联网,并且可支持IP(因特网协议)。在另一个实施方式中,网络130可以是局域网(LAN)或者广域网(WAN)。在另一个实施方式中,网络130可以是热点服务提供商网络。在另一个实施方式中,网络130可以是内联网。在另一个实施方式中,网络130可以是GPRS(通用分组无线服务)网络。在另一个实施方式中,网络130可以是FRS(家庭无线服务)网络。在另一个实施方式中,网络130可以是任何适当的蜂窝数据网络或基于小区的无线网络技术。在另一个实施方式中,网络130可以是IEEE802.11B无线网络。在另一个实施方式中,网络130可以是任何适当的网络或网络组合。虽然示出一个网络130,但是在其它实施方式中,可以存在任意数量(包括零)的(相同或不同的类型)网络。
应当了解,图1旨在从高层描述计算机系统100的代表性主要部件,单独部件可具有比图1所示更高的复杂性,可以存在不同于或者附加于图1中所示部件的那些部件,而且这些部件的数量、类型和配置可以改变。在这里公开了这种额外复杂性或附加变形的多个特定示例;应当了解,这些只是示例的方式,而且不一定只有这些变形。
图1所示的、实现本发明多个实施方式的各种软件部件可用多种方式实现,这些方式包括使用各种计算机软件应用、例程、部件、程序、对象、模块、数据结构等等,这些在这里称为“计算机程序”,或者简单地称为“程序”。计算机程序通常包括一个或多个在不同时刻驻留在于计算机系统100的不同存储器和存储设备中的指令,而且当由计算机系统100中的一个或多个处理器101读取和执行该指令时,其使得计算机系统100进行必要的步骤,以执行包括本发明一个实施方式各方面的步骤或元素。
而且,虽然已经以及在下文中将要在全功能计算机系统的上下文中描述本发明各实施方式,但是本发明各实施方式能够被分布为多种形式的程序产品,而且不论用于实际上实现该分布的信号承载介质的特定类型如何,都同样应用本发明。可通过多种信号承载介质向计算机系统100传送定义这个实施方式功能的程序,该信号承载介质包括但不限于:
(1)永久存储在不可重写的存储介质中的信息,例如,附加于或位于计算机系统内的只读存储设备,例如,CD-ROM、DVD-R或DVD+R;
(2)存储在可重写存储介质中的可变信息,例如硬盘驱动器(例如,DASD 125、126或127)、CD-RW、DVD-RW、DVD+RW、DVD-RAM或磁盘;或者
(3)由通信介质进行传送的信息,例如通过计算机或电话网络,例如网络130,包括无线通信。
这种信号承载介质在携带指导本发明功能的机器可读指令时,代表本发明各实施方式。
本发明各实施方式也可以作为与客户公司、非营利性组织、政府机构、内部组织结构等相关的服务的一部分进行发布。这些实施方式的各方面可包括配置计算机系统以执行在这里描述的某些或所有方法,并且可包括部署实现在这里描述的某些或所有方法的软件系统和web服务。这些实施方式的各方面还可包括分析客户公司、响应于分析生成建议、生成软件以实现部分建议、将软件整合到现有过程和基础设施中、测量在这里描述的方法和系统的使用、向用户分配费用,以及对用户使用这些方法和系统进行计费。另外,在下文中描述的各种程序可基于在本发明具体实施方式中其所实现的应用进行识别。但是,随后的任何特定程序术语仅出于简便目的,从而本发明各实施方式不应当限于仅在由这种术语标识和/或暗示的任何具体应用中使用。
图1中所示的示例性环境并不旨在限制本发明。实际上,在不偏离本发明范围的前提下,可使用其它可选择的硬件和/或软件环境。
图2A描述将虚拟处理器分派给物理处理器的框图,其所依照的技术试图在虚拟处理器一个分派的分派窗口中给出全部应得能力。从性能的角度来看,只要虚拟处理器有任务要处理,就希望分区的虚拟处理器在尽可能少的分派中接收到其分配的周期。最可能的情况是,虚拟处理器在单个分派的分派窗口中接收到其所有周期。较少的分派具有切换开销较少的性能优势,该开销包括保存以及恢复虚拟处理器的状态。较少的分派还允许有效地利用处理器高速缓冲存储器。
在某些配置下,较少分派的性能目标与保证虚拟处理器的应得周期的功能目标相冲突,所以,如果管理程序试图在分区的一个分派的分派窗口中给出全部应得能力,则一些虚拟处理器不能接收到其全部应得能力。
为了说明这点,考虑在表200中所示具有四个物理处理器(P0、P1、P2和P3)以及五个虚拟处理器(V0、V1、V2、V3和V4)的配置,其中向五个分区中的每个分配一个虚拟处理器。在图2A所示的示例中,分派窗口(分派窗口0、分派窗口1、分派窗口2、分派窗口3、每个分派窗口4、分派窗口5、分派窗口6以及分派窗口7)代表10msec(毫秒),使得表200中的每个时隙代表将给定物理处理器CPU周期分配给具体虚拟处理器2msec。此外,在五个示例虚拟处理器(V0、V1、V2、V3和V4)中的每个具有物理处理器的0.8的应得能力,这意味着8个分派窗口上的应得能力是8*(10msec)*.8=64msec。表200中的空时隙代表相关联的物理处理器空闲的时间,这是因为每个虚拟处理器每次只能够利用一个物理处理器。将虚拟处理器(V0、V1、V2、V3和V4)分配到表200中时隙的模式代表管理程序试图在虚拟处理器一个分派的分派窗口中给出全部应得能力。
图2A中示例所示的结果是虚拟处理器V0、V1和V2都至少接收到其64msec的应得能力。虚拟处理器V0从物理处理器P0接收到8msec,从物理处理器P1接收到56msec。虚拟处理器V1从物理处理器P1接收到8msec,从物理处理器P2接收到56msec。虚拟处理器V2从物理处理器P1接收到4msec,从物理处理器P2接收到8msec,并且从物理处理器P3接收到56msec。
遗憾的是,虚拟处理器V3只接收到38msec的物理CPU周期(30msec来自物理处理器P0,8msec来自物理处理器P3),虚拟处理器V4只接收到40msec的物理CPU周期(40msec来自物理处理器P0)。因此,由于管理程序试图在虚拟处理器一个分派的每个分派窗口中给出全部应得能力,虚拟处理器V3和V4没有接收到其64msec的物理CPU周期的应得能力。
图2B描述依照本发明一个实施方式将虚拟处理器分派给物理处理器的框图250。图2B所示的配置具有四个物理处理器(P0、P1、P2和P3),对应于处理器101,但是在另一个实施方式中,可以存在任意数量的物理处理器。图2B也包括五个虚拟处理器(V0、V1、V2、V3和V4),其中向五个示例分区的每个分配一个虚拟处理器,例如分区134中的任何一个,但是在其它实施方式中,可以存在任意数量的分区,一个分区可以具有任意数量的相关联的虚拟处理器。
每个分派窗口(分派窗口0、分派窗口1、分派窗口2、分派窗口3、分派窗口4、分派窗口5、分派窗口6以及分派窗口7)代表10msec(毫秒),使得表250中的每个时隙代表将给定物理处理器的CPU周期分配给具体虚拟处理器2msec。在其它实施方式中,可以使用任何适当的分派窗口。
在这个示例中,五个虚拟处理器(V0、V1、V2、V3和V4)中的每个具有物理处理器的0.8的应得能力,这意味着在八个分派窗口上的应得能力是8*(10msec)*.8=64msec。在另一个实施方式中,可以使用任何应得能力,而且应得能力可用CPU时间、CPU周期、物理处理器百分比或分数,或者任何其它适当的单位来表示。表250中的空时隙代表相关联的物理处理器101空闲的时间,这是因为每个虚拟处理器一次只能够利用一个物理处理器。将虚拟处理器(V0、V1、V2、V3和V4)分配到表250中时隙的示例模式代表使用先占技术的管理程序136,这将在下面参考图4、图5和图6进一步描述。
使用本发明一个实施方式的技术,管理程序136在被先占的虚拟处理器中进行切换,并检测到分区134将不能在当前分派窗口中的全部周期中使用,所以管理程序136给分区134一个先占信用度。先占信用度是分区134在当前分派窗口中不能使用的处理器周期的数量。当分派窗口变化时,分区l34保持其先占信用度周期,不同于在图2A的示例中,当分派窗口变化时,会丢失分区的处理器周期。然后管理程序136允许分区134在随后的分派窗口组中使用先占信用度处理器周期,以弥补在当前分派窗口中所失去的机会。当一个分区134使用其先占信用度周期时,另一个分区134或另一组分区134可能未接收到分派窗口中其应得的周期。接着,这使那些分区134被给予先占信用度周期,这些分区可在随后系列的分派窗口中使用先占信用度周期。由于共享池中分区的应得能力不能超过该池的能力,所以累积的先占信用度不能无限增长。
在稳态实施方式中,由所有分区134运行CPU限制的工作负荷,先占信用度通过一组分区134循环,共享处理器池的能力将完全被使用,并且虚拟处理器将接收到长的分派,这获得了改善的性能。本发明一个实施方式的代价就是分区134不必在每个分派窗口中接收到其应得周期。分区134可以在特定分派窗口中接收到少于其应得周期,然后可在随后的分派窗口中使用累积的先占信用度周期,以弥补在先前分派窗口中损失的处理器周期。管理程序136不必保证在每个分派窗口期间向分区134分配其应得的能力,而是只要分派窗口足够短,分区l34的工作负荷就不会受到影响。
本发明一个实施方式的先占信用度技术在图2B的表250中表示。表250中用星号(“*”)表示的时隙代表先占信用度周期的使用。例如,在分派窗口0期间,虚拟处理器V4未接收到其应得物理处理器周期的全部分配(在示例中是8msec)。相反,虚拟处理器V4在分派窗口0中只接收到2msec的物理处理器周期。因此,响应于在分配窗口0的结尾被先占,虚拟处理器V4接收到6msec的先占信用度(全部应得部分中未在分派窗口0中接收到的部分),该先占信用度在分派窗口1、分派窗口2和分派窗口3中使用,以接收附加的物理处理器周期分配,如星号所指示。
以相似的方式,虚拟处理器V3在分派窗口1的结尾被先占,所以虚拟处理器V3接收先占信用度,该先占信用度在分派窗口2、分派窗口3和分派窗口4中使用,以接收附加的物理处理器周期分配,如星号所指示。
以相似的方式,虚拟处理器V2在分派窗口2的结尾被先占,所以虚拟处理器V2接收先占信用度,该先占信用度在分派窗口3、分派窗口4和分派窗口5中使用,以接收附加的物理处理器周期分配,如星号所指示。
以相似的方式,虚拟处理器V1在分派窗口3的结尾被先占,所以虚拟处理器v1接收先占信用度,该先占信用度在分派窗口4、分派窗口5和分派窗口6中使用,以接收附加的物理处理器周期分配,如星号所指示。以相似的方式,虚拟处理器V0在分派窗口4的结尾被先占,所以虚拟处理器V0也接收先占信用度,该先占信用度在分派窗口5、分派窗口6和分派窗口7中使用。下面进一步参考图3对先占信用度进行描述。
图3描述依照本发明一个实施方式的逻辑分区控制块146的框图。逻辑分区控制块146包括虚拟处理器控制块302和先占信用度325。虽然只表示了一个虚拟处理器控制块302,但是在其它实施方式中,可以存在任意数量的虚拟处理器控制块,例如一个虚拟处理器控制块代表每个虚拟处理器,或者用于每个分区134的一个虚拟处理器控制块。虚拟处理器控制块302包括记录305、310和315,但是在其它实施方式中,可以存在带有任何适当数据的任意数量的记录。每个记录305、310和315包括分区标识符字段320和虚拟处理器标识符字段330,但是在其它实施方式中,可以存在更多或更少的字段。
分区标识符字段320标识与记录相关联的分区134中的一个分区。虚拟处理器标识符字段330标识与记录相关联的虚拟处理器。从而,记录305、310和315中每一个代表分配给由分区标识符320标识的分区134的虚拟处理器330,管理程序136可以在分派窗口中将物理处理器101分配给虚拟处理器330一段时间,以执行与分区134相关联的任务。因此,如在这里所用的,虚拟处理器是分配给分区134中的一个分区的物理处理器的一段时间或者物理处理器的数个周期,并且虚拟处理器用诸如虚拟处理器控制块302中的记录的数据结构来代表。虚拟处理器控制块302由管理程序136使用,如下面参考图4、图5和图6进一步描述的。先占信用度325标识,在与逻辑分区控制块146相关联的分区已经使用分派窗口中的应得处理器周期之前,该分区通过相关联的虚拟处理器被先占所产生的先占信用度的数量。
图4描述依照本发明一个实施方式将物理处理器分配给虚拟处理器的示例处理流程图。控制开始于块400。然后控制继续至块405,其中管理程序136确定将物理处理器分配给虚拟处理器的需要。例如,管理程序136可基于向管理程序请求虚拟处理器周期以使操作系统142或应用144执行功能的分区134,来确定这个需要。
然后,控制继续至块410,其中管理程序136确定虚拟处理器的执行是否被另一个虚拟处理器先占。如果块410中的确定为真,则虚拟处理器已经被另一个虚拟处理器先占,所以控制继续至块415,其中管理程序136确定分区是否能够在当前分派窗口中接收到其应得处理器周期的全部分配能力。如果块415中的确定为真,则控制继续至块420,其中管理程序136将全部时间段分配给虚拟处理器,如下面参考图5进一步描述的。控制则继续至块499,其中图4的逻辑进行返回。
如果块415中的确定为假,则分区不能够在当前分派窗口中获得其处理器周期的全部应得分配,所以控制继续至块425,其中管理程序136为分区将先占信用度325计算为分区不能在当前分派窗口中使用的那部分处理器周期的应得分配。在一个实施方式中,管理程序136将先占信用度325计算为:分区应得的全部分配减去(当前时间减去分派窗口的结束时间)。
然后,控制继续至块430,其中管理程序136将所计算的先占信用度325保存在与该分区相关联的逻辑分区控制块146中。然后控制继续至块499,其中图4的逻辑进行返回。
如果在块410的确定为假,则虚拟处理器尚未被先占,所以控制继续至块435,其中管理程序136在分派窗口中将全部应得处理器周期分配给虚拟处理器。然后,控制继续至块499,其中图4的逻辑进行返回。
图5描述依照本发明一个实施方式将物理处理器分配给虚拟处理器的示例处理流程图。控制开始于块500。然后,控制继续至块505,其中管理程序136将物理处理器101的CPU周期的全部分派窗口时间段分配给虚拟处理器。然后,控制继续至块510,其中管理程序136确定分区是否具有任何剩余的先占信用度325。如果在块510中的确定为真,则分区具有剩余的先占信用度325,所以控制继续至块515,其中管理程序将对分区的分配计算为:先占信用度325减去(分派窗口结束的时间减去当前时间),其中该分配不大于先占信用度。然后,控制继续至块520,其中管理程序136将所计算的物理处理器CPU周期分配时间段分配给虚拟处理器。然后,控制继续至块525,其中管理程序136将分区的先占信用度325设定为当前先占信用度325减去所计算的分配时间段。然后,控制继续至块599,其中图5的逻辑进行返回。
如果在块510中的确定为假,则分区不具有任何剩余的先占信用度325,所以控制继续至块530,其中管理程序136在全部分派窗口时间段上将物理处理器分配给虚拟处理器。然后,控制继续至块599,其中图5的逻辑进行返回。
图6描述依照本发明一个实施方式用于将分区的先占信用度325清零的示例处理流程图。控制开始于块600。然后,控制继续至块605,其中虚拟处理器通知管理程序136虚拟处理器不再具有该分区的剩余任务。控制则继续至块610,其中管理程序将与该分区相关联的先占信用度325清零。然后,控制继续至块699,其中图6的逻辑进行返回。
在先前本发明示例性实施方式的详细描述中,参考附图(其中相同的标号表示相同的元件),其组成本发明的一部分,并且是以对实现本发明的具体示例性实施方式进行示意说明的方式来表示的。对这些实施方式的描述足够详细,以使本领域中熟练的技术人员可以实现本发明,但是可使用其它实施方式,而且在不偏离本发明范围的前提下,可进行逻辑、机械、电子以及其它的变更。在本说明书中所用词语“实施方式”的不同例子并不必然表示相同的实施方式,但是也可以表示相同的实施方式。因此,先前的详细描述并不作为限制,而且本发明的范围仅由所附权利要求书进行限定。
在先前的描述中,描述了多个具体细节,以提供对本发明的全面理解。但是,可以在没有这些具体细节的前提下实现本发明。在其它的例子中,并未详细示出已知的电路、结构和技术,以便不会使本发明晦涩难懂。
Claims (20)
1.一种方法,包括:
确定虚拟处理器是否被先占并不能在分区的分派窗口期间接收到物理处理器周期的应得能力;以及
如果该确定为真,则在至少一个随后的分派窗口期间,将该虚拟处理器不能接收到的那部分应得能力分配给该虚拟处理器。
2.根据权利要求1所述的方法,进一步包括:
如果确定为假,则在随后的分派窗口期间,将该应得能力分配给该虚拟处理器。
3.根据权利要求1所述的方法,其中该分配进一步包括:
基于该分区不能在该分派窗口期间接收到的物理处理器周期的应得能力,计算该分区的先占信用度。
4.根据权利要求3所述的方法,其中该计算进一步包括:
计算该先占信用度与到该分派窗口结束所剩余时间的差值。
5.根据权利要求3所述的方法,其中该分配进一步包括:
判断该分区是否还具有任何剩余的该先占信用度;以及
如果判断为真,则计算该先占信用度的一部分,对于随后的分派窗口,将该部分分配给该虚拟处理器,以及从该先占信用度中减去该部分。
6.根据权利要求5所述的方法,进一步包括:
如果判断为假,则对于随后的分派窗口,将该物理处理器周期的应得能力分配给该虚拟处理器。
7.根据权利要求3所述的方法,进一步包括:
响应于该虚拟处理器没有与该分区相关联的剩余任务,将该先占信用度清零。
8.一种用指令进行编码的信号承载介质,当执行该指令时,执行权利要求1-6中任何一个权利要求所述的步骤。
9.一种计算机系统,包括:
物理处理器;以及
用指令进行编码的存储设备,其中在执行于该物理处理器上时,该指令包括:
确定虚拟处理器是否被先占并不能在分区的分派窗口期间接收到物理处理器周期的应得能力;
如果确定为真,则在至少一个随后的分派窗口期间,将该虚拟处理器不能接收到的那部分应得能力分配给该虚拟处理器,以及
如果确定为假,则在随后的分派窗口期间,将该应得能力分配给该虚拟处理器。
10.根据权利要求9所述的计算机系统,其中该分配进一步包括:
基于该分区不能在该分派窗口期间接收到的物理处理器周期的应得能力部分,计算该分区的先占信用度。
11.根据权利要求10所述的计算机系统,其中该计算进一步包括:
计算该先占信用度与到该分派窗口结束所剩余时间的差值。
12.根据权利要求10所述的计算机系统,其中该分配进一步包括:
判断该分区是否还具有任何剩余的该先占信用度;以及
如果判断为真,则计算该先占信用度的一部分,对于随后的分派窗口,将该先占信用度的该部分分配给该虚拟处理器,以及从该先占信用度中减去该部分。
13.根据权利要求9所述的计算机系统,其中该分配进一步包括:
如果判断为假,则对于随后的分派窗口,将该物理处理器周期的应得能力分配给该虚拟处理器。
14.根据权利要求10所述的计算机系统,其中该指令进一步包括:
响应于该虚拟处理器没有剩余的与该分区相关联的任务,将该先占信用度清零。
15.一种用于配置计算机的方法,包括:
将该计算机配置为确定虚拟处理器是否被先占并不能在分区的分派窗口期间接收到物理处理器周期的应得能力;以及
将该计算机配置为,如果虚拟处理器被先占,则在至少一个随后的分派窗口期间,将该虚拟处理器不能接收到的那部分应得能力分配给该虚拟处理器。
16.根据权利要求15所述的方法,进一步包括:
将该计算机配置为,如果虚拟处理器未被先占,则在随后的分派窗口期间,将该应得能力分配给该虚拟处理器。
17.根据权利要求15所述的方法,其中配置该计算机以便分配进一步包括:
将该计算机配置为,基于该分区不能在该分派窗口期间接收到的物理处理器周期的应得能力部分,计算该分区的先占信用度。
18.根据权利要求16所述的方法,其中配置该计算机以便计算进一步包括:
将该计算机配置为计算该先占信用度与到该分派窗口结束所剩余时间的差值。
19.根据权利要求16所述的方法,其中该配置计算机进行分配进一步包括:
将该计算机配置为判断该分区是否还具有任何剩余的该先占信用度;以及
将该计算机配置为,如果该分区还具有任何剩余的该先占信用度,则计算该先占信用度的一部分,对于随后的分派窗口,将该先占信用度的该部分分配给该虚拟处理器,以及从该先占信用度中减去该部分。
20.根据权利要求15所述的方法,进一步包括:
将该计算机配置为,如果该分区不具有任何剩余的该先占信用度,则对于随后的分派窗口,将该物理处理器周期的应得能力分配给该虚拟处理器。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/094,712 US7613897B2 (en) | 2005-03-30 | 2005-03-30 | Allocating entitled processor cycles for preempted virtual processors |
US11/094,712 | 2005-03-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1841331A true CN1841331A (zh) | 2006-10-04 |
CN100390740C CN100390740C (zh) | 2008-05-28 |
Family
ID=37030370
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006100582239A Expired - Fee Related CN100390740C (zh) | 2005-03-30 | 2006-02-24 | 为被先占的虚拟处理器分配应得处理器周期的方法和系统 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7613897B2 (zh) |
CN (1) | CN100390740C (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106415500A (zh) * | 2014-06-27 | 2017-02-15 | 亚马逊科技公司 | 用于虚拟计算机资源调度的滚动资源信贷 |
CN110059609A (zh) * | 2019-04-12 | 2019-07-26 | 广西信路威科技发展有限公司 | 视频流图像的车辆与行人同步检测识别记录系统 |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7844970B2 (en) * | 2006-08-22 | 2010-11-30 | International Business Machines Corporation | Method and apparatus to control priority preemption of tasks |
US8219995B2 (en) * | 2007-03-28 | 2012-07-10 | International Business Machins Corporation | Capturing hardware statistics for partitions to enable dispatching and scheduling efficiency |
US7698531B2 (en) * | 2007-03-28 | 2010-04-13 | International Business Machines Corporation | Workload management in virtualized data processing environment |
US7617375B2 (en) * | 2007-03-28 | 2009-11-10 | International Business Machines Corporation | Workload management in virtualized data processing environment |
US7698530B2 (en) * | 2007-03-28 | 2010-04-13 | International Business Machines Corporation | Workload management in virtualized data processing environment |
US8225315B1 (en) * | 2007-07-23 | 2012-07-17 | Oracle America, Inc. | Virtual core management |
JP4523965B2 (ja) * | 2007-11-30 | 2010-08-11 | 株式会社日立製作所 | リソース割当方法、リソース割当プログラム、および、運用管理装置 |
US8312456B2 (en) * | 2008-05-30 | 2012-11-13 | International Business Machines Corporation | System and method for optimizing interrupt processing in virtualized environments |
US8677372B2 (en) | 2009-12-17 | 2014-03-18 | International Business Machines Corporation | Method, data processing program, and computer program product to compensate for coupling overhead in a distributed computing system, and corresponding overhead calculator for a distributed computing system and corresponding computer system |
JP5388909B2 (ja) * | 2010-03-09 | 2014-01-15 | 株式会社日立製作所 | ハイパバイザ、計算機システム、及び、仮想プロセッサのスケジューリング方法 |
EP2590072A4 (en) * | 2010-06-30 | 2013-10-09 | Fujitsu Ltd | SYSTEM CONTROL DEVICE, INFORMATION PROCESSING SYSTEM, AND DATA MIGRATION AND RESTORATION METHOD FOR INFORMATION PROCESSING SYSTEM |
US8122167B1 (en) | 2010-08-06 | 2012-02-21 | International Business Machines Corporation | Polling in a virtualized information handling system |
US8918784B1 (en) * | 2010-12-21 | 2014-12-23 | Amazon Technologies, Inc. | Providing service quality levels through CPU scheduling |
US9817700B2 (en) * | 2011-04-26 | 2017-11-14 | International Business Machines Corporation | Dynamic data partitioning for optimal resource utilization in a parallel data processing system |
US9183030B2 (en) * | 2011-04-27 | 2015-11-10 | Microsoft Technology Licensing, Llc | Virtual processor allocation techniques |
US9052932B2 (en) * | 2012-12-17 | 2015-06-09 | International Business Machines Corporation | Hybrid virtual machine configuration management |
US9244826B2 (en) | 2013-03-15 | 2016-01-26 | International Business Machines Corporation | Managing CPU resources for high availability micro-partitions |
US9032180B2 (en) * | 2013-03-15 | 2015-05-12 | International Business Machines Corporation | Managing CPU resources for high availability micro-partitions |
US9158470B2 (en) * | 2013-03-15 | 2015-10-13 | International Business Machines Corporation | Managing CPU resources for high availability micro-partitions |
US9710039B2 (en) * | 2014-07-17 | 2017-07-18 | International Business Machines Corporation | Calculating expected maximum CPU power available for use |
US9886306B2 (en) | 2014-11-21 | 2018-02-06 | International Business Machines Corporation | Cross-platform scheduling with long-term fairness and platform-specific optimization |
US9934287B1 (en) | 2017-07-25 | 2018-04-03 | Capital One Services, Llc | Systems and methods for expedited large file processing |
US11048646B2 (en) | 2018-04-21 | 2021-06-29 | International Business Machines Corporation | I/O authorization control in shared storage systems |
US11144473B2 (en) * | 2018-06-13 | 2021-10-12 | Advanced Micro Devices, Inc. | Quality of service for input/output memory management unit |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5210872A (en) * | 1991-06-28 | 1993-05-11 | Texas Instruments Inc. | Critical task scheduling for real-time systems |
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 |
JPH0954699A (ja) * | 1995-08-11 | 1997-02-25 | Fujitsu Ltd | 計算機のプロセススケジューラ |
JPH10301793A (ja) * | 1997-04-30 | 1998-11-13 | Toshiba Corp | 情報処理装置及びスケジューリング方法 |
US7428485B2 (en) * | 2001-08-24 | 2008-09-23 | International Business Machines Corporation | System for yielding to a processor |
US7448036B2 (en) * | 2002-05-02 | 2008-11-04 | International Business Machines Corporation | System and method for thread scheduling with weak preemption policy |
US7480911B2 (en) * | 2002-05-09 | 2009-01-20 | International Business Machines Corporation | Method and apparatus for dynamically allocating and deallocating processors in a logical partitioned data processing system |
US7290260B2 (en) * | 2003-02-20 | 2007-10-30 | International Business Machines Corporation | Dynamic processor redistribution between partitions in a computing system |
US7073002B2 (en) * | 2003-03-13 | 2006-07-04 | International Business Machines Corporation | Apparatus and method for controlling resource transfers using locks in a logically partitioned computer system |
US7478393B2 (en) * | 2003-04-30 | 2009-01-13 | International Business Machines Corporation | Method for marketing to instant messaging service users |
US20050192937A1 (en) * | 2004-02-26 | 2005-09-01 | International Business Machines Corporation | Dynamic query optimization |
-
2005
- 2005-03-30 US US11/094,712 patent/US7613897B2/en not_active Expired - Fee Related
-
2006
- 2006-02-24 CN CNB2006100582239A patent/CN100390740C/zh not_active Expired - Fee Related
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106415500A (zh) * | 2014-06-27 | 2017-02-15 | 亚马逊科技公司 | 用于虚拟计算机资源调度的滚动资源信贷 |
CN106415500B (zh) * | 2014-06-27 | 2020-02-21 | 亚马逊科技公司 | 用于虚拟计算机资源调度的滚动资源信贷 |
US10649796B2 (en) | 2014-06-27 | 2020-05-12 | Amazon Technologies, Inc. | Rolling resource credits for scheduling of virtual computer resources |
CN111176796A (zh) * | 2014-06-27 | 2020-05-19 | 亚马逊科技公司 | 用于虚拟计算机资源调度的滚动资源信贷 |
US11487562B2 (en) | 2014-06-27 | 2022-11-01 | Amazon Technologies, Inc. | Rolling resource credits for scheduling of virtual computer resources |
CN111176796B (zh) * | 2014-06-27 | 2023-12-05 | 亚马逊科技公司 | 用于虚拟计算机资源调度的滚动资源信贷 |
CN110059609A (zh) * | 2019-04-12 | 2019-07-26 | 广西信路威科技发展有限公司 | 视频流图像的车辆与行人同步检测识别记录系统 |
CN110059609B (zh) * | 2019-04-12 | 2023-09-12 | 广西信路威科技发展有限公司 | 视频流图像的车辆与行人同步检测识别记录系统 |
Also Published As
Publication number | Publication date |
---|---|
CN100390740C (zh) | 2008-05-28 |
US20060230400A1 (en) | 2006-10-12 |
US7613897B2 (en) | 2009-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1841331A (zh) | 为被先占的虚拟处理器分配应得处理器周期的方法和系统 | |
KR101159448B1 (ko) | 논리적 파티션들 사이의 네트워크 어댑트 리소스 할당 | |
US7467295B2 (en) | Determining a boot image based on a requesting client address | |
CN1262930C (zh) | 由管理单元对操作系统控制台和操作员面板进行虚拟化 | |
US7721297B2 (en) | Selective event registration | |
US7853928B2 (en) | Creating a physical trace from a virtual trace | |
CN102473106B (zh) | 虚拟环境中的资源分配 | |
US20110119344A1 (en) | Apparatus And Method For Using Distributed Servers As Mainframe Class Computers | |
CN1794177A (zh) | 用于为虚拟机揭示处理器拓扑结构的系统和方法 | |
US8516487B2 (en) | Dynamic job relocation in a high performance computing system | |
US9063918B2 (en) | Determining a virtual interrupt source number from a physical interrupt source number | |
CN1274123A (zh) | 分区系统的带有动态配置的外围元件互联槽控制装置 | |
CN1991768A (zh) | 与不同种类的资源通信的基于指令系统结构的内定序器 | |
CN109976907B (zh) | 任务分配方法和系统、电子设备、计算机可读介质 | |
US20070234315A1 (en) | Compiling an application by cluster members | |
KR20200052558A (ko) | 컴퓨팅 시스템 및 컴퓨팅 시스템의 동작 방법 | |
US20080221855A1 (en) | Simulating partition resource allocation | |
CN100352199C (zh) | 分区环境中的远程加电功能 | |
CN116075809A (zh) | 边缘区域中计算节点和基础设施节点之间的自动节点互换 | |
US11307889B2 (en) | Schedule virtual machines | |
US7979660B2 (en) | Paging memory contents between a plurality of compute nodes in a parallel computer | |
US9176910B2 (en) | Sending a next request to a resource before a completion interrupt for a previous request | |
KR20180076051A (ko) | OpenCL 커널을 처리하는 방법과 이를 수행하는 컴퓨팅 장치 | |
US10904090B2 (en) | Virtual machine placement based on network communication patterns with other virtual machines | |
US20050240650A1 (en) | Service enablement via on demand resources |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080528 Termination date: 20190224 |