CN100367220C - 用于在逻辑分区数据处理系统中管理资源的方法和设备 - Google Patents
用于在逻辑分区数据处理系统中管理资源的方法和设备 Download PDFInfo
- Publication number
- CN100367220C CN100367220C CNB2005100830681A CN200510083068A CN100367220C CN 100367220 C CN100367220 C CN 100367220C CN B2005100830681 A CNB2005100830681 A CN B2005100830681A CN 200510083068 A CN200510083068 A CN 200510083068A CN 100367220 C CN100367220 C CN 100367220C
- Authority
- CN
- China
- Prior art keywords
- subregion
- zone
- utilization
- usury
- resource
- 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.)
- Expired - Fee Related
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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种用于在逻辑分区环境中自动地监视和分配资源的客户/服务器模型。各分区包括监视那个分区的资源利用的客户应用程序。该客户应用程序周期地收集资源利用度量,并且把资源状态通知发送给服务器应用程序。该服务器应用程序运行在分区或外部工作站上。该服务器应用程序等待从客户的资源状态通知,并且基于这些通知,把分区分类进利用区域。该服务器然后把资源从低利用区域中的分区重新分配给高利用区域中的分区。
Description
技术领域
本发明涉及数据处理,并且更具体地,涉及逻辑分区数据处理系统。更具体地,本发明涉及一种用于在逻辑分区数据处理系统中通过利用区域进行自动资源管理的方法和设备。
背景技术
大型对称多处理器数据处理系统可以分区,并且用作多个较小系统。这样系统的例子包括可从国际商业机器公司得到的IBMeServerTM,可从惠普公司得到的DHP9000 Superdome企业服务器,和可从Sun微系统有限公司得到的Sun FireTM 15K服务器。这些系统经常被称为逻辑分区(LPAR)数据处理系统。数据处理系统内的逻辑分区功能性允许单一操作系统的多个拷贝或多个异构操作系统同时在单一数据处理系统平台上运行。在其之内运行操作系统映像的分区分配给平台的物理资源的非重叠子集。这些平台可分配资源包括一个或多个架构截然不同的处理器以及它们的中断管理区域、系统存储器区和输入/输出(I/O)适配器总线插槽。分区的资源由平台的固件提供给操作系统映像。
在平台内运行的每个不同的操作系统或操作系统的映像相互受到保护,以便在一个逻辑分区上的软件错误不能影响任何其他分区的正确操作。通过把平台资源的不相交集分配给由各操作系统映像直接管理,以及通过提供机制以确保各映像不能控制没有分配给那个映像的任何资源,提供这种保护。而且,防止在操作系统的所分配资源的控制中的软件错误影响任何其他映像的资源。因而,操作系统的各映像或各个不同操作系统直接控制平台内的可分配资源的不同集合。
LPAR数据处理系统中的资源时常欠利用或过利用。需要经常人工管理,以监视资源利用,并且据此分配资源,以提供最优利用。例如,一个分区可能在一个中央处理单元(CPU)以100%的利用下运行。通过把另一个CPU分配给这个分区,管理员可以提供附加资源,以帮助工作负荷。
然而,从哪里获得附加资源也可能引起问题。如果目前所有资源分配给了其他分区,那么必须决定从哪里取得资源,以及应该把它们分配到哪里。因而,系统管理员必须登录各分区,并且记录利用,然后把利用统计量与每个其他分区比较。这种人工处理耗费时间而且代价高。
发明内容
本发明认识到现有技术的缺点,并且提供了一种用于在逻辑分区环境中自动地监视和分配资源的客户/服务器模型。
根据本发明的一个方面,提出了一种用于在逻辑分区数据处理系统中管理资源的方法,所述方法包括:接收来自分区的资源利用状态信息;通过为每个利用区域形成一个表以及为每个利用区域排序所述表,把所述分区分类进利用区域;把资源从低利用区域中的低利用分区动态地重新分配给高利用区域中的高利用分区;以及从所述低利用区域的所述表中移除所述低利用分区,并且从所述高利用区域的所述表中移除所述高利用分区。
根据本发明的另一个方面,提出了一种用于在逻辑分区数据处理系统中管理资源的设备,所述设备包括:用于接收来自分区的资源利用状态信息的装置;用于通过为每个利用区域形成一个表以及为每个利用区域排序所述表,把所述分区分类进利用区域的装置;用于把资源从低利用区域中的低利用分区动态地重新分配给高利用区域中的高利用分区的装置;以及用于从所述低利用区域的所述表中移除所述低利用分区,并且从所述高利用区域的所述表中移除所述高利用分区的装置。
附图说明
所附权利要求书阐述了被认为是本发明之特征的新颖特征。然而,通过连同附图一起阅读说明性的实施方式的下述详细描述,将更好地理解该发明本身、其优选使用方式、其它目的及其优点,其中:
图1是一个其中可以实现本发明的数据处理系统的方块图;
图2是一个其中可以实现本发明的示例性逻辑分区平台的方块图;
图3是示出了根据本发明的示例性实施方式,在逻辑分区数据处理系统内的动态资源管理系统的方块图;
图4A至图4C示出了根据本发明的示例性实施方式,基于利用区域排序成链接表的示例分区;
图5是示出了根据本发明的示例性实施方式,监视客户的操作的流程图;以及
图6是示出了根据本发明的示例性实施方式,监视和资源管理服务器的操作的流程图。
具体实施方式
本发明提供了一种用于在逻辑分区数据处理系统中通过利用区域进行自动资源管理的方法、设备和计算机程序产品。数据处理装置可以是独立计算装置,或可以是分布式的数据处理系统,其中利用多个计算装置执行本发明的各个方面。因此,以下图1和图2作为其中可以实现本发明的数据处理环境的示例性图提供。应该理解图1和图2只是示例性的,并且不意在规定或暗示关于其中可以实现本发明的环境的任何限制。可以对所示环境进行许多变更而不脱离本发明的精神和范围。
现在参考附图,并且更具体地参考图1,其示出了其中可以实现本发明的数据处理系统的方块图。数据处理系统100可以是对称多处理器(SMP)系统,包括多个与系统总线106连接的处理器101、102、103和104。例如,数据处理系统100可以是IBM eServer TM系统,其为位于纽约阿芒克的国际商业机器公司的一种产品,实现为网络内的服务器。与系统总线106连接的还有存储器控制器/高速缓冲存储器108,它提供多个局部存储器160-163的接口。I/O总线桥110与系统总线106连接,并且提供I/O总线112的接口。存储器控制器/高速缓冲存储器108和I/O总线桥110可以如所示那样集成在一起。
数据处理系统100是逻辑分区(LPAR)数据处理系统。因而,数据处理系统100可以具有同时运行的多个异构操作系统(或单一操作系统的多个实例)。这些多个操作系统的每个可以具有任何数量的软件程序在其内执行。对数据处理系统100进行逻辑分区,以便把不同的PCI I/O适配器120-121、128-129和136,图形适配器148和硬盘适配器149分配给不同的逻辑分区。在这种情况下,图形适配器148提供用于显示设备(未示出)的连接,而硬盘适配器149提供用于控制硬盘150的连接。
因此,例如,假设数据处理系统100被划分为三个逻辑分区P1、P2和P3。把PCI I/O适配器120-121、128-129和136的每一个,图形适配器148,硬盘适配器149,主处理器101-104的每一个,以及局部存储器160-163中的存储器分配给三个分区中的一个分区。在这些例子中,存储器160-163可采取双列直插存储模块(DIMM)的形式。DIMM通常不是以每DIMM为基础分配给所有分区的。相反,一个分区获得该平台发现的全部存储器的一部分。例如,处理器101,局部存储器160-163中的存储器的某些部分,以及I/O适配器120、128和129可以分配给逻辑分区P1;处理器102-103,局部存储器160-163中的存储器的某些部分,以及PCI I/O适配器121和136可以分配给分区P2;处理器104,局部存储器160-163中的存储器的某些部分,图形适配器148和硬盘适配器149可以分配给逻辑分区P3。
在数据处理系统100内执行的每个操作系统分配给不同的逻辑分区。因此,在数据处理系统100内执行的每个操作系统只能访问在其逻辑分区内的那些I/O单元。因此,例如,可以在分区P1内执行高级交互执行(AIX)操作系统的一个实例,可以在分区P2内执行AIX操作系统的第二实例(映象),而可以在逻辑分区P3内运行Windows XPTM操作系统。Windows XPTM是位于华盛顿州雷蒙德的微软公司的产品和商标。
与I/O总线112相连的周边元件互连(PCI)主桥114提供到局部总线115的接口。多个PCI输入/输出适配器120-121可以通过PCI到PCI桥116、PCI总线118、PCI总线119、I/O插槽170和I/O插槽171连接到PCI总线115。PCI到PCI桥116提供到PCI总线118和PCI总线119的接口。PCI I/O适配器120和121分别插入在I/O插槽170和171中。典型PCI总线实现将支持四个至八个I/O适配器(即,用于插式连接器的扩展插槽)。各PCI I/O适配器120-121提供数据处理系统100和诸如其它是数据处理系统100的客户机的网络计算机之类的输入/输出设备之间的接口。
附加PC I主桥122提供用于附加PCI总线123的接口。PCI总线123连接到多个PCI I/O适配器128-129。PCI I/O适配器128-129可以通过PCI到PCI桥124、PCI总线126、PCI总线127、I/O插槽172和I/O插槽173连接到PCI总线123。PCI到PCI桥124提供到PCI总线126和PCI总线127的接口。PCI I/O适配器128和129分别插入在I/O插槽172和173中。照这样,通过各PCI I/O适配器128-129,可以支持诸如调制解调器或网络适配器之类的附加I/O设备。照这样,数据处理系统100允许连接多个网络计算机。
插入在I/O插槽174中的存储映象的图形适配器148可以通过PCI总线144、PCI到PCI桥142、PCI总线141和PCI主桥140连接到I/O总线112。硬盘适配器149可以插入在与PCI总线145相连的I/O插槽175中。该总线145连接到PCI到PCI桥142,利用PCI总线141,PCI到PCI桥142连接到PCI主桥140。
PCI主桥130提供PCI总线131连接到I/O总线112的接口。PCII/O适配器136连接到I/O插槽176,利用PCI总线133,该I/O插槽176连接到PCI到PCI桥132。PCI到PCI桥132连接到PCI总线131。同时,该PCI总线131把PCI主桥130连接到服务处理器邮箱接口和ISA总线访问通过逻辑194以及PCI到PCI桥132。服务处理器邮箱接口和ISA总线访问通过逻辑194转发前往PCI/ISA桥193的PCI访问。NVRAM存储器192连接到ISA总线196。服务处理器135通过其局部PCI总线195连接到服务处理器邮箱接口和ISA总线访问通过逻辑194。同时,服务处理器135经由多个JTAG/I2C总线134,连接到处理器101-104。JTAG/I2C总线134为JTAG/扫描总线(参见IEEE 1149.1)和飞利浦I2C总线的组合。然而,作为选择,可单独利用飞利浦I2C总线或单独利用JTAG/扫描总线替换JTAG/I2C总线134。主处理器101、102、103和104的所有SP-ATTN信号连接在一起,作为服务处理器的中断输入信号。服务处理器135有它自己的局部存储器191,并且有权使用硬件OP面板190。
在最初给数据处理系统100加电时,服务处理器135使用JTAG/I2C总线134来询问系统(主)处理器101-104、存储器控制器/高速缓冲存储器108和I/O桥110。在完成此步骤后,服务处理器135具有数据处理系统100的详细目录和拓扑理解。同时,服务处理器135对通过询问主处理器101-104、存储器控制器/高速缓冲存储器108和I/O桥110发现的所有元件执行内置自检(BIST)、基本正确性检测(BAT)和存储器测试。由服务处理器135收集并报告BIST、BAT和存储器测试期间检测出的任何故障的出错信息。
如果在去除BIST、BAT和存储器测试期间发现的故障元件后系统资源的有意义的/有效配置仍然可行,则允许数据处理系统100继续向局部(主)存储器160-163中装载可执行代码。接着,服务处理器135释放主处理器101-104以执行装载到局部存储器160-163中的代码。在主处理器101-104执行数据处理系统100内的各个操作系统的代码时,服务处理器135进入监控和报告错误的模式。由服务处理器135监控的项目类型包括:例如,风扇速度和操作,热传感器,电源稳压器,以及由处理器101-104、局部存储器160-163和I/O桥110报告的可恢复的和不可恢复的错误。
服务处理器135负责保存并报告与数据处理系统100中的所有被监控项目有关的出错信息。同时,服务处理器135根据错误类型和定义的阈值采取措施。例如,服务处理器135可以注意到某个处理器的高速缓冲存储器上过多的可恢复的错误,并确定这是硬故障的预兆。基于上述确定,服务处理器135可以标记该资源以便在当前的运行会话和未来的初始程序装入(IPL)期间解除配置。IPL有时也称为“引导”或“自举”。
可以使用可从市场上买到的各种计算机系统来实现数据处理系统100。例如,可使用可从国际商业机器公司获得的IBM eServerTMiSeriesTmModel 840系统来实现数据处理系统100。此系统可以支持使用OS/400操作系统的逻辑分区,OS/400操作系统也可以从国际商业机器公司获得。
本领域的一般技术人员可以理解,图1描述的硬件可以改变。例如,除所示硬件之外,也可以使用诸如光盘驱动器之类的其它外围设备,或代替所示硬件。所示例子并不意味着对本发明的体系结构的限制。
现在参照图2,其描述了一个可在其中实现本发明的示例性逻辑分区平台的框图。例如,逻辑分区平台200中的硬件可实现图1中的数据处理系统100。逻辑分区平台200包括分区硬件230、操作系统202、204、206、208和系统管理程序(hypervisor)210。操作系统202、204、206和208可以是同时运行于平台200上的单一操作系统的多个拷贝或多个异构的操作系统。这些操作系统可使用设计用来与系统管理程序通信的OS/40操作系统实现。操作系统202、204、206和208位于分区203、205、207和209中。
此外,这些分区还包括固件加载器211、213、215和217。固件加载器211、213、215和217可使用可从国际商业机器公司得到的运行时间提取软件(RTAS)以及IEEE-1275标准的开放固件来实现。在将分区203、205、207和209实例化时,系统管理程序的分区管理器将开放固件的拷贝装载到每个分区里。然后,将与各分区相关的或分配给各分区的处理器调度至分区的存储器中,以执行分区固件。
分区硬件230包括多个处理器232-238,多个系统存储单元240-246,多个输入/输出(I/O)适配器248-262,以及存储单元270。分区硬件230还包括服务处理器290,可用于提供多种服务,例如分区内的错误的处理。可将处理器232-238、存储单元240-246,NVRAM存储器298,以及输入/输出(I/O)适配器248-262中的每一个分配给逻辑分区平台200中多个分区中的一个,每个分区对应于操作系统202、204、206和208中的一个。
系统管理程序固件210为分区203、205、207和209完成多种功能和服务,以产生和执行对逻辑分区平台200的分区。系统管理程序210是一个与下层硬件相同的固件实现的虚拟机。系统管理程序软件可从国际商业机器公司得到。固件是存储在例如只读存储器(ROM)、可编程ROM(PROM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)以及非易失性随机存取存储器(非易失性RAM)等不需要电源就能保存其中内容的存储芯片中的“软件”。从而,系统管理程序210通过把逻辑分区平台200的所有硬件资源虚拟化允许同时执行独立的操作系统映像202、204、206和208。
不同分区的操作可以通过硬件管理控制台,例如硬件管理控制台280来控制。硬件管理控制台280是一个分开的数据处理系统,由此系统管理员可以对不同分区执行各种功能,包括资源的重新分配。
LPAR数据处理系统中的资源时常欠利用或过利用。需要经常人工管理,以监视资源利用,并且据此分配资源,以提供最优利用。例如,分区203可能仅在处理器232以100%的利用下运行。通过对这个分区分配另一个处理器,管理员可以提供附加资源,以帮助工作负荷。
然而,从哪里获得附加资源也可能引起问题。如果目前所有资源分配给了其他分区,那么必须决定从哪里取得资源,以及应该把它们分配到哪里。因而,系统管理员必须登录各分区,并且记录利用,然后把利用统计量与每个其他分区比较。这种人工处理耗费时间且代价高。
本发明提供了一种用于在逻辑分区环境中自动地监视和分配资源的客户/服务器模型。各分区包括监视那个分区的资源利用的客户应用程序。该客户应用程序周期地收集资源利用度量,并且把资源状态通知发送给服务器应用程序。该服务器应用程序运行在分区或外部工作站上。该服务器应用程序等待从客户的资源状态通知,并且基于这些通知,把分区分类进利用区域。该服务器然后把资源从低利用区域中的分区重新分配给高利用区域中的分区。
图3是示出了根据本发明的示例性实施方式,在逻辑分区数据处理系统内的动态资源管理系统的方块图。系统管理程序360通过使逻辑分区310、320、330和340的所有硬件资源虚拟化,允许独立的OS映像的同时执行。监视器客户312、322、332、342分别运行在分区310、320、330和340上。服务器350可以运行在分区310、320、330、340中的一个、数据处理系统内的另一个分区(未示出),或在一个外部终端,例如图2中的硬件系统控制台280上。
服务器应用程序350起系统管理员作用。策略文件352描述要监视的这些分区和应用于这些分区的利用区域阈值。这些阈值确定资源使用的状态。这些分区的每一个建立通信会话。服务器350和监视器客户312、322、332、342例如可以是资源监视和控制(RMC)类。有已知类型的RMC类;然而,可以得到专门类,以用于LPAR环境中的自动和动态资源分配。一旦连接,服务器350可以向要被监视的分区发送阈值,并且在各监视器客户实例中设置这些阈值。
当监视器客户,例如监视器客户312产生资源状态通知事件时,服务器350基于该事件把该分区排序进代表适当区域的链接表。该链接表是通过实际资源利用度量排序的。作为一个特定例子,高区域按降序排序,中区域按降序排序,以及低区域按升序排序。
当分区被放置在高区域表或低区域表上时,服务器350检查以发现资源是否能重新分配。如果有分区在高区域表上,那么服务器350检查低区域表,以发现是否能将资源从低分区移到高分区。一旦资源重新分配/解除分配,就将所述的两个分区从它们的各自表中移除。重复这个过程,直到高区域表或低区域表为空为止。
如果分区已经在一个区域中,并且服务器350接收到将这个分区放置到另一个区域中的事件(通知),那么服务器350首先把该分区从它的当前区域表中移除,然后把该分区放置在适当的利用区域表中。如果当分区已经在一个区域中的时候,并且服务器350接收到把该分区放置在相同区域中的事件,那么服务器350用该分区的新利用度量对该表重新排序。
每个客户,例如监视器客户312,运行在分区上,例如分区310。监视器客户312、322、332、342例如可以是RMC资源类,该RMC资源类被修改为根据本发明的示例性方面包括利用区域的自动资源管理。监视器客户312例如周期地收集资源利用度量,例如CPU使用、存储器使用、I/O适配器使用等。例如,监视器客户312例如可以每十秒唤醒它自己,并且收集资源利用度量。监视间隔可以基于实现来选择。
基于收集的利用度量和从服务器350接收的如策略文件352所定义的阈值,监视器客户把分区的当前状态通知给服务器。如果利用在低阈值之下,监视器客户请求服务器350从分区中移除资源。另一方面,如果利用在高阈值之上,监视器客户请求服务器350对分区分配更多资源。如果利用在低阈值与高阈值之间,监视器客户报告分区的当前分配足够。
服务器350可以运行在管理控制台,例如图2中的硬件系统控制台280上。在这种情况下,服务器350向系统管理程序360提出资源分配和解除分配请求。在一个可供选择的实施方式中,服务器350运行在逻辑分区数据处理系统中的分区上。在这种情况下,服务器350通过管理控制台(未示出)向系统管理程序360请求资源的分配和解除分配。
低阈值和高阈值可以基于实现来选择。例如,低阈值可以设定为40%,而高阈值可以设定为90%。然而,LPAR数据处理系统的特定情况可能指示必须变更阈值,以达到资源分配中的更多平衡。换句话说,应该这样设定低阈值和高阈值,以确保分区的大多数把它们的时间中的大多数花费在中区域。管理员可以在试图达到这个平衡的任何时间,通过例如在图2的硬件系统控制台280的用户接口,变更策略352。
图4A至图4C示出了根据本发明的示例性实施方式,基于利用区域排序成链接表的示例分区。服务器应用程序从要监视的分区的监视客户接收资源状态通知。服务器然后把分区分类进利用区域,并且然后为各利用区域形成链接表。在图4A至图4C所示的例子中,有三个利用区域:高区域、中区域和低区域。然而,根据实现可以使用较多或较少的利用区域。例如,可以使用两个区域,以对分区动态地分配资源,以实现一种公平策略,其中各分区在一个时间片可以比其他分区接收较多资源。作为另一个例子,可以使用五个区域,以便可以从最低区域到最高区域产生更急剧的资源分配。
在图4A中,分区A和分区C在高区域,这意味着它们的资源利用在高阈值之上。高区域链接表按降序排序;因此,分区A的资源利用高于分区C的资源利用。同样,分区B和分区E在低区域,这意味着它们的资源利用在低阈值之下。低区域链接表按升序排序;因此,分区B的资源利用低于分区E的资源利用。分区D在中利用区域,这意味着它的资源利用在低阈值与高阈值之间。
因为分区B具有最低资源利用,以及分区A具有最高资源利用,于是服务器应用程序试图从分区B解除分配资源,并且把它们分配给分区A。服务器然后从低区域链接表中移除分区B,并且从高区域链接表中移除分区A。类似地,服务器试图从分区E解除分配资源,并且把它们分配给分区C。然后,服务器从低区域链接表中移除分区E,并且从高区域链接表中移除分区C。
如图4B所示,下一次收集资源利用度量时,服务器接收到分区C在中区域的通知。也就是,分区C的资源利用在低阈值与高阈值之间。中区域链接表按降序排序;因此,分区C的资源利用高于分区D的资源利用。在本例中,基于收集的利用度量,分区B和分区E保持在低利用区域中。
因为分区B具有最低资源利用,以及分区A具有最高资源利用,于是服务器应用程序试图从分区B解除分配资源,并且把它们分配给分区A。服务器然后从低区域链接表中移除分区B,并且从高区域链接表中移除分区A。然后,如图4C所示,下一次收集资源利用度量时,服务器接收到分区A和分区E现在在中区域的通知。因为高区域链接表为空,所以无需分配/解除分配。
图5是示出了根据本发明的示例性实施方式,监视客户的操作的流程图。操作开始,并且客户从服务器应用程序接收阈值,而且初始化(块502)。然后,确定是否存在退出情况(块504)。例如,当解除配置分区时,或当数据处理系统关闭时,可能存在退出情况。如果存在退出情况,操作结束。
如果在块504不存在退出情况,确定是否唤醒和收集统计量(块506)。该确定例如可以通过确定监视间隔是否到期而实现。监视间隔可以在块502中的初始化时设定,并且可以由在服务器的策略来定义。监视器客户例如也可以响应另一个事件,例如由于资源不足引起的错误情况而唤醒。如果监视器客户在块506不唤醒,操作返回块504,以确定是否存在退出情况。
如果监视器客户在块506唤醒,监视器客户收集资源利用度量(块508),确定资源状态(块510),并且把资源状态通知发送给服务器(块512)。其后,操作返回块504,以确定是否存在退出情况。
图6是示出了根据本发明的示例性实施方式,监视和资源管理服务器的操作的流程图。操作开始,并且服务器读取一个策略文件,而且初始化(块602)。如上所述,策略文件可以定义要监视哪些分区、利用区域的阈值、监视间隔,和用于监视和管理资源的其他信息。然后,服务器把阈值发送给监视客户(块604)。
接下来,确定是否存在退出情况(块606)。例如,当数据处理系统关闭时,可能存在退出情况。如果存在退出情况,操作结束。如果在块606不存在退出情况,服务器确定是否接收到一个或多个资源状态通知(块608)。如果没有接收到资源状态通知,操作返回块606,以确定是否存在退出情况。
如果在块608接收到资源状态通知,服务器把分区分离进利用区域(块610)。然后,服务器为各利用区域形成链接表(块612),并且对各链接表排序(块614)。接下来,确定高区域是否为空(块616)。如果高区域表为空,那么无需资源的重新分配,并且操作返回块606,以确定是否存在退出情况。
如果在块616高区域表不为空,确定低区域表是否为空(块618)。如果低区域表为空,那么无未使用的资源重新分配给高区域表中的分区,并且操作返回块606,以确定是否存在退出情况。
如果在块618低区域表不为空,那么服务器把资源从低区域中具有最低利用的分区重新分配给高区域中具有最高利用的分区(块620)。接下来,服务器把这些分区从它们的各自表中移除(块622),并且操作返回块616和618,以确定高区域表或低区域表是否为空。服务器然后继续把资源从低区域表中的分区重新分配给高区域表中的分区,直到高区域表或低区域表为空为止。
这样,本发明通过提供一种用于在逻辑分区环境中自动地监视和分配资源的客户/服务器模型,解决了现有技术的缺点。各分区包括监视那个分区的资源利用的客户应用程序。该客户应用程序周期地收集资源利用度量,并且把资源状态通知发送给服务器应用程序。该服务器应用程序运行在分区或外部工作站上。该服务器应用程序等待从客户的资源状态通知,并且基于这些通知,把分区分类进利用区域。该服务器然后把资源从低利用区域中的分区重新分配给高利用区域中的分区。
本发明的客户/服务器模型允许自动资源管理和动态分配,而无需管理员的人工干预。管理员于是可以把他的或她的宝贵时间花费在其他任务上。而且,因为分区得以更频繁地被监视,并且资源得以更智能地被分配,所以允许数据处理系统更有效地执行,因而更好地满足服务水平协议。
重要的是请注意,尽管本发明是在全功能数据处理系统的情况下描述的,但是本领域的一般技术人员可以理解,可以以指令的计算机可读介质的形式,以及多种形式分布本发明的进程,并且不论实际完成分布的信号承载介质的特定类型,本发明同样适用。计算机可读介质的例子包括可记录类型的介质,如软盘、硬盘驱动器、RAM、CD-ROM、DVD-ROM,以及传输类型的介质,如数字和模拟通信链路,使用诸如射频和光波传输之类的传输形式的有线或无线通信链路。计算机可读介质可以采取编码的格式的形式,其中当在特定数据处理系统中实际使用时进行解码。
提供本发明的说明书的目的是为了说明和描述,而不是用来穷举或将本发明限制为所公开的形式。对本领域的一般技术人员而言,许多修改和变更都是显而易见的。选择并描述实施方式是为了更好地解释本发明的原理,其实际应用,并使本领域的其他一般技术人员理解带有各种修改的各种实施方式的本发明同样适用于设想的特定用途。
Claims (12)
1.一种用于在逻辑分区数据处理系统中管理资源的方法,所述方法包括:
接收来自分区的资源利用状态信息;
通过为每个利用区域形成一个表以及为每个利用区域排序所述表,把所述分区分类进利用区域;
把资源从低利用区域中的低利用分区动态地重新分配给高利用区域中的高利用分区;以及
从所述低利用区域的所述表中移除所述低利用分区,并且从所述高利用区域的所述表中移除所述高利用分区。
2.根据权利要求1的方法,其中接收资源利用状态信息包括从运行在特定分区中的监视器客户应用程序接收资源利用状态通知。
3.根据权利要求2的方法,其中所述资源利用状态通知标识所述特定分区的利用区域。
4.根据权利要求1的方法,还包括:
重复资源的所述重新分配,直到所述高利用区域的所述表或所述低利用区域的所述表为空为止。
5.根据权利要求1的方法,其中所述利用区域包括低利用区域,中利用区域,和高利用区域。
6.根据权利要求1的方法,其中通过运行在所述逻辑分区数据处理系统内的分区和硬件管理控制台中的一个上的服务器应用程序,执行所述方法。
7.一种用于在逻辑分区数据处理系统中管理资源的设备,包括:
用于接收来自分区的资源利用状态信息的装置;
用于通过为每个利用区域形成一个表以及为每个利用区域排序所述表,把所述分区分类进利用区域的装置;
用于把资源从低利用区域中的低利用分区动态地重新分配给高利用区域中的高利用分区的装置;以及
用于从所述低利用区域的所述表中移除所述低利用分区,并且从所述高利用区域的所述表中移除所述高利用分区的装置。
8.根据权利要求7的设备,其中用于接收资源利用状态信息的装置从运行在特定分区中的监视器客户应用程序接收资源利用状态通知。
9.根据权利要求8的设备,其中所述资源利用状态通知标识所述特定分区的利用区域。
10.根据权利要求7的设备,还包括:
用于重复资源的所述重新分配,直到所述高利用区域的所述表或所述低利用区域的所述表为空为止的装置。
11.根据权利要求7的设备,其中所述利用区域包括低利用区域,中利用区域,和高利用区域。
12.根据权利要求7的设备,其中所述设备在所述逻辑分区数据处理系统内的分区和硬件管理控制台中的一个上。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/006,124 US20060123217A1 (en) | 2004-12-07 | 2004-12-07 | Utilization zones for automated resource management |
US11/006,124 | 2004-12-07 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1786919A CN1786919A (zh) | 2006-06-14 |
CN100367220C true CN100367220C (zh) | 2008-02-06 |
Family
ID=36575744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100830681A Expired - Fee Related CN100367220C (zh) | 2004-12-07 | 2005-07-08 | 用于在逻辑分区数据处理系统中管理资源的方法和设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20060123217A1 (zh) |
JP (1) | JP2006164281A (zh) |
CN (1) | CN100367220C (zh) |
Families Citing this family (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160253210A1 (en) * | 2004-07-26 | 2016-09-01 | Yi-Chuan Cheng | Cellular with Multi-Processors |
US7458066B2 (en) * | 2005-02-28 | 2008-11-25 | Hewlett-Packard Development Company, L.P. | Computer system and method for transferring executables between partitions |
US7461231B2 (en) * | 2006-01-12 | 2008-12-02 | International Business Machines Corporation | Autonomically adjusting one or more computer program configuration settings when resources in a logical partition change |
US9547485B2 (en) * | 2006-03-31 | 2017-01-17 | Prowess Consulting, Llc | System and method for deploying a virtual machine |
JP2008033877A (ja) * | 2006-06-29 | 2008-02-14 | Mitsubishi Electric Corp | 情報処理装置及びos起動方法及びプログラム |
US8024738B2 (en) * | 2006-08-25 | 2011-09-20 | International Business Machines Corporation | Method and system for distributing unused processor cycles within a dispatch window |
US8209668B2 (en) | 2006-08-30 | 2012-06-26 | International Business Machines Corporation | Method and system for measuring the performance of a computer system on a per logical partition basis |
US20080077652A1 (en) * | 2006-09-06 | 2008-03-27 | Credit Suisse Securities (Usa) Llc One Madison Avenue | Method and system for providing an enhanced service-oriented architecture |
GB0618894D0 (en) * | 2006-09-26 | 2006-11-01 | Ibm | An entitlement management system |
US20080082665A1 (en) * | 2006-10-02 | 2008-04-03 | Dague Sean L | Method and apparatus for deploying servers |
US7698529B2 (en) * | 2007-01-10 | 2010-04-13 | International Business Machines Corporation | Method for trading resources between partitions of a data processing system |
US8171485B2 (en) | 2007-03-26 | 2012-05-01 | Credit Suisse Securities (Europe) Limited | Method and system for managing virtual and real machines |
US20080244607A1 (en) * | 2007-03-27 | 2008-10-02 | Vladislav Rysin | Economic allocation and management of resources via a virtual resource market |
US20090070762A1 (en) * | 2007-09-06 | 2009-03-12 | Franaszek Peter A | System and method for event-driven scheduling of computing jobs on a multi-threaded machine using delay-costs |
JP4874908B2 (ja) * | 2007-09-20 | 2012-02-15 | 株式会社東芝 | 情報処理システム、および監視方法 |
EP2223235A4 (en) * | 2007-11-06 | 2011-12-21 | Credit Suisse Securities Usa Llc | PREDICTION AND RESOURCE ALLOCATION MANAGEMENT ACCORDING TO LEVEL OF SERVICE CONTRACTS |
JP4636625B2 (ja) * | 2008-01-25 | 2011-02-23 | 株式会社日立情報システムズ | 仮想ネットワークシステムのnic接続制御方法と仮想ネットワークのnic接続制御システムおよびプログラム |
JP4743904B2 (ja) * | 2008-03-13 | 2011-08-10 | Necビッグローブ株式会社 | リソース過分配防止システム |
US8219358B2 (en) | 2008-05-09 | 2012-07-10 | Credit Suisse Securities (Usa) Llc | Platform matching systems and methods |
US8312230B2 (en) * | 2008-06-06 | 2012-11-13 | International Business Machines Corporation | Dynamic control of partition memory affinity in a shared memory partition data processing system |
US20090313160A1 (en) * | 2008-06-11 | 2009-12-17 | Credit Suisse Securities (Usa) Llc | Hardware accelerated exchange order routing appliance |
CN101398771B (zh) * | 2008-11-18 | 2010-08-18 | 中国科学院软件研究所 | 一种基于构件的分布式系统访问控制方法及访问控制系统 |
US8195859B2 (en) * | 2008-12-03 | 2012-06-05 | Hitachi, Ltd. | Techniques for managing processor resource for a multi-processor server executing multiple operating systems |
TWI463304B (zh) * | 2009-03-13 | 2014-12-01 | Ibm | 用於在一硬體管理控制台及一邏輯分割區間通信之以超管理器為基礎之設施 |
US8935317B2 (en) * | 2010-06-23 | 2015-01-13 | Microsoft Corporation | Dynamic partitioning of applications between clients and servers |
US8464023B2 (en) * | 2010-08-27 | 2013-06-11 | International Business Machines Corporation | Application run-time memory optimizer |
CN102220996B (zh) * | 2011-06-21 | 2017-07-07 | 中兴通讯股份有限公司 | 与软件版本解耦的风扇调速方法及装置 |
CN102750178B (zh) * | 2012-06-08 | 2015-04-29 | 华为技术有限公司 | 通信设备硬件资源的虚拟化管理方法及相关装置 |
CN103077081B (zh) * | 2012-12-31 | 2017-02-22 | 华为技术有限公司 | 资源调整的方法及装置 |
WO2014207481A1 (en) * | 2013-06-28 | 2014-12-31 | Qatar Foundation | A method and system for processing data |
US20150227586A1 (en) * | 2014-02-07 | 2015-08-13 | Futurewei Technologies, Inc. | Methods and Systems for Dynamically Allocating Resources and Tasks Among Database Work Agents in an SMP Environment |
US9594592B2 (en) * | 2015-01-12 | 2017-03-14 | International Business Machines Corporation | Dynamic sharing of unused bandwidth capacity of virtualized input/output adapters |
US9733996B1 (en) | 2016-04-28 | 2017-08-15 | International Business Machines Corporation | Fine tuning application behavior using application zones |
CN107391386A (zh) * | 2017-09-01 | 2017-11-24 | 中国农业银行股份有限公司 | 测试工具的时间资源管理系统和方法 |
WO2022018466A1 (en) * | 2020-07-22 | 2022-01-27 | Citrix Systems, Inc. | Determining server utilization using upper bound values |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001344132A (ja) * | 2000-03-30 | 2001-12-14 | Fujitsu Ltd | リアルタイムモニタ装置 |
US6353844B1 (en) * | 1996-12-23 | 2002-03-05 | Silicon Graphics, Inc. | Guaranteeing completion times for batch jobs without static partitioning |
US6366945B1 (en) * | 1997-05-23 | 2002-04-02 | Ibm Corporation | Flexible dynamic partitioning of resources in a cluster computing environment |
US20020129082A1 (en) * | 2001-03-08 | 2002-09-12 | International Business Machines Corporation | Inter-partition message passing method, system and program product for throughput measurement in a partitioned processing environment |
US6606658B1 (en) * | 1997-10-17 | 2003-08-12 | Fujitsu Limited | Apparatus and method for server resource usage display by comparison of resource benchmarks to determine available performance |
CN1523498A (zh) * | 2003-02-20 | 2004-08-25 | 国际商业机器公司 | 计算系统中分区之间的动态处理器再分配 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5675797A (en) * | 1994-05-24 | 1997-10-07 | International Business Machines Corporation | Goal-oriented resource allocation manager and performance index technique for servers |
US6438652B1 (en) * | 1998-10-09 | 2002-08-20 | International Business Machines Corporation | Load balancing cooperating cache servers by shifting forwarded request |
US6625709B2 (en) * | 2000-10-30 | 2003-09-23 | Microsoft Corporation | Fair share dynamic resource allocation scheme with a safety buffer |
JP2002202959A (ja) * | 2000-12-28 | 2002-07-19 | Hitachi Ltd | 動的な資源分配をする仮想計算機システム |
JP4018900B2 (ja) * | 2001-11-22 | 2007-12-05 | 株式会社日立製作所 | 仮想計算機システム及びプログラム |
US7266823B2 (en) * | 2002-02-21 | 2007-09-04 | International Business Machines Corporation | Apparatus and method of dynamically repartitioning a computer system in response to partition workloads |
US7080379B2 (en) * | 2002-06-20 | 2006-07-18 | International Business Machines Corporation | Multiprocessor load balancing system for prioritizing threads and assigning threads into one of a plurality of run queues based on a priority band and a current load of the run queue |
US6851030B2 (en) * | 2002-10-16 | 2005-02-01 | International Business Machines Corporation | System and method for dynamically allocating associative resources |
US7299468B2 (en) * | 2003-04-29 | 2007-11-20 | International Business Machines Corporation | Management of virtual machines to utilize shared resources |
US7299469B2 (en) * | 2003-04-30 | 2007-11-20 | International Business Machines Corporation | Hierarchical weighting of donor and recipient pools for optimal reallocation in logically partitioned computer systems |
-
2004
- 2004-12-07 US US11/006,124 patent/US20060123217A1/en not_active Abandoned
-
2005
- 2005-07-08 CN CNB2005100830681A patent/CN100367220C/zh not_active Expired - Fee Related
- 2005-12-02 JP JP2005349871A patent/JP2006164281A/ja active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6353844B1 (en) * | 1996-12-23 | 2002-03-05 | Silicon Graphics, Inc. | Guaranteeing completion times for batch jobs without static partitioning |
US6366945B1 (en) * | 1997-05-23 | 2002-04-02 | Ibm Corporation | Flexible dynamic partitioning of resources in a cluster computing environment |
US6606658B1 (en) * | 1997-10-17 | 2003-08-12 | Fujitsu Limited | Apparatus and method for server resource usage display by comparison of resource benchmarks to determine available performance |
JP2001344132A (ja) * | 2000-03-30 | 2001-12-14 | Fujitsu Ltd | リアルタイムモニタ装置 |
US20020129082A1 (en) * | 2001-03-08 | 2002-09-12 | International Business Machines Corporation | Inter-partition message passing method, system and program product for throughput measurement in a partitioned processing environment |
CN1523498A (zh) * | 2003-02-20 | 2004-08-25 | 国际商业机器公司 | 计算系统中分区之间的动态处理器再分配 |
Non-Patent Citations (1)
Title |
---|
基于多种资源的负载平衡算法的研究. 蒋江,张民选,廖湘科.电子学报,第30卷第8期. 2002 * |
Also Published As
Publication number | Publication date |
---|---|
US20060123217A1 (en) | 2006-06-08 |
CN1786919A (zh) | 2006-06-14 |
JP2006164281A (ja) | 2006-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100367220C (zh) | 用于在逻辑分区数据处理系统中管理资源的方法和设备 | |
US7480911B2 (en) | Method and apparatus for dynamically allocating and deallocating processors in a logical partitioned data processing system | |
CN101946235B (zh) | 用于在共享处理器分区环境中移动线程的方法及装置 | |
JP3944175B2 (ja) | コンピュータ・システムにおける区画間の動的プロセッサ再配分 | |
KR100998391B1 (ko) | 데이터 처리 시스템을 관리하는 규정 설정 방법, 컴퓨터 판독 가능한 저장 매체 및 시스템 | |
US6587938B1 (en) | Method, system and program products for managing central processing unit resources of a computing environment | |
EP1089173B1 (en) | Dynamic adjustment of the number of logical processors assigned to a logical partition | |
JP3978199B2 (ja) | リソースの利用およびアプリケーションの性能の監視システムおよび監視方法 | |
US7844709B2 (en) | Method and apparatus for managing central processing unit resources of a logically partitioned computing environment without shared memory access | |
US6651125B2 (en) | Processing channel subsystem pending I/O work queues based on priorities | |
US7194641B2 (en) | Method and apparatus for managing power and thermal alerts transparently to an operating system in a data processing system with increased granularity in reducing power usage and thermal generation | |
EP1769352B1 (en) | Method and apparatus for dynamic cpu resource management | |
US7523454B2 (en) | Apparatus and method for routing a transaction to a partitioned server | |
US7139940B2 (en) | Method and apparatus for reporting global errors on heterogeneous partitioned systems | |
US6519660B1 (en) | Method, system and program products for determining I/O configuration entropy | |
US8060610B1 (en) | Multiple server workload management using instant capacity processors | |
US20130238801A1 (en) | Method and System for Providing Dynamic Hosted Service Management Across Disparate Accounts/Sites | |
US20050262505A1 (en) | Method and apparatus for dynamic memory resource management | |
CN101004695A (zh) | 动态改善逻辑分区的存储器亲和性的装置和方法 | |
CA2415770A1 (en) | Method and system for providing dynamic hosted service management | |
CN112379971B (zh) | 应用容器管理方法、装置及设备 | |
EP2495666B1 (en) | Computer server able to support cpu virtualisation | |
US7568052B1 (en) | Method, system and program products for managing I/O configurations of a computing environment | |
US20030212883A1 (en) | Method and apparatus for dynamically managing input/output slots in a logical partitioned data processing system | |
US20100083034A1 (en) | Information processing apparatus and configuration control method |
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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080206 Termination date: 20100708 |