CN105074651A - 共享资源争用 - Google Patents
共享资源争用 Download PDFInfo
- Publication number
- CN105074651A CN105074651A CN201380070722.8A CN201380070722A CN105074651A CN 105074651 A CN105074651 A CN 105074651A CN 201380070722 A CN201380070722 A CN 201380070722A CN 105074651 A CN105074651 A CN 105074651A
- Authority
- CN
- China
- Prior art keywords
- contention
- district
- shared resource
- value
- detector
- 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
- 238000005259 measurement Methods 0.000 claims abstract description 16
- 238000000034 method Methods 0.000 claims description 17
- 230000004044 response Effects 0.000 claims description 14
- 230000007423 decrease Effects 0.000 claims description 11
- 238000004088 simulation Methods 0.000 claims description 2
- 238000013508 migration Methods 0.000 claims 1
- 230000005012 migration Effects 0.000 claims 1
- 239000000523 sample Substances 0.000 abstract description 2
- 230000008859 change Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 230000010387 memory retrieval Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/12—Network monitoring probes
-
- 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
- G06F9/5088—Techniques for rebalancing the load in a distributed system involving task migration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/301—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is a virtual computing platform, e.g. logically partitioned systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3089—Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
- G06F11/3093—Configuration details thereof, e.g. installation, enabling, spatial arrangement of the probes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3428—Benchmarking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3433—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
-
- 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/44—Arrangements for executing specific programs
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/78—Architectures of resource allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/83—Admission control; Resource allocation based on usage prediction
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45591—Monitoring or debugging support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/815—Virtual
-
- 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/508—Monitor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Environmental & Geological Engineering (AREA)
- Debugging And Monitoring (AREA)
Abstract
可以基于来自在共享资源环境中运行的探测器的测量值确定对共享资源环境中的共享资源的争用。可以将测量值与基准相比较,并且可以基于比较确定争用值。
Description
背景技术
诸如私有云和公共云的大规模共享资源池被用于主控(host)多种应用。在许多情况下,在资源池中采用虚拟化。创建虚拟机(VM)并运行在物理机上来主控应用。VM是和物理机一样的执行程序的机器的软件实施方式。VM可以被用于在相同计算机上彼此隔离地运行多个OS环境,并且每一个VM都主控一个或多个应用。运行虚拟机的现代处理器是常见的,VM可以共享缓存、存储器及其他资源。
附图说明
在以下说明中参考附图来详细描述实施例。附图示出了实施例的示例,并且附图中相同的附图标记指代相同的元素。
图1图示出了系统。
图2图示出了包括共享资源的插口的系统。
图3图示出了方法的流程图。
图4图示出了可操作以用于图1或图2中的系统的计算机系统。
具体实施方式
出于简要和说明性目的,通过主要参考其示例来描述实施例的原理。在以下描述中,阐述了许多具体细节,以便提供对实施例的透彻理解。然而,对于本领域普通技术人员显而易见的是,可以在不受这些具体细节限制的情况下实践实施例。在一些情况下,没有详细描述公知的方法和结构,以免不必要地使得实施例的描述模糊不清。
根据实施例,探测器(probe)被用于在共享资源环境的争用区中的资源使用者之中确定争用。争用区包括共享资源环境中的共享资源。资源使用者包括利用共享资源的任何项目,诸如运行在服务器或VM上的应用和运行在VM上的应用。例如,探测器包括模拟资源使用者在争用区中运行的代码。探测器与资源使用者同时利用共享资源以进行测量,该测量值被用于确定资源使用者之中对共享资源的争用。例如,争用是在同时利用共享资源的资源使用者之间的干扰,其致使资源使用者在一起时的表现与隔离时不同。争用可以致使资源使用者的性能或服务质量(QoS)下降到基准(例如阈值)以下。
资源使用者可以包括VM。通常不为每一个VM供应诸如L3缓存、虚拟机监视器、存储器或网络接口的共享资源,但仍旧可以由全部VM使用。资源共享可以致使VMQoS下降。例如,如果多个VM共享L3缓存或共享存储器,并且一个VM支配缓存和/或存储器访问,由其他VM执行的应用的性能就会受损害。探测器测量可以被用于确定争用,并且可以基于由探测器测量的性能做出VM供应决定。例如,可以将VM迁移到争用区以外,诸如到另一个插口或机器,以改进QoS。在云系统中,基于探测器测量的供应可以被用于改进QoS并满足服务水平协议性能基准。
图1图示出了共享资源环境争用确定系统100。系统100包括包含争用区110的共享资源环境。争用区110包括共享资源130,其由资源使用者108共享,在该示例中资源使用者108包括VM101a-n和探测器102。在其他示例中,争用区不包括VM,并且可以包括单个机器或多个机器,其中合并了多个工作负载。资源使用者可以包括利用共享资源但没有在VM中运行的应用。共享资源130包括共享资源131a-f,诸如存储器、分级缓存(例如L3缓存和/或L1-L2缓存)、内核、虚拟机监视器、网络接口(例如NIC)、服务器、通过共享的管理程序或任何资源的路径。探测器102也与VM101a-n一起共享共享资源130。VM101a-n的每一个都可以运行一个或多个应用,诸如,应用102a-n。可以在诸如云系统的分布式计算系统中提供争用区110。可以供应VM来运行分布式计算系统的用户的工作负载。例如用户可能需要运行应用102a-n,并且在共享资源130上供应VM来运行应用以适应用户的需要。
例如探测器102包括机器可读指令,该机器可读指令被执行以模拟在共享资源130上的工作负载。例如,探测器102是计算机代码,其模拟运行在争用区110中的VM上的应用的操作。探测器102可以与VM101a-n争用共享资源130。随着对共享资源130的争用增大,可以致使应用102a-n和探测器102的性能下降。由探测器102执行的测量可以指示争用量和性能的下降。
可以取决于被测量的共享资源调整探测器102来进行测量。可以根据资源的类型和资源的属性调整探测器。例如,探测器102可以对访问L3缓存进行测量。针对缓存大小属性调整探测器102。如果L3缓存是8MB,且针对不正确的大小调整了L3缓存,诸如16MB,那么测量就会不准确。可以通过自动过程或涉及在调整期间用以改变参数的用户输入的过程来调整探测器102。
负载生成器120依据或使用探测器102确定测量值,将测量值与基准相比较,并且可以确定指示在争用区110中运行的资源使用者108之中的争用量的争用值。如果探测器没有与VM101a-n争用,基准就可以是由探测器102进行的基线测量值。例如,在没有资源使用者108的情况下执行探测器102,并且其进行共享资源130的性能测量以确定基准。负载生成器120可以将探测器102在共享资源130时进行的测量与基准相比较。在这些测量的集合之间的任何统计学上显著的偏差都可以与关于存在的资源争用的类型的信息一起报告给管理系统140,从而允许管理系统140启动行动来补救问题,诸如将VM迁移到另一个机器。在一个示例中,负载生成器120控制探测器102在特定时间执行以测量共享资源的性能。例如负载生成器120被部署在与争用区110不同的分离主机上。负载生成器120可以支持多个探测器。争用区可以具有多于一个的探测器,然而,探测器102可以执行多个不同测量以表征多个共享资源。此外,负载生成器120可以支持在不同争用区中的探测器。使用探测器102执行确定的测量的一些示例包括响应时间和吞吐量。探测器102可以在测量不同度量的阶段之间交替,并且交替可以由指导探测器102的负载生成器120控制,或者可以由探测器自身确定。例如,一个阶段可以是包括测量探测器响应时间的连接阶段。例如,对于连接阶段,负载生成器120向探测器102提交请求,并测量探测器的响应时间。在这个示例中,依据探测器的响应时间的这个外部测量来确定争用。这个连接阶段可以包括在涉及TCP/IP连接的虚拟机监视器处感测争用。虚拟机监视器的一个示例是LINUX中的内核虚拟存储器(KernelVirtualMemory)(KVM)。虚拟机监视器是共享资源130之一。存储阶段可以测量对存储器或缓存(例如L3缓存)的争用。在一个示例中,确定从存储器或缓存检索(retrieve)请求的数据的响应时间。响应时间可以由探测器102测量。例如,为了测试L3缓存,探测器102可以在以使用大量L3缓存的方式访问存储器的循环中执行脚本。响应时间越高,就推测缓存未命中的数量越大。探测器102可以将其响应时间报告给负载生成器120。负载生成器120可以控制探测器102处于哪个阶段中,并能够将任何推测的性能下降传送给管理系统140。
现代处理器已采用多插口架构,具有由每一个插口的CPU内核共享非均匀存储器访问(NUMA)和第三级(L3)缓存。图2示出了系统100的示例,该系统包括包含争用区110中的共享资源130的一个插口或多个插口。在其他示例中,争用区110可以包括多个服务器或另一组共享资源。参考图2,示出了插口201和202。共享资源130包括CPU内核210a-h和220a-h。其他共享资源包括L3缓存211和221及存储器212和222。插口可以包括包含CPU内核与L3缓存的物理封装或芯片。插口可以参与插口间通信。在一个示例中,每一个插口201和202都是分离的争用区,并且在另一个示例中,插口201和202一起代表争用区110。
可以将多个VM分配给每个插口,并且每一个插口都可以包括探测器。例如,VM230a-h在内核210a-h上运行,并且探测器240在内核210a上运行。VM231a-h在内核220a-h上运行,并且探测器241在内核220a上运行。VM可以固定到附近的存储器以改进性能。探测器240和241可以将其自身内部性能的测量报告给负载生成器120。此外,负载生成器120可以测量探测器240和241的响应时间或吞吐量。负载生成器120可以将争用值发送给管理系统140,并且管理系统140可以基于争用值做出VM供应决定。
现在根据相对于探测器测量的连接阶段和存储阶段的示例来描述诸如探测器102、240、241的探测器的调整。可以使用其他技术来调整探测器,并且探测器可以被调整用于确定除了争用率和存储器访问时间/缓存未命中以外的测量。探测器可以包括低开销应用,能够测量指示在未受管理的共享资源中的争用的度量值。可以以一次一个因子的方式优化用于探测器的参数,例如下述的c、t1和t2,直至探测器具有低资源利用率,但仍正确地报告由微基准VM招致的下降。例如,微基准是应用。每一个微基准都设计为应对特定共享资源。为了调整一个探测器阶段,增大相应的微基准,直至观察到性能下降。再次重复这个过程,但使得探测器就位。
现在描述针对连接阶段调整探测器的一个示例。在连接阶段中,探测器内的网络服务器实例在t1秒的期间内受到每秒c个Web连接(cps)的突发脉冲。网络服务器实例通过执行CPU绑定的PHP脚本来服务连接请求。在存储阶段调整探测器的一个示例包括执行脚本的探测器,其在t2秒中横穿大小n的整数阵列,其中,n与用于插口的L3缓存大小有关。在这个示例中,选择n的值以使得L3未命中率为0.1。针对资源池中的每一类服务器仔细调整c、t1、n和t2的值,以使得探测器施加低开销,同时具有识别在VM中的争用的能力。
在一个示例中,自动调整探测器的参数,以使得探测器102在其连接阶段与存储阶段之间交替。具体而言,对于针对连接阶段调整c和t1,设置受控的实验,涉及应用密集的网络微基准。在不使用探测器的情况下,借助每个内核一个VM来识别两个情形,一个具有每个VM无性能中断的到达率,以及一个具有每个VM有性能中断的到达率。中断是性能中断。例如,基于实验,一直到每个VM160cps的负载,在VM的平均响应时间中都没有显著变化。在该负载水平的每个内核的利用率为0.75。然而,在每个VM165cps的负载,平均响应时间中有显著变化。大的c值是增加到第一个情况致使中断的cps。t1被设定为微基准的执行的整个持续时间。针对无中断的情形执行探测器。逐渐减小c值,直至探测器为VM不引入任何性能下降。接下来,探测器针对具有性能中断的其他情形以该设定运行。现在逐渐减小t1的值,直到探测器仍能够识别问题的点。采用使用缓存或存储器微基准来首先选择n之后是t2的类似方案来调整探测器的存储阶段。
探测器可以被用于确定例如在连接阶段和存储阶段的测量值。例如,负载生成器120确定测量值,并依据测量值确定争用值。争用值例如指示在资源使用者之中对共享资源的争用量,并且可以被用于确定共享资源的实际容量。争用值可以被发送到管理系统140。争用值可以指示争用是否超过阈值。例如,争用量可以被用于将超过阈值的性能下降报告给管理系统140。管理系统140可以包括供应VM的调度器。供应决定可以基于测量值。
依据测量值确定的争用值可以包括实际容量,其可以被用于确定在争用区中是否可以供应另一个VM,且仍维持特定的QoS。例如,f是争用值;f=1表示无争用,并且资源使用者的表现如同在隔离状态中运行一样;并且大于1的f表示存在对共享资源的争用。无争用表示资源使用者如同没有其他资源使用者使用共享资源一样访问共享资源。争用可以包括性能从无争用操作起的一些下降。例如,代替每小时完成1个工作,应用每小时完成0.8个工作。
在一个示例中,管理系统140可以使用称为份额(shares)的数值表征CPU容量需求。将份额视为“加法的”,因而份额的总数表示总容量。假定C是主机CPU份额的数量,P是已经供应的份额的数量,N是另外VM所需的份额的数量。于是在供应主机的可用容量A后,A=C-f(P+N)。f是争用值。因此,如果f=1,例如无争用,那么A=C-f(P+N)。如果f大于1,那么存在争用,并且作为争用的函数测量实际可用容量。如果f=2,这表示实际可用容量是与无争用情形相比的一半。f值可以依据来自探测器的测量值与针对基准的比较来确定。例如,如果测量的响应时间是基准的两倍,那么f就可以设定为2。
例如,相对于图1或图2中示出的系统100来描述方法300。方法可以由其他系统执行。图3示出了方法300,该方法估计在共享资源环境中的争用区中的资源使用者中的争用。在301,负载生成器120依据探测器102确定争用区120中共享资源130的性能的测量值。性能测量值的示例包括建立新的TCP/IP连接和服务网页的响应时间或估计的缓存未命中。在302,负载生成器将测量值与基准相比较。基准可以包括表示希望的性能的值。基准可以依据在争用区110中隔离运行的探测器102的测量值来确定,其中不存在与其他资源使用者的争用。在303,负载生成器120基于比较确定表示在争用区中运行的资源使用者中的争用量的争用值。争用值可以是上述的f值或者高于基准的争用量。
上述的一些或全部方法和操作和功能可以作为机器可读指令提供,机器可读指令可以由处理器执行并存储在非暂时性计算机可读储存介质上。例如,它们可以作为(一个或多个)程序存在,包括采用源代码、目标代码、可执行代码或其他格式的程序指令。
参考图4,示出了用于负载生成器120的计算机平台400。应该理解的是,平台400的图示是普遍性的举例说明,并且在不脱离平台400的范围的情况下,平台400可以包括另外的组件,并且可以去除和/或修改所述组件中的一些。
平台400包括(一个或多个)处理器401,诸如中央处理单元,ASIC或其他类型的处理电路;显示器402和/或其他输入/输出设备,接口403,诸如到局域网(LAN)的网络接口,无线802.11xLAN,3G或4G移动WAN或WiMaxWAN;和计算机可读介质404。这些组件的每一个都可操作地耦合到总线408。诸如CRM404的非暂时性计算机可读介质(CRM)可以是任何适合的介质,其存储用于执行的指令,用于由(一个或多个)处理器401执行。例如,CRM404可以是非易失性介质,诸如磁盘或固态非易失性存储器或易失性介质。CRM404可以包括用于负载生成器120的机器指令405。
尽管参考以上公开内容描述了实施例,但本领域技术人员能够在不脱离如以下权利要求及其等同物所描述的实施例的范围情况下,对所描述的实施例做出各种修改。
Claims (15)
1.一种共享资源环境争用确定系统,包括:
负载生成器,由处理器执行,以依据在共享资源环境中的争用区中与虚拟机(VM)一起运行的探测器确定测量值,其中,所述测量值测量由争用区中的探测器和VM利用的共享资源的性能,将所述测量值与基准相比较,并基于比较确定争用值,该争用值表示在争用区中运行的VM中的争用量,其中,所述争用包括利用共享资源的VM中的干扰。
2.根据权利要求1所述的系统,其中,争用区中的共享资源包括虚拟机监视器和L3缓存。
3.根据权利要求2所述的系统,其中,共享资源的测量值包括针对虚拟机监视器测量的连接到达率和针对L3缓存测量的缓存未命中。
4.根据权利要求1所述的系统,其中,依据争用值确定的争用致使在VM上运行的应用的性能下降。
5.根据权利要求1所述的系统,其中,所述探测器包括在争用区中执行的代码,模拟在争用区中的VM上运行的应用的操作。
6.根据权利要求1所述的系统,其中,测量值是用于测量在争用区中共享资源的性能的度量,及
所述基准包括用于在不与VM共享资源情况下,由在争用区中隔离运行的探测器测量的度量的测量值。
7.根据权利要求1所述的系统,其中,基于被测量的共享资源的类型和共享资源的属性调整探测器。
8.根据权利要求1所述的系统,其中,所述负载生成器用于确定争用量是否超过阈值,并且如果争用量超过所述阈值,就将争用值报告给管理系统以控制VM。
9.根据权利要求8所述的系统,其中,所述管理系统用于响应于争用量超过所述阈值,迁移VM以减小争用对VM的影响。
10.根据权利要求1所述的系统,其中,基于争用值计算争用区中共享资源的可用容量。
11.根据权利要求10所述的系统,其中,所述可用容量包括一个共享资源可用于分配给争用区中的VM的份额的数量,并且可用容量A等于C-f(P+N),其中,C是按照共享资源的份额的总容量,f是争用值,P是已经供应的份额的数量,并且N是争用区中另外VM所需的份额的数量。
12.一种估计在共享资源环境中争用区中的资源使用者中的争用的方法,所述方法包括:
依据与资源使用者一起运行的探测器确定争用区中共享资源的性能的测量值;
将所述测量值与基准相比较;及
由处理器基于比较确定争用值,该争用值表示在争用区中运行的资源使用者中的争用量,其中,所述争用包括争用区中利用共享资源的资源使用者与探测器中的干扰,并且所述争用致使资源使用者的性能的下降。
13.根据权利要求12所述的方法,包括:
确定争用量是否超过阈值;及
如果争用量超过所述阈值,就将争用值发送给管理系统以基于争用值控制资源使用者对共享资源的消耗。
14.根据权利要求12所述的方法,其中,所述资源使用者包括运行应用的VM或没有在VM上运行的应用。
15.一种非暂时性计算机可读介质,包括机器可读指令,可由至少一个处理器执行以:
依据在争用区中与VM一起运行的探测器确定争用区中虚拟机监视器和L3缓存的性能的测量值,其中,所述探测器模拟在争用区中运行的VM;
将所述测量值与基准相比较;及
基于比较确定争用值,该争用值表示在争用区中运行的VM中的争用量,其中,所述争用包括在使用虚拟机监视器的VM和L3缓存中的干扰。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2013/022766 WO2014116215A1 (en) | 2013-01-23 | 2013-01-23 | Shared resource contention |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105074651A true CN105074651A (zh) | 2015-11-18 |
Family
ID=51227890
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380070722.8A Pending CN105074651A (zh) | 2013-01-23 | 2013-01-23 | 共享资源争用 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9954757B2 (zh) |
EP (1) | EP2948841A4 (zh) |
CN (1) | CN105074651A (zh) |
WO (1) | WO2014116215A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11507425B2 (en) | 2019-11-19 | 2022-11-22 | Huawei Cloud Computing Technologies Co., Ltd. | Compute instance provisioning based on usage of physical and virtual components |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9792050B2 (en) * | 2014-08-13 | 2017-10-17 | PernixData, Inc. | Distributed caching systems and methods |
US9996369B2 (en) * | 2015-01-05 | 2018-06-12 | Anki, Inc. | Adaptive data analytics service |
US10152357B1 (en) * | 2016-05-02 | 2018-12-11 | EMC IP Holding Company LLC | Monitoring application workloads scheduled on heterogeneous elements of information technology infrastructure |
US20180173547A1 (en) * | 2016-12-20 | 2018-06-21 | Intel Corporation | Pinning of virtual network function (vnf) deployments using hardware metrics |
JP7035858B2 (ja) * | 2018-07-03 | 2022-03-15 | 富士通株式会社 | マイグレーション管理プログラム、マイグレーション方法およびマイグレーションシステム |
US10831543B2 (en) * | 2018-11-16 | 2020-11-10 | International Business Machines Corporation | Contention-aware resource provisioning in heterogeneous processors |
JP7513866B2 (ja) * | 2020-03-04 | 2024-07-10 | 富士通株式会社 | 移動対象コンテナ決定方法、及び移動対象コンテナ決定プログラム |
US12093714B2 (en) * | 2021-07-20 | 2024-09-17 | Oracle International Corporation | System and method for estimation of performance impact upon a hypervisor in a cloud environment |
US20230080623A1 (en) * | 2021-09-15 | 2023-03-16 | Sam Barhoumeh | Systems and Methods for an Enterprise Computing Platform |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1329309A (zh) * | 2000-06-13 | 2002-01-02 | 微软公司 | 操作系统的多语言用户接口 |
US20050138034A1 (en) * | 2003-12-17 | 2005-06-23 | International Business Machines Corporation | System and method for sharing resource properties in a multi-user environment |
CN1858699A (zh) * | 2005-10-10 | 2006-11-08 | 华为技术有限公司 | 电子信息系统的软件子系统 |
CN1912839A (zh) * | 2005-08-10 | 2007-02-14 | 乐金电子(昆山)电脑有限公司 | 资源套组的制成和应用程序中节约存储空间的方法 |
US20110055838A1 (en) * | 2009-08-28 | 2011-03-03 | Moyes William A | Optimized thread scheduling via hardware performance monitoring |
US20120023492A1 (en) * | 2010-07-26 | 2012-01-26 | Microsoft Corporation | Workload interference estimation and performance optimization |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7240094B2 (en) * | 1997-07-03 | 2007-07-03 | Centra Software Inc. | Method and system for synchronizing and serving multimedia in a distributed network |
CA2279118A1 (en) * | 1999-07-29 | 2001-01-29 | Ibm Canada Limited-Ibm Canada Limitee | Tooling framework system and method for code generation |
US8099487B1 (en) * | 2006-07-06 | 2012-01-17 | Netapp, Inc. | Systems and methods for determining placement of virtual machines |
US20090089788A1 (en) * | 2007-09-28 | 2009-04-02 | International Business Machines Corporation | System and method for handling resource contention |
US8606911B2 (en) | 2009-03-02 | 2013-12-10 | Headwater Partners I Llc | Flow tagging for service policy implementation |
US8751627B2 (en) | 2009-05-05 | 2014-06-10 | Accenture Global Services Limited | Method and system for application migration in a cloud |
US20110035248A1 (en) | 2009-08-07 | 2011-02-10 | Loic Juillard | Distributed Service Platform Computing with a Guaranteed Quality of Service |
US8589921B2 (en) * | 2009-11-30 | 2013-11-19 | Red Hat Israel, Ltd. | Method and system for target host optimization based on resource sharing in a load balancing host and virtual machine adjustable selection algorithm |
US8464255B2 (en) | 2010-03-12 | 2013-06-11 | Microsoft Corporation | Managing performance interference effects on cloud computing servers |
US8572612B2 (en) | 2010-04-14 | 2013-10-29 | International Business Machines Corporation | Autonomic scaling of virtual machines in a cloud computing environment |
US20120144489A1 (en) | 2010-12-07 | 2012-06-07 | Microsoft Corporation | Antimalware Protection of Virtual Machines |
US10203974B2 (en) * | 2010-12-20 | 2019-02-12 | Microsoft Technology Licensing, Llc | Probe insertion via background virtual machine |
WO2012125144A1 (en) | 2011-03-11 | 2012-09-20 | Joyent, Inc. | Systems and methods for sizing resources in a cloud-based environment |
US9268542B1 (en) * | 2011-04-28 | 2016-02-23 | Google Inc. | Cache contention management on a multicore processor based on the degree of contention exceeding a threshold |
US9262322B2 (en) * | 2013-09-17 | 2016-02-16 | Advanced Micro Devices, Inc. | Method and apparatus for storing a processor architectural state in cache memory |
US9760465B2 (en) * | 2014-01-02 | 2017-09-12 | International Business Machines Corporation | Assessment of processor performance metrics by monitoring probes constructed using instruction sequences |
US9374324B2 (en) * | 2014-03-14 | 2016-06-21 | International Business Machines Corporation | Determining virtual adapter access controls in a computing environment |
-
2013
- 2013-01-23 US US14/759,659 patent/US9954757B2/en active Active
- 2013-01-23 CN CN201380070722.8A patent/CN105074651A/zh active Pending
- 2013-01-23 WO PCT/US2013/022766 patent/WO2014116215A1/en active Application Filing
- 2013-01-23 EP EP13872320.0A patent/EP2948841A4/en not_active Withdrawn
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1329309A (zh) * | 2000-06-13 | 2002-01-02 | 微软公司 | 操作系统的多语言用户接口 |
US20050138034A1 (en) * | 2003-12-17 | 2005-06-23 | International Business Machines Corporation | System and method for sharing resource properties in a multi-user environment |
CN1912839A (zh) * | 2005-08-10 | 2007-02-14 | 乐金电子(昆山)电脑有限公司 | 资源套组的制成和应用程序中节约存储空间的方法 |
CN1858699A (zh) * | 2005-10-10 | 2006-11-08 | 华为技术有限公司 | 电子信息系统的软件子系统 |
US20110055838A1 (en) * | 2009-08-28 | 2011-03-03 | Moyes William A | Optimized thread scheduling via hardware performance monitoring |
US20120023492A1 (en) * | 2010-07-26 | 2012-01-26 | Microsoft Corporation | Workload interference estimation and performance optimization |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11507425B2 (en) | 2019-11-19 | 2022-11-22 | Huawei Cloud Computing Technologies Co., Ltd. | Compute instance provisioning based on usage of physical and virtual components |
Also Published As
Publication number | Publication date |
---|---|
US20150350055A1 (en) | 2015-12-03 |
EP2948841A1 (en) | 2015-12-02 |
WO2014116215A1 (en) | 2014-07-31 |
US9954757B2 (en) | 2018-04-24 |
EP2948841A4 (en) | 2016-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105074651A (zh) | 共享资源争用 | |
US11579935B2 (en) | Merging scaled-down container clusters using vitality metrics | |
CN108009016B (zh) | 一种资源负载均衡控制方法及集群调度器 | |
CN104184813B (zh) | 虚拟机的负载均衡方法和相关设备及集群系统 | |
US9152200B2 (en) | Resource and power management using nested heterogeneous hypervisors | |
TWI755415B (zh) | 雲端環境下應用集群資源分配的方法、裝置和系統 | |
US20160156567A1 (en) | Allocation method of a computer resource and computer system | |
US10680975B2 (en) | Method of dynamic resource allocation for public clouds | |
CN109257399B (zh) | 云平台应用程序管理方法及管理平台、存储介质 | |
US10282272B2 (en) | Operation management apparatus and operation management method | |
JP2016537705A (ja) | 仮想マシンマイグレーション管理の方法、装置およびシステム | |
CN108205469B (zh) | 一种基于MapReduce的资源分配方法及服务器 | |
US10108463B2 (en) | System, method of controlling to execute a job, and apparatus | |
JP2014191752A (ja) | マイグレーション処理プログラム,マイグレーション方法及びクラウドシステム | |
CN113867644B (zh) | 磁盘阵列优化方法、装置、计算机设备及存储介质 | |
US20230305880A1 (en) | Cluster distributed resource scheduling method, apparatus and device, and storage medium | |
Xue et al. | Managing data center tickets: Prediction and active sizing | |
US20190173770A1 (en) | Method and system for placement of virtual machines using a working set computation | |
JP5914699B2 (ja) | マイグレーションによるデータベースの作業負荷バランシング | |
US9678823B2 (en) | Information processing apparatus, information processing method, and information processing system | |
CN105159741A (zh) | 基于云服务的水利模型仿真计算系统及计算方法 | |
KR101586712B1 (ko) | 멀티 프로세서 시스템에서 태스크 의존성 그래프를 이용한 스케줄링 방법 및 장치 | |
Surya et al. | Dynamic resource allocation for distributed Tensorflow training in kubernetes cluster | |
Sun et al. | An approach to minimizing downtime induced by taking live snapshot of virtual cluster | |
CN114416291B (zh) | 虚拟机调度方法、装置及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20170122 Address after: American Texas Applicant after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP Address before: American Texas Applicant before: Hewlett-Packard Development Company, L.P. |
|
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20151118 |