CN101410806A - 计算机系统的资源消耗的概算 - Google Patents
计算机系统的资源消耗的概算 Download PDFInfo
- Publication number
- CN101410806A CN101410806A CN200780010867.3A CN200780010867A CN101410806A CN 101410806 A CN101410806 A CN 101410806A CN 200780010867 A CN200780010867 A CN 200780010867A CN 101410806 A CN101410806 A CN 101410806A
- Authority
- CN
- China
- Prior art keywords
- computer
- group
- matrix
- resource
- index
- 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.)
- Pending
Links
- 239000011159 matrix material Substances 0.000 claims abstract description 112
- 238000000034 method Methods 0.000 claims abstract description 26
- 230000009467 reduction Effects 0.000 claims description 20
- 238000004364 calculation method Methods 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 6
- 230000002776 aggregation Effects 0.000 claims description 2
- 238000005054 agglomeration Methods 0.000 claims 1
- 238000005259 measurement Methods 0.000 abstract description 11
- 230000009466 transformation Effects 0.000 abstract description 4
- 238000012545 processing Methods 0.000 description 14
- 238000009833 condensation Methods 0.000 description 11
- 230000005494 condensation Effects 0.000 description 11
- 238000009826 distribution Methods 0.000 description 9
- 238000003860 storage Methods 0.000 description 8
- 238000002474 experimental method Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 239000000284 extract Substances 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 238000011084 recovery Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000033458 reproduction Effects 0.000 description 1
- 238000004513 sizing Methods 0.000 description 1
- 239000002699 waste material Substances 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/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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5019—Workload prediction
Abstract
在一种用于概算/估算计算机系统的计算机资源消耗的方法、系统和程序产品中,首先建立更有效的或缩减的计算机工作梯度矩阵(以下称为“矩阵”)。这通过以下方式实现,即,对于所述计算机系统的一组计算机资源指标创建负载测量,以分析在不同计算机资源指标之间的依赖性。然后,基于依赖性创建在所述一组计算机资源指标之间的关联矩阵。之后,将所述关联矩阵中的所述一组计算机资源指标聚集到一组集群中,并基于其建立缩减矩阵。一旦建立了缩减矩阵,可使用线性转换等将其恢复成“完整”矩阵。
Description
相关申请的交叉引用
本发明在某些方面涉及在2004年12月14日提交的题为“Method,System and Program Product for Approximating Resource Consumptionof a Computer System”的申请号为11/011,344的共同未决申请,通过引用将其合并于此。本申请在某些方面还涉及在2004年5月5日提交的题为“Method,System and Program Product for Approximating ComputerSystem Resource Consumption”的申请号为11/121,828的共同未决申请,通过引用将其合并于此。
技术领域
总的来说,本发明涉及计算机系统的资源消耗的概算/估算。
背景技术
资源利用/消耗是任意计算任务的一个重要特征。特别是在网格计算环境的情况。一般地,由于资源未充分利用,所以常常浪费大量的计算能力。目前,典型地基于最高需求来设计和规划计算环境的规模。然而,从统计上讲,对于IBM S/390(zSeries)机器来说实际的资源利用通常是60%的阶数,对于运行AIX操作系统(AIX是IBM公司在美国、其他国家或以上两个地区中的商标)的机器和具有Intel硬件(Intel、Intel标志、IntelInside、Intel Inside标志、Intel Centrino、Intel Centrino标志、Celeron、Intel Xeon、Intel SpeedStep、Itanium、和Pentium是Intel公司或其子公司在美国和其他国家的商标或注册商标)的机器不足10%。对大型服务器安装基础的任意组织来说,未利用计算能力的管理可提供直接的经济利益。
将网格架构定义为在个体、机构和资源的动态集合之间的灵活、安全、协调的资源共享。与传统分布式(企业)计算不同的是,其关注于大型资源共享、创新型应用,以及在一些情况下关注于高性能方向。将资源用于特定网格和/或使用在该网格中的资源的个体资源和机构的集合称为虚拟组织,并且表示基于计算和丰富数据环境中的多个规则之间的协作来计算和解决问题的新方法。为了在网格架构下增加资源,需要当前的资源利用信息。这是“网格资源管理器”的重要属性,所述网格资源管理器基于应用的资源需求在网格中分配资源。
对于计算资源的概算/估算的另一个需求是软件包的设置。具体地,在给定计算机上设置软件包或应用之前,用户需要知道将需要哪些资源(例如,存储器、CPU等)。另一个重要问题是需要多少时间和计算资源,以通过后台中运行的一些其他任务和服务在给定机器上运行给定任务。通常,为了找到对于这些问题的答案,用户求助于可包含资源需求列表的软件文档,有时候还求助于应用性能数据。问题是,这种文档数据仅对于一个特定硬件/软件配置是有效的,并且难以应用于任意其他配置。此外,通常在给定软件任务与其他任务和服务并行运行时的实验中获得性能数据。如果机器负载改变,则不存在估算性能数据将改变多少的简单途径。
考虑到上述问题,存在克服现有技术中的至少一个缺陷的需求。
发明内容
一般地,本发明提供一种用于概算/估算计算机系统的计算机资源消耗的方法、系统和程序产品。具体地,在本发明中,首先建立更有效的或缩减的计算机工作梯度矩阵(以下称为“矩阵”)。这通过以下方式实现,即,对于所述计算机系统的一组计算机资源指标创建负载测量,以分析在不同计算机资源指标之间的依赖性。然后,基于依赖性创建在所述一组计算机资源指标之间的关联矩阵。之后,将所述关联矩阵中的所述一组计算机资源指标聚集到一组集群中,并基于其建立缩减矩阵。一旦建立了缩减矩阵,可使用线性转换等将其恢复成“完整”矩阵。
在本发明中,还通过以特定后台负载等级对所述计算机系统施加具体任务并随时间测量计算机系统的资源消耗,来构建任务工作路径。一旦提供了任务工作路径,则可将它们与缩减计算机工作梯度矩阵或恢复计算机工作梯度矩阵结合,用以响应于在任意背景负载等级应用的任务概算计算机系统的资源消耗。
本发明的第一方面提供一种概算计算机系统的资源消耗的方法,包括:对于所述计算机系统的一组计算机资源指标创建负载测量,以分析在不同计算机资源指标之间的依赖性;创建在所述一组计算机资源指标之间的关联矩阵;将所述关联矩阵中的所述一组计算机资源指标聚集到一组集群中;和基于所述一组集群建立缩减计算机工作梯度矩阵。
本发明的第二方面提供一种概算计算机系统的资源消耗的系统,包括:系统,用于对于所述计算机系统的一组计算机资源指标创建负载测量,以分析在不同计算机资源指标之间的依赖性;系统,用于创建在所述一组计算机资源指标之间的关联矩阵;系统,用于将所述关联矩阵中的所述一组计算机资源指标聚集到一组集群中;和系统,基于所述一组集群建立缩减计算机工作梯度矩阵。
本发明的第三方面提供一种在计算机可用介质上存储的程序产品,用于概算计算机系统的资源消耗,所述计算机可用介质包括使得计算机系统执行以下步骤的程序代码,包括:对于所述计算机系统的一组计算机资源指标创建负载测量,以分析在不同计算机资源指标之间的依赖性;创建在所述一组计算机资源指标之间的关联矩阵;将所述关联矩阵中的所述一组计算机资源指标聚集到一组集群中;和基于所述一组集群建立缩减计算机工作梯度矩阵。
本发明的第四方面提供一种对概算计算机系统的资源消耗的应用进行配置的方法,包括:提供计算机架构,其能够运行以执行以下步骤:对于所述计算机系统的一组计算机资源指标创建负载测量,以分析在不同计算机资源指标之间的依赖性;创建在所述一组计算机资源指标之间的关联矩阵;将所述关联矩阵中的所述一组计算机资源指标聚集到一组集群中;和基于所述一组集群建立缩减计算机工作梯度矩阵。
本发明的第五方面提供在传播信号中实现的计算机软件,用于概算计算机系统的资源消耗,所述计算机软件包括使得计算机系统执行以下步骤的指令,包括:对于所述计算机系统的一组计算机资源指标创建负载测量,以分析在不同计算机资源指标之间的依赖性;创建在所述一组计算机资源指标之间的关联矩阵;将所述关联矩阵中的所述一组计算机资源指标聚集到一组集群中;和基于所述一组集群建立缩减计算机工作梯度矩阵。
附图说明
现在,仅通过实例并参照附图描述本发明的实施例,其中:
图1示出根据本发明实施例建立计算机工作梯度矩阵的系统。
图2示出根据本发明实施例建立计算机工作梯度矩阵的示意性流程图。
图3示出根据本发明实施例构建任务工作路径的系统。
图4示出根据本发明实施例的第一示意性任务工作路径。
图5示出根据本发明实施例的第二示意性任务工作路径。
图6示出使用计算机工作梯度矩阵和任务工作路径概算计算机资源消耗的示意性系统。
图7示出本发明实施例的更具体计算机化实现。
附图不必符合比例。附图仅是示意性表示,而不表示本发明的具体参数。附图仅用于描述本发明的典型实施例,因此不应该理解为对本发明的范围的限制。在附图中,类似的标号表示类似的元素。
具体实施方式
使用尤其是计算机工作梯度矩阵来概算计算机系统的资源消耗。如这里所述,基于应用于计算资源的各个指标(例如CPU利用率、存储器消耗等)的聚类处理建立计算机工作梯度矩阵。聚类处理考虑到基于实验结果而计算的作为指标之间的关联的不同指标之间的依赖性。该处理通过使用一个最有信息性的指标代替所有高依赖性/关联性指标,以及使用简单的线性逼近在相同集群中计算其他指标的方式大大减少在计算机工作梯度矩阵计算中需要包括的指标的数目。这样,在不影响资源消耗的最终估算的质量的情况下,大大减少用于计算机工作梯度矩阵计算的所需时间和资源的量。
该方法根据所需的指标将用以建立计算机工作梯度矩阵以及用以概算资源消耗两者所需的时间和资源减少至少2至10倍。例如,假设10%的负载等级的预定增量,意味着每个指标/尺度执行10个实验。在先前实施例情况下所需实验的总数是10^10=10,000,000,000。然而,还假设可将10个指标中的6个聚集成一个集群,并且将其他4个指标中的2个聚类成一个集群。在本发明的优选实施例中,使用仅一个最有信息性的指标代替在一个集群中的所有指标。在这种情况下,非关联的指标的总数是4=10-5-1,并且相比于现有技术中所需的10,000,000,000次实验将所需的实验次数减少到4^10(1,048,576)。
现在,共同参照图1和2,将更详细描述根据本发明典型实施例的建立缩减计算机工作梯度矩阵24的处理。在步骤S1,测量选择器14将选择用于计算机系统12的要测量的一组(例如,一个或多个)计算机资源指标。与上文结合的专利申请相比,这组计算机资源指标代表要测量的更小、更易处理(例如罕见的)的一组点。然后,在步骤S2,负载/关联发生器16将对于这组计算机资源指标施加(后台)负载,并且提取所得到的测量结果。从而确定在不同计算资源指标之间的依赖性。基于所述依赖性,负载/关联发生器16将创建在计算机资源指标之间的关联矩阵17。
在步骤S3,阈值选择器/选取器18将选取关联阈值,以将关联矩阵17转换成0和1的矩阵,从而将低密度负载测量结果中包含的大部分信息包括在所转换的关联矩阵中。典型的方法可以找到用于各个数据集的关联阈值的合理值,并且基于提供特别统一的系数,以可用作用于关联阈值选择的标准。
阈值的选择基于关于不确定性测量的信息理论标准的使用。在这种情况下,将关联阈值的建立看作“初始”统计分布P(c)dc(其中c=|m(i,j)|是关联矩阵m(i,j)的绝对值,并且0<=c<=1)到“阈值限制的”(或循环的)两个状态分布T(c)dc(其中T(1)=P1,T(0)=1-P1,以及对于c的所有其他值T=0)的转换。
将计算的熵值H用作对于这种代替的标准
H=Sum[-P(c)*Log(P(c))]
然后,按以下的比将其规格化成对于统一分布的对应熵值(其中N是点的总数,其中提取P(c)的值)
H1=Sum[-(1.0/N)*Log(1.0/N)]=Log(N)
所述比为
R=(H/H1);0<=R<=1。
然后,使用单独对于“初始”和“阈值限制的”分布两者计算的“规格化的”熵R值。在围绕0或1作为“初始”分布时,这个条件确保了“阈值限制的”分布具有精确相同的不确定性(“规格化”成相同的分布值)。这允许对于“初始”分布R的总熵的值进行计算,以及按照用于“阈值限制的”分布的熵的分析表达式对其进行匹配。
所以,通过数字解开等式:
-X*Log(x)-(1.0-X)*Log(1.0-X)=R
并且选择对于X的两个根的较小一个作为P1值,从而可进一步建立用以找到实际关联阈值的等式。
为此,按照在阈值点:
C(c)=1.0-P1,其中C(c)=可能性(0<=x=<c)=Sum(对于0<=x<=c)P(x)
提取的,对于“初始”分布的累积分布C(c)的值对(1.0-P1)的获得值进行匹配。
获得关联阈值的值,从而通过数字找到该等式的(最大)根。
一旦选择阈值,在步骤S4,聚集系统20将关联矩阵17中的该组计算机资源指标聚集到一组集群中。具体地,聚集系统20将找到用于特定阈值的转换相关指标17的连通分量,好像矩阵代表马尔可夫(Markov)链,并且每个指标代表在该链中的状态。然后,聚集系统20将所有的连通分量放入一个集群中。
在典型实施例中,聚集系统20可以如下方式采用马尔可夫聚集技术:
(a)马尔可夫聚集的每个步骤包括2个操作的重复:
(1)计算矩阵的平方(M*M);和
(2)用值1代替在所得到的矩阵中超过阈值的所有非0值。
证明该方法以对数时间会合。在重复的对数之后,反复的矩阵停止改变。
接下来,执行以下步骤:
(b)找到所有的连通分量(指标)。所有的连通分量将包括在相同的集群中。
以下示出基于不同阈值的不同聚集结果的实例。
总指标:33
1.阈值:0.95
集群:14
集群大小:1,1,1,1,3,1,1,2,1,3,1,3,1,13
平均集群大小:2.35
平均集群大小(比):7.1%
集群化=42.5%
减少=57.5%
2.阈值:0.9
集群:10
集群大小:1,1,2,3,1,1,3,3,2,16
平均集群大小:3.3
平均集群大小(比):10%
集群化=30.3%
减少=69.7%
3.阈值:0.85
集群:7
集群大小:1,3,3,1,1,3,21
平均集群大小:4.71
平均集群大小(比):14.3%
集群化=21.2%
减少=78.8%
4.阈值:0.8
集群:5
集群大小:1,3,3,1,25
平均集群大小:6.6
平均集群大小(比):20%
集群化=15.2%
减少=84.8%
5.阈值:0.75(示出稳定效果)
集群:5
集群大小:1,3,3,1,25
平均集群大小:6.6
平均集群大小(比):20%
集群化=15.2%
减少=84.8%
一旦开发出所述一组集群,则缩减矩阵发生器22可识别出在每个集群中的最有信息性的指标。为了实现该处理,典型地将具有与集群的其他成员关联的最大总和的指标识别为最有信息性的指标。基于每个集群的最有信息性矩阵,然后在步骤S5,缩减矩阵发生器22将建立缩减计算机工作梯度矩阵24。在该步骤,可采用在以上结合的专利申请中描述的方法,以建立仅用于在集群中选择的指标的缩减计算机工作梯度矩阵24。以下示出该方法的细节。
(1)后台负载发生器使用对于所选指标的负载等级的预定增量(例如5%、10%、...、100%)生成计算机系统12的不同负载。在所示的实施例中,对于2个测量坐标,所有可能的负载将是按相对单位(例如,CPU循环的%和主存储器的%)测量的对{(0.0,0.0),(0.0,0.05),(0.0,0.1),...,(0.05,0.0),(0.05,0.05),..(1.0,1.0)}。
(2)对于每个负载等级,基本工作增量的发生器生成对于相同预定大小的资源的附加永久请求(例如,在最小负载下在1秒中生成CPU利用率5%的CPU周期数目的请求,和对于存储器5%的另一个请求)。
(3)对于负载创建,负载/资源消耗监控器控制计算机系统12的后台负载等级。
(4)在生成增量请求之后,缩减矩阵生成器22从负载/资源消耗监控器获得测量的结果,以示出计算机系统12能够多快地提供请求资源。然后,创建缩减计算机工作梯度矩阵24的元素作为适当测量的分数/比(例如,在最小负载情况下在1秒中生成CPU利用率5%的周期数目与其需要的时间的比)。在一些情况下,当计算机系统12已经在例如CPU利用率97%的情况下运行时,不能够提供适当的资源,在这种情况下,将需要履行请求的时间设置为无限大,并且缩减计算机工作梯度矩阵24的适当元素将是0。
应该理解,可以在缩减矩阵发生器22中或作为单独的系统(未示出)实现用于建立缩减计算机工作梯度矩阵24的上述系统(例如,后台加载的发生器、基本工作增量的发生器等)。不管怎样,在可选的步骤S6中,可通过矩阵恢复器26将缩减计算机工作梯度矩阵24恢复到完整或恢复计算机工作梯度矩阵27。具体地,矩阵恢复器26可根据缩减计算机工作梯度矩阵24的线性转换需求概算计算机工作梯度矩阵分量,以得到恢复/完整计算机工作梯度矩阵(以下矩阵27)。
现在,参照图3,其详细示出用于构成一组(例如一个或多个)任务工作路径36的示意性系统30。典型地,任务工作路径36表征响应于以特定/固定后台负载等级(作为时间的函数)对计算机系统12应用的计算任务的资源消耗等级。如图3所示,给定计算任务32开始/应用于计算机系统12。负载/资源消耗监控器33测量当前初始后台负载等级,以及在任务32的执行期间负载/资源消耗中的所有变化。任务工作路径构造器34在小预定时间间隔处理这些测量结果,并且构造对于给定初始后台负载等级的任务工作路径36。
以下进一步示出该处理:
(1)应该测量的任务32在计算机系统12上运行。
(2)负载/资源消耗监控器33测量在初始负载的计算机系统12的资源消耗。
(3)负载/资源消耗监控器33以预定增量(例如5秒)的时间创建计算机系统12的资源消耗快照(snapshot)。
(4)任务工作路径构造器34使用计算机系统12的资源快照,以生成任务工作路径36作为在测量的空间中的临时路径。
参照图4和5,其示出示意性任务工作路径36A-B。具体地,图4描述响应于以后台负载(Lo)的固定等级对计算机系统12(图3)应用的任务32随时间的CPU利用率的任务路径36A。图5描述响应于相同任务32(图3)随时间的存储器利用率的任务路径36B。
一旦如上所述提供任务工作路径36,则它们可用于概算对于在任意后台负载等级的任务的计算机系统12的资源消耗。现在,参照图6,其示出用于进行这种概算的系统40。具体地,在系统40的情况下,负载/资源消耗监控器33测量当前后台负载等级,将测量结果传送给任务资源消耗概算器42。然后,任务资源消耗概算器42通过沿着相对于初始计算机后台负载等级的任务工作路径36对于在建立初始任务工作路径36时测量的适当元素采用缩减矩阵24(图1)或恢复矩阵27来确定任务资源消耗44的预估。
以下进一步示出该处理:
(1)负载/资源消耗监控器33向计算机系统12提供运行/应用任务的当前后台负载的等级。
(2)任务资源消耗概算器42加载以下信息:将用于运行任务的计算机系统12的当前后台负载、对于要运行的任务的任务工作路径、对于要运行的任务的计算机系统12的矩阵24或矩阵27。
(3)任务资源消耗概算器42基于当前系统后台负载、矩阵24或矩阵27和任务工作路径36使用一个概算方法,以计算对于任务的适当资源消耗。
(4)作为这种概算的示意性实例,任务资源消耗概算器42可执行以下操作:
(A)将任务工作路径36切成基础部分,从而每个基础部分包含在用于矩阵24或矩阵27的1负载等级(坐标)中。
(B)通过来自矩阵24或矩阵27的关联系数规划任务工作路径36的每个基础部分。
(C)将结果组合到新概算任务工作路径(未示出)中-该新任务工作路径将示出对于给定系统负载的资源/时间消耗。
(5)存储得到的概算资源/时间消耗44。
因此,通过首先开发的矩阵24或矩阵27和任务工作路径36,可以在本发明的情况下概算在任意后台负载等级下对于任意任务的资源消耗。
现在,参照图7,其示出本发明的更具体计算机化的实现100。如图所示,提供概算计算机系统102,其用以表示能够执行本发明的教导的任意类型计算机系统。例如,概算计算机系统102可以是桌上型计算机、膝上型计算机、工作站、手持设备、客户端、服务器等。由此,概算计算机系统102可以在网格计算环境或网络(例如,互联网,局域网(LAN)、广域网(WAN)、虚拟专用网络(VPN)等)上与计算机系统12通信。在网络中的通信可经由直接硬接线的连接(例如,串口)、或经由可利用有线线路和/或无线传输方法的任意组合的可寻址连接实现。可使用例如令牌环、以太网、WiFi或其他传统通信标准的传统网络连接。此外,可通过传统的基于IP协议提供连接。在这种情况下,可使用互联网服务提供商建立互连。
还如图所示,概算计算机系统102一般地包括:处理单元104、存储器106、总线108、输入/输出(I/O)接口110、外部设备/资源112和存储单元114。处理单元104可包括单处理单元,或者可分布在一个或多个位置上(例如在客户端和服务器上)的一个或多个处理单元中。存储器106可包括任意已知类型的数据存储装置和/或传输介质,包括磁介质、光学介质、随机存取存储器(RAM)、只读存储器(ROM)、数据高速缓存、数据对象等。此外,与处理单元104类似,存储器106也可驻留在单物理位置(包括一个或多个类型的数据存储装置),或者以各种形式分布在多个物理系统之间。
I/O接口110可包括向/从外部源交换信息的任意系统。外部设备/资源112可包括任意已知类型的外部设备,包括扬声器、CRT、LED屏、手持设备、键盘、鼠标、语音识别系统、语音输出系统、打印机、监控器/显示器、传真、寻呼机等。总线108提供在概算计算机系统102中每个组件之间的通信链路,并且类似地可包括任意类型的传输链路,包括电、光学、无线链路等。
在本发明中,存储单元114可以是能够提供信息(例如,关联矩阵、缩减矩阵、恢复矩阵、任务工作路径、概算等)的存储的任意类型系统(例如数据库)。例如,存储单元114可包括一个或多个存储设备,例如磁盘驱动器或光盘驱动器。在另一个实施例中,存储单元114包括在例如局域网(LAN)、广域网(WAN)或存储区域网络(SAN)(未示出)之间分布的数据。尽管没有示出,也可以将附加组件(例如,高速缓存、通信系统、系统软件等)集成到概算计算机系统102中。此外,尽管没有示出,计算机系统12也可能包括与概算计算机系统102类似的计算机化的元件。
在概算计算机系统102的存储器106中示出概算系统120。如图所示,概算系统120包括上述本发明的组件,即测量选择器14、负载/关联发生器16、阈值选择器18、聚集系统20、缩减矩阵发生器22、矩阵恢复器26、负载资源消耗监控器33、任务工作路径构建器34和任务资源消耗概算器42。一般地,这些组件执行上述功能。具体地,测量选择器14将选择(或通过管理员使用)以选择计算机系统12的一组计算机资源指标。负载/关联发生器16将对于该组计算机资源指标应用(后台)负载,并提取所得到的测量结果。从而在不同计算资源指标之间存在依赖性。基于依赖性,负载/关联发生器16将创建在计算机资源指标之间的关联矩阵。然后,阈值选择器18将选择(或用以选择)关联阈值,以将关联矩阵17转换成0和1的矩阵,从而将低密度负载测量结果中包含的大部分信息包括在所转换的关联矩阵中。基于该阈值,聚集系统20将该组指标聚集成集群组,然后通过缩减矩阵发生器使用其建立缩减计算机工作梯度矩阵(即,使用在每个集群中最有信息性的矩阵)。如上所述,然后,矩阵恢复器使用线性转换或类似技术选择地恢复缩减矩阵。
不管如何,负载/资源消耗监控器33测量作为初始负载的计算机系统12的资源消耗,然后随着预定增加(例如5秒)的时间创建计算机系统12的资源消耗快照。之后,任务工作路径构造器34使用计算机系统12的资源快照来产生任务工作路径,作为在测量空间中的临时路径。一旦提供任务工作路径和(缩减或恢复)矩阵,则可通过任务资源消耗概算器42使用它们来概算计算机系统12的资源消耗。
尽管这里示出和描述了用于概算目标计算机系统的资源消耗的方法和系统,但是可以理解本发明还包括各种可选实施例。例如,在一个实施例中,本发明提供包括计算机程序代码的计算机可读介质,其中所述计算机程序代码能够使得计算机架构概算目标计算机系统的资源消耗。由此,计算机可读介质包括用以实现本发明的各个处理步骤中的每一个步骤的程序代码。可以理解,术语“计算机可读介质”包括程序代码的任意类型的物理实施例中的一个或多个。具体地,计算机可读介质可包括在产品(例如,压缩盘、磁盘、磁带等)的一个或多个便携式存储物品上、在计算设备的一个或多个数据存储部分上,例如存储器106(图7)上和/或存储系统114(图7)上(例如,固定盘、只读存储器、随机存取存储器、高速缓存等),和/或作为在网络之间(例如,在程序代码的有线/无线电子分布期间)传送的数据信号(例如,传播信号)所实现的程序代码。
在另一个实施例中,本发明提供基于定制、宣传和/或付费的本发明处理步骤的商业方法。即,服务提供商可主动概算上述目标计算机系统的资源消耗。在这种情况下,服务提供商可创建、保持、支持对于一个或多个客户执行本发明的处理步骤的计算机架构。作为回报,服务提供商可通过定制和/或付费协议从客户接收付款,和/或服务提供商可从销售给一个或多个第三方的广告内容接收付款。
在另一个实施例中,本发明提供一种概算目标计算机系统的资源消耗的方法。在这种情况下,可提供计算机架构,并且可获得(例如,创建、购买、使用、修改等)以及对于计算机架构配置用以执行本发明的处理步骤的一个或多个系统。由此,系统的配置可包括以下步骤中的一个或多个(1)从计算机可读介质在计算设备(例如一个或多个计算机系统12(图1))上安装程序代码;(2)向计算机架构添加一个或多个计算设备;和(3)结合和/或修改计算机架构的一个或多个现有系统,以使得计算机架构能够执行本发明的处理步骤。
如上所述,可以理解,术语“程序代码”和“计算机程序代码”是同义词,并且在语言上表示指令集的代码或表示的任意表达,所述指令集用以使得具有信息处理能力的计算设备直接地或在以下中的一个或两个处理之后执行特定功能,包括:(a)转换到另一个语言、代码或表示;和/或(b)以不同素材形式再现。由此,程序代码可具体化为以下内容中的一个或多个,包括:应用/软件程序、组件软件/函数库、操作系统、用于特定计算和/或I/O设备的基础I/O系统/驱动器等。
为了图示和说明的目的已经提出了本发明的各个方面的以上说明。其并没有对本发明详尽或将本发明限制在所公开的精确形式,显然,可进行许多修改和改变。对于本领域普通技术人员明显的这种修改和改变旨在包括在由所附权利要求所定义的本发明的范围内。
Claims (14)
1.一种概算计算机系统的资源消耗的方法,包括以下步骤:
对于所述计算机系统的一组计算机资源指标创建负载测量,以分析在不同计算机资源指标之间的依赖性;
创建在所述一组计算机资源指标之间的关联矩阵;
将所述关联矩阵中的所述一组计算机资源指标聚集到一组集群中;和
基于所述一组集群建立缩减计算机工作梯度矩阵。
2.如权利要求1所述的方法,还包括以下步骤:
构建一组任务工作路径,所述任务工作路径表征响应于以特定后台负载等级对所述计算机系统施加的计算任务的一组资源消耗等级;和
使用所述缩减计算机工作梯度矩阵和所述一组任务工作路径来概算在任意后台负载等级对于所述计算任务的一组资源消耗等级。
3.如权利要求1所述的方法,还包括以下步骤:
将所述缩减计算机工作梯度矩阵恢复到完整计算机工作梯度矩阵;和
使用所恢复的计算机工作梯度矩阵和一组任务工作路径概算在任意后台负载等级对所述计算任务的一组资源消耗等级。
4.如权利要求1所述的方法,其中所述聚集步骤是Markov聚集。
5.如权利要求1所述的方法,其中所述建立步骤包括:
在所述一组集群中识别一组最有信息性指标;和
基于所述一组最有信息性指标建立所述缩减计算机工作梯度矩阵。
6.如权利要求1所述的方法,还包括:选择用于所述缩减计算机工作梯度矩阵的阈值,其中所述阈值基于不确定性测量。
7.一种概算计算机系统的资源消耗的系统,包括:
系统,用于对于所述计算机系统的一组计算机资源指标创建负载测量,以分析在不同计算机资源指标之间的依赖性;
系统,用于创建在所述一组计算机资源指标之间的关联矩阵;
系统,用于将所述关联矩阵中的所述一组计算机资源指标聚集到一组集群中;和
系统,基于所述一组集群建立缩减计算机工作梯度矩阵。
8.如权利要求7所述的系统,还包括:
系统,用于构建一组任务工作路径,所述任务工作路径表征响应于以特定后台负载等级对所述计算机系统施加的计算任务的一组资源消耗等级;和
系统,用于使用所述缩减计算机工作梯度矩阵和所述一组任务工作路径来概算在任意后台负载等级对于所述计算任务的一组资源消耗等级。
9.如权利要求7所述的系统,还包括:系统,用于将所述缩减计算机工作梯度矩阵恢复到完整计算机工作梯度矩阵的系统。
10.如权利要求7所述的系统,其中所述聚集处理是Markov聚集。
11.如权利要求7所述的系统,其中用于建立的系统在所述一组集群中识别一组最有信息性指标;和基于所述一组最有信息性指标建立所述缩减计算机工作梯度矩阵。
12.如权利要求7所述的系统,还包括:系统,用于选择所述缩减计算机工作梯度矩阵的阈值,其中所述阈值基于不确定性测量。
13.一种在计算机可用介质上存储的程序产品,用于概算计算机系统的资源消耗,所述计算机可用介质包括使得计算机系统执行方法权利要求1至6中任意的步骤的程序代码。
14.一种对概算计算机系统的资源消耗的应用进行配置的方法,包括:
提供计算机架构,其能够运行以执行权利要求1至6中任意的步骤。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/390,527 | 2006-03-27 | ||
US11/390,527 US7844441B2 (en) | 2006-03-27 | 2006-03-27 | Computer-implemented method, system and program product for approximating resource consumption of computer system |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101410806A true CN101410806A (zh) | 2009-04-15 |
Family
ID=38208503
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200780010867.3A Pending CN101410806A (zh) | 2006-03-27 | 2007-03-19 | 计算机系统的资源消耗的概算 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7844441B2 (zh) |
EP (1) | EP2005299A1 (zh) |
JP (1) | JP5296669B2 (zh) |
CN (1) | CN101410806A (zh) |
WO (1) | WO2007110345A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102576311A (zh) * | 2009-10-21 | 2012-07-11 | 国际商业机器公司 | 用于通过优化性能模型提高软件执行时间的方法和系统 |
CN108241864A (zh) * | 2016-12-26 | 2018-07-03 | 摩根士丹利服务集团有限公司 | 基于多变量分组的服务器性能预测方法 |
CN112136114A (zh) * | 2018-05-22 | 2020-12-25 | 微软技术许可有限责任公司 | 调谐资源设置等级用于查询执行 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7849180B2 (en) * | 2008-04-29 | 2010-12-07 | Network Appliance, Inc. | Load balanced storage provisioning |
CN102782710B (zh) | 2009-10-07 | 2016-08-24 | 鲁库斯无线公司 | 包括自调整流量执行功能的计算机网络服务提供系统 |
US8230061B2 (en) | 2010-03-17 | 2012-07-24 | Microsoft Corporation | Network resource management with prediction |
US9574432B2 (en) | 2010-12-13 | 2017-02-21 | Schlumberger Technology Corporation | Optimized drilling |
US9043184B1 (en) * | 2011-10-12 | 2015-05-26 | Netapp, Inc. | System and method for identifying underutilized storage capacity |
US9531607B1 (en) | 2012-06-20 | 2016-12-27 | Amazon Technologies, Inc. | Resource manager |
Family Cites Families (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3702006A (en) * | 1971-06-09 | 1972-10-31 | Ibm | Method for balancing the utilization of input/output devices |
US4056846A (en) * | 1976-06-30 | 1977-11-01 | Ibm Corporation | Data processing system with apparatus for sharing channel background processing |
US5838968A (en) * | 1996-03-01 | 1998-11-17 | Chromatic Research, Inc. | System and method for dynamic resource management across tasks in real-time operating systems |
US5862337A (en) * | 1996-07-12 | 1999-01-19 | Microsoft Corporation | Determining throughput dynamically |
CA2278709A1 (en) * | 1997-01-27 | 1998-08-13 | Benjamin Slotznick | System for delivering and displaying primary and secondary information |
FR2766592B1 (fr) * | 1997-07-23 | 1999-08-27 | Bull Sa | Dispositif et procede de regulation dynamique de l'attribution des ressources sur un systeme informatique |
US6189022B1 (en) * | 1997-08-20 | 2001-02-13 | Honeywell International Inc. | Slack scheduling for improved response times of period transformed processes |
US6247173B1 (en) * | 1997-09-24 | 2001-06-12 | Hewlett-Packard Company | Computer compiler optimizer for reducing computer resource consumption during dependence analysis after loop unrolling |
US6112257A (en) * | 1997-09-24 | 2000-08-29 | Emc Corporation | Dynamic adjustment of mirror service policy for logical volumes in a disk drive system based on collected statistics |
US6487578B2 (en) * | 1997-09-29 | 2002-11-26 | Intel Corporation | Dynamic feedback costing to enable adaptive control of resource utilization |
US6061761A (en) * | 1997-10-06 | 2000-05-09 | Emc Corporation | Method for exchanging logical volumes in a disk array storage device in response to statistical analyses and preliminary testing |
US6405282B1 (en) * | 1997-10-06 | 2002-06-11 | Emc Corporation | Method for analyzine disk seek times in a disk array storage device |
US6341333B1 (en) * | 1997-10-06 | 2002-01-22 | Emc Corporation | Method for transparent exchange of logical volumes in a disk array storage device |
US6711649B1 (en) * | 1997-10-06 | 2004-03-23 | Emc Corporation | Load balancing on disk array storage device |
US6442650B1 (en) * | 1997-10-06 | 2002-08-27 | Emc Corporation | Maximizing sequential output in a disk array storage device |
US6223205B1 (en) * | 1997-10-20 | 2001-04-24 | Mor Harchol-Balter | Method and apparatus for assigning tasks in a distributed server system |
US6601084B1 (en) * | 1997-12-19 | 2003-07-29 | Avaya Technology Corp. | Dynamic load balancer for multiple network servers |
US6086618A (en) * | 1998-01-26 | 2000-07-11 | Microsoft Corporation | Method and computer program product for estimating total resource usage requirements of a server application in a hypothetical user configuration |
US6301603B1 (en) * | 1998-02-17 | 2001-10-09 | Euphonics Incorporated | Scalable audio processing on a heterogeneous processor array |
US6574587B2 (en) * | 1998-02-27 | 2003-06-03 | Mci Communications Corporation | System and method for extracting and forecasting computing resource data such as CPU consumption using autoregressive methodology |
AUPP308298A0 (en) * | 1998-04-20 | 1998-05-14 | Ericsson Australia Pty Ltd | Access control method and apparatus |
US6714536B1 (en) * | 1998-07-21 | 2004-03-30 | Eric M. Dowling | Method and apparatus for cosocket telephony |
US6415027B1 (en) * | 1998-08-12 | 2002-07-02 | Bellsouth Intellectual Property Corporation | Networks, systems and methods for intelligently routing traffic within a telephone network |
US7526767B1 (en) * | 1998-08-28 | 2009-04-28 | Oracle International Corporation | Methods for automatic group switching according to a resource plan |
US6338089B1 (en) * | 1998-10-06 | 2002-01-08 | Bull Hn Information Systems Inc. | Method and system for providing session pools for high performance web browser and server communications |
US6606661B1 (en) * | 1998-12-23 | 2003-08-12 | At&T Corp. | Method for dynamic connection closing time selection |
US6618742B1 (en) * | 2000-01-10 | 2003-09-09 | Imagex.Com, Inc. | Method for job impact learning |
US6330719B1 (en) * | 1999-06-30 | 2001-12-11 | Webtv Networks, Inc. | Interactive television receiver unit browser that waits to send requests |
US6859834B1 (en) * | 1999-08-13 | 2005-02-22 | Sun Microsystems, Inc. | System and method for enabling application server request failover |
US6389028B1 (en) * | 1999-09-24 | 2002-05-14 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for providing estimated response-wait-time displays for data network-based inquiries to a communication center |
US6584097B1 (en) * | 1999-09-30 | 2003-06-24 | Bellsouth Intellectual Property Corporation | System and method for internet reservation service |
US6801906B1 (en) * | 2000-01-11 | 2004-10-05 | International Business Machines Corporation | Method and apparatus for finding information on the internet |
US6766419B1 (en) * | 2000-03-31 | 2004-07-20 | Intel Corporation | Optimization of cache evictions through software hints |
JP3768375B2 (ja) * | 2000-04-04 | 2006-04-19 | Necエレクトロニクス株式会社 | 計算装置および電子回路シミュレーション装置 |
US6862623B1 (en) * | 2000-04-14 | 2005-03-01 | Microsoft Corporation | Capacity planning for server resources |
JP3666365B2 (ja) * | 2000-06-15 | 2005-06-29 | 日本電気株式会社 | オンライン時間帯予約システムおよびオンライン時間帯予約方法 |
US6990525B1 (en) * | 2000-09-26 | 2006-01-24 | Nokia Corporation | System for selecting data communications service |
US20020083342A1 (en) * | 2000-12-21 | 2002-06-27 | Webb Brian T. | Systems, methods and computer program products for accessing devices on private networks via clients on a public network |
US7386850B2 (en) * | 2001-06-01 | 2008-06-10 | Avaya Technology Corp. | Arrangement for scheduling tasks based on probability of availability of resources at a future point in time |
US7296056B2 (en) * | 2001-07-30 | 2007-11-13 | International Business Machines Corporation | Method, system, and program for selecting one user to assign a work item in a workflow |
US20030149717A1 (en) * | 2002-02-05 | 2003-08-07 | William Heinzman | Batch processing job streams using and/or precedence logic |
WO2003094024A1 (en) * | 2002-03-14 | 2003-11-13 | Unisys Corporation | System, and method for resource usage estimation |
US7350186B2 (en) * | 2003-03-10 | 2008-03-25 | International Business Machines Corporation | Methods and apparatus for managing computing deployment in presence of variable workload |
US7441244B2 (en) * | 2003-12-10 | 2008-10-21 | International Business Machines Corporation | Workload scheduler with cumulative weighting indexes |
US7406691B2 (en) * | 2004-01-13 | 2008-07-29 | International Business Machines Corporation | Minimizing complex decisions to allocate additional resources to a job submitted to a grid environment |
JP4756675B2 (ja) * | 2004-07-08 | 2011-08-24 | インターナショナル・ビジネス・マシーンズ・コーポレーション | コンピュータ資源のキャパシティを予測するためのシステム、方法およびプログラム |
US7836451B2 (en) * | 2004-12-14 | 2010-11-16 | International Business Machines Corporation | Method, system and program product for approximating resource consumption of a computer system |
US7831976B2 (en) * | 2005-05-04 | 2010-11-09 | International Business Machines Corporation | Method, system and program product for predicting computer system resource consumption |
US7716151B2 (en) * | 2006-02-13 | 2010-05-11 | Infosys Technologies, Ltd. | Apparatus, method and product for optimizing software system workload performance scenarios using multiple criteria decision making |
US7996204B2 (en) * | 2007-04-23 | 2011-08-09 | Microsoft Corporation | Simulation using resource models |
-
2006
- 2006-03-27 US US11/390,527 patent/US7844441B2/en not_active Expired - Fee Related
-
2007
- 2007-03-19 WO PCT/EP2007/052588 patent/WO2007110345A1/en active Application Filing
- 2007-03-19 JP JP2009502019A patent/JP5296669B2/ja not_active Expired - Fee Related
- 2007-03-19 CN CN200780010867.3A patent/CN101410806A/zh active Pending
- 2007-03-19 EP EP07727065A patent/EP2005299A1/en not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102576311A (zh) * | 2009-10-21 | 2012-07-11 | 国际商业机器公司 | 用于通过优化性能模型提高软件执行时间的方法和系统 |
CN102576311B (zh) * | 2009-10-21 | 2015-10-14 | 国际商业机器公司 | 用于通过优化性能模型提高软件执行时间的方法和系统 |
CN108241864A (zh) * | 2016-12-26 | 2018-07-03 | 摩根士丹利服务集团有限公司 | 基于多变量分组的服务器性能预测方法 |
CN112136114A (zh) * | 2018-05-22 | 2020-12-25 | 微软技术许可有限责任公司 | 调谐资源设置等级用于查询执行 |
Also Published As
Publication number | Publication date |
---|---|
US7844441B2 (en) | 2010-11-30 |
WO2007110345A1 (en) | 2007-10-04 |
US20070226348A1 (en) | 2007-09-27 |
EP2005299A1 (en) | 2008-12-24 |
JP2009531758A (ja) | 2009-09-03 |
JP5296669B2 (ja) | 2013-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101410806A (zh) | 计算机系统的资源消耗的概算 | |
CN102770826B (zh) | 虚拟机功耗测量和管理 | |
Li et al. | The method and tool of cost analysis for cloud computing | |
US9219663B1 (en) | Managing the performance of an electronic device | |
US7110913B2 (en) | Apparatus and method for managing the performance of an electronic device | |
US20180060395A1 (en) | Selecting interruptible resources for query execution | |
US8606894B1 (en) | Server consolidation | |
US8639561B2 (en) | Determining an option for decommissioning or consolidating software | |
US20120233328A1 (en) | Accurately predicting capacity requirements for information technology resources in physical, virtual and hybrid cloud environments | |
Qi et al. | Using the internet of things E-government platform to optimize the administrative management mode | |
US20120173301A1 (en) | System and method for failure association analysis | |
CN1955932A (zh) | 用于在分布式计算系统中的性能和策略分析的方法和装置 | |
US20210328942A1 (en) | Enhanced selection of cloud architecture profiles | |
Mytton | Assessing the suitability of the Greenhouse Gas Protocol for calculation of emissions from public cloud computing workloads | |
CN112668880A (zh) | 配网网格的工单调度方法、装置、计算机设备和存储介质 | |
Cheng et al. | Multi-view models for cost constitution of cloud service in cloud manufacturing system | |
Xue et al. | Fill-in the gaps: Spatial-temporal models for missing data | |
Sîrbu et al. | A data‐driven approach to modeling power consumption for a hybrid supercomputer | |
EP3826233B1 (en) | Enhanced selection of cloud architecture profiles | |
Schorr et al. | Measuring Information Technology Service Levels: A Literature Review | |
Subramaniam et al. | Enabling efficient power provisioning for enterprise applications | |
CN113902543A (zh) | 资源配额调整方法、装置及电子设备 | |
Raturi et al. | Green software engineering environments | |
US20200136927A1 (en) | Enterprise cloud usage and alerting system | |
Wu et al. | Software monitoring in data centers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20090415 |