KR20180039745A - 다수의 차원의 컴퓨터 로드의 정확한 생성 - Google Patents

다수의 차원의 컴퓨터 로드의 정확한 생성 Download PDF

Info

Publication number
KR20180039745A
KR20180039745A KR1020187009630A KR20187009630A KR20180039745A KR 20180039745 A KR20180039745 A KR 20180039745A KR 1020187009630 A KR1020187009630 A KR 1020187009630A KR 20187009630 A KR20187009630 A KR 20187009630A KR 20180039745 A KR20180039745 A KR 20180039745A
Authority
KR
South Korea
Prior art keywords
utilization
computer
dimensions
resource loads
dimension
Prior art date
Application number
KR1020187009630A
Other languages
English (en)
Other versions
KR101925762B1 (ko
Inventor
티몬스 플레이어
다비드 조이너
Original Assignee
스파이런트 커뮤니케이션즈, 인크.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 스파이런트 커뮤니케이션즈, 인크. filed Critical 스파이런트 커뮤니케이션즈, 인크.
Publication of KR20180039745A publication Critical patent/KR20180039745A/ko
Application granted granted Critical
Publication of KR101925762B1 publication Critical patent/KR101925762B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording 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/3409Recording 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/3414Workload generation, e.g. scripts, playback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording 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/3409Recording 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/3433Recording 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/20Network management software packages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/83Admission control; Resource allocation based on usage prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1002
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual

Abstract

사용률 테스트는 제1 컴퓨터상의 다수의 차원의 리소스 로드를 생성하고, 다수의 차원은 프로세서 사용률 차원, 메인 메모리 사용률 차원, 대용량 저장장치 사용률 차원, 및 네트워크 사용률 차원 중 적어도 둘을 포함한다. 사용률 테스트는 제1 컴퓨터상의 각각의 차원의 리소스 로드의 변경가능한 목표 사용률과 동일한 양으로, 제1 컴퓨터상의 각각의 차원의 리소스 로드를 생성하기 위한 시도의 반복을 수행한다. 사용률 테스트는 (ⅰ) 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 실제 사용률, 및 (ⅱ) 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 변경가능한 목표 사용률 사이의 격차(inequality)에 대한 수정을 시도하기 위해 조정된 사용률을 조정한다.

Description

다수의 차원의 컴퓨터 로드의 정확한 생성
본 발명은 임의의 레벨에서 상이한 유형의 컴퓨터 리소스의 리소스 로드 용량을 결정하는 것을 돕는 로드 생성기 및 리소스 로드 생성 방법에 관한 것이다.
배경 기술 부분에서 논의되는 주제는 단지 배경기술 부분에서의 언급의 결과로서 종래 기술인 것으로 가정해서는 안 된다. 마찬가지로, 배경 기술 부분에서 언급되거나 배경 기술 부분의 주제와 관련된 문제점은 종래 기술에서 이미 확인된 것으로 가정되어서는 안 된다. 배경 기술 분분의 주제는 단지 상이한 접근법을 나타낼 뿐이며, 그 자체가 청구된 발명의 구현에 해당할 수도 있다.
로드 생성기는 컴퓨터의 최대 리소스 로드 용량을 측정하기 위해 최대 로드를 생성할 수 있다. 그러나, 기존의 로드 생성기는 임의의 로드 생성을 허용하지 않는다. 또한, 기존의 로드 생성기는 테스트 배터리를 실행하고 컴퓨터 리소스 가용성에 단일 메트릭을 할당할 수 있다. 그러나, 기존의 로드 생성기는 상이한 유형의 컴퓨터 리소스, 및 특히 임의의 로드에서 정밀한 측정을 허용하지 않는다.
따라서, 임의의 레벨에서 상이한 유형의 컴퓨터 리소스의 리소스 로드 용량을 결정하는 것을 돕는 로드 생성기를 개발할 기회가 발생한다.
본 발병의 목적은 임의의 레벨에서 상이한 유형의 컴퓨터 리소스의 리소스 로드 용량을 결정하는 것을 돕는 로드 생성기를 제공하는 것이다.
이 기술의 일 양태는 컴퓨터 리소스 로드의 다수의 차원의 용량을 테스트하기 위해 컴퓨터 리소스 로드의 다수의 차원을 조정가능하게 생성하는 방법이다.
사용률 테스트는 제1 컴퓨터상의 리소스 로드의 다수의 차원을 생성하고, 다수의 차원은 프로세서 사용률 차원, 메인 메모리 사용률 차원, 대용량 스토리지(storage) 사용률 차원, 및 네트워크 사용률 차원 중 적어도 둘을 포함한다. 사용률 테스트는 제1 컴퓨터상의 리소스 로드의 상기 각각의 차원의 변경가능한 목표 사용률과 동일한 양으로, 제1 컴퓨터상에 리소스 로드의 상기 각각의 차원을 생성하려는 시도의 반복을 수행한다. 사용률 테스트는 (ⅰ) 제1 컴퓨터상의 리소스 로드의 다수의 차원 중 특히 하나의 실제 사용률, 및 (ⅱ) 제1 컴퓨터상의 리소스 로드의 다수의 차원 중 특히 하나의 변경가능한 목표 사용률 사이의 불균형에 대한 수정을 시도하기 위해 조정된 사용률을 조정한다.
개시된 기술의 다른 특징 및 양태는 이하의 도면, 명세서 및 청구범위에 나타난다.
본 발명에 따르는 다수의 차원의 컴퓨터 리소스 로드 생성기는 수의 차원의 컴퓨터 리소스 로드의 용량을 테스트하기 위해 다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성할 수 있다.
포함된 도면은 예시를 목적으로 하고 이 개시물의 하나 이상의 구현에 대한 가능한 구조 및 프로세스 동작의 예를 제공하는 역할만 한다. 이 도면은 이 개시물의 사상 및 범주로부터 벗어나지 않고 당업자에 의해 이뤄질 수 있는 형태 및 세부 사항의 어떤 변화도 제한하지 않는다. 주제의 더욱 완전한 이해는 이하의 도면과 관련하여 고려될 때 상세한 설명 및 청구범위를 참조함으로써 도출될 수 있으며, 동일한 참조 번호는 도면 전체에 걸쳐 유사한 요소를 말한다.
도1은 리소스 사용률 테스트를 실행하기 위한 예시적 환경을 도시하는 블록도이다.
도2-5는 범용 운영 체제 또는 유니커널(unikernel)상에서 실행하는 리소스 사용률 테스트 애플리케이션을 보여주는 단순화된 블록도이다.
도6은 원하는 레벨의 리소스 로드를 생성하기 위해 다수의 폐 루프를 구비한 사용률 테스트 애플리케이션의 예시적인 블록도이다.
도7은 특정 컴퓨터 리소스의 실제 사용률을 포함하는 상이한 부품의 단순화되 표현이다.
도8은 개방 루프 로드 생성기에 대한 폐 루프 로드 생성기의 우수한 성능을 시간에 따라 보여주는 그래프이다.
도9는 개방 루프 로드 생성기에 대한 폐 루프 로드 생성기의 우수한 성능을 CPU의 다양한 변경가능한 목표 사용률에 대해 보여주는 그래프이다.
도10은 컴퓨터 리소스 로드의 다수의 차수의 성능을 동시에 보여주는 그래프이다.
도11은 충분한 기본(underlying) 리소스를 구비한 가상 머신의 CPU 로드 에러의 히스토그램이다.
도12는 불충분한 기본 리소스를 구비한 가상 머신의 CPU 로드 에러의 히스토그램이다.
도13은 상이한 물리적 서버상의 가상 머신의 다수의 인스턴스에서 실행되는 리소스 사용률 테스트 애플리케이션을 구비한 데이터 센터 클라우드의 단순화된 블록도이다.
도14는 예시적인 컴퓨터 시스템의 블록도이다.
이하 상세한 설명이 도면을 참고로 이뤄진다. 샘플 구현예는 개시된 기술을 설명하기 위해 기재된 것으로, 청구범위에 의해 규정된 범주를 제한하는 것이 아니다. 당업자는 이하의 설명에 대해 다양한 동등한 변형을 인식할 것이다.
도1은 리소스 사용률 테스트를 실행하기 위한 예시적인 환경을 도시하는 블록도이다.
가상 머신 운영 체계(20), 또는 가상 머신 인스턴스(instance)는 가상 머신 운영 체계(20)에 할당된 가상 머신 하드웨어(28a) 상에서 실행된다. 가상 머신 운영 체계(20)는 물리적 서버(10a) 상에서 실행하는 가상화 소프트웨어(30a)에 의해 관리된다. 가상화 소프트웨어(30a)는 또한 추가 가상 머신을 관리할 수 있다. 가상화 소프트웨어(30a)는 네이티브(native) 또는 호스트될 수 있고, 동일한 컴퓨터 하드웨어 리소스상의 운영 체계의 다수의 동시발생 인스턴스를 허용하는 하나 이상의 가상 머신을 관리할 수 있다. 컴퓨터 하드웨어 리소스는 네트워크 클라우드로서 표시된 네트워크(2)에 의해 상호연결된, 물리적 서버(10a 내지 10z)를 포함한다. 물리적 서버(10a 내지 10z)는 프로세서, 메모리, 및 여기에 기재된 기술을 수핸하는 컴퓨터에 의해 실행할 수 있는 컴퓨터 판독가능 명령을 구비한 비일시적(nontransitory) 컴퓨터 판독가능 미디어를 포함한다. 어떤 수의 서버(10a-10z)든 네트워크(2) 상에 상주할 수 있으며, 어떤 수의 가상 머신(20)이든 각각의 물리적 서버(10a-10z)상에 상주할 수 있다. 예를 들어, 가상화 소프트웨어(30)는 물리적 서버(10y)상에서 실행되고, 물리적 서버(10z)는 가상화 소프트웨어를 실행하지 않는다.
가상 머신 운영 체계(20)는 리소스 사용률 테스트 애플리케이션(22a)이 실행되는 환경이다. 리소스 사용률 테스트 애플리케이션(22a)은 리소스 로드 용량 테스트(23a)를 위한 리소스 조정을 수행한다. 조정되는 리소스 로드의 상이한 유형 또는 차원의 예는 CPU 또는 프로세스 사용률 차원, 메인 메모리 사용률 차원, 대용량 스토리지 사용률 차원, 및 네트워크 사용률 차원을 포함한다.
물리적 서버(10z)는 가상화 소프트웨어를 실행하지 않는다. 리소스 로드 용량 테스트(23z)를 위한 리소스 조정은 리소스 로드 용량 테스트(23a)에 대한 리소스 로드와 유사한 방식이지만, 물리적 머신 운영 체계(19)상의 비-가상 컨텍스트(context)에서 작용한다.
도2-5는 범용 운영 체계 또는 유니커널(unikernel)상에서 실행하는 리소스 사용률 테스트 애플리케이션을 보여주는 단순화된 블록도이다.
도2는 유니커널 운영 체계(52)를 지원하는 가성 머신 인스턴스(20)를 나타낸다. 유니커널 운영 체계(52)는 운영 체계의 임의의 양태의 검사를 허용하는 단일 주소 공간을 제공한다. 따라서, 유니커널 운영 체계(52)는 리소스 사용률 테스트 애플리케이션(22a)에 의해 수행되는 로드 생성의 정확성을 보장하도록 돕는다.
도3은 범용 운영 체계(50)를 지원하는 가상 머신 인스턴스(20)를 나타낸다. 범용 운영 체계(50)는 리소스 사용률 테스트 애플리케이션(22a)을 구비한 주소 공간을 포함하는 다수의 주소 공간을 사용자 공간(40)에 제공하며, 이는 운영 체계의 양태의 검사를 불명확하게 한다. 따라서, 범용 운영 체계(50)는 리소스 사용률 테스트 애플리케이션(22a)에 의해 수행된 로드 생성의 정확성을 불명확하게 한다. 그럼에도 불구하고, 리소스 사용률 테스트 애플리케이션(22a)은 범용 운영 체계(50)의 대안에 비해 개선된 로드 생성기이다.
도4는 가상 머신이 아닌 물리적 머신(19)이 유니커널 운영 체계(52)를 지원하는 것을 제외하고 도2와 유사하다. 도5는 가상 머신이 아닌 물리적 머신(19)이 범용 운영 체계(50)를 지원하는 것을 제외하고 도3과 유사하다.
도6은 원하는 레벨의 리소스 로드를 생성하기 위해 다수의 폐 루프를 구비한 사용률 테스트 애플리케이션의 예시적인 블록도이다.
사용률 테스트 컨트롤(250)은 상이한 차원이 리소스 로드에 대해 변경가능한 목표 사용률(208, 218, 228 및 238)을 생성한다. 변경가능한 목표 사용률(208, 218, 228 및 238)은 사용자에 의해 수동으로 지정되거나 사용률 테스트 애플리케이션에 의해 자동으로 생성될 수 있다. 자동으로 생성된 변경가능한 목표 사용률(208, 218, 228 및 238)은 사용률 테스트 애플리케이션을 여러 번 수행하기 위해 값의 범위를 통해 순환할 수 있다.
네트워크 I/O 생성기(202)는 초당 전송 패킷 및 초당 트랜젝션 중 하나 또는 그 이상의 것과 같은, 네트워크 사용률 차원 리소스 로드를 생성한다. 네트워크 I/O 생성기(202)에 의해 생성된 네트워크 사용률 차원 리소스 로드의 양은 조정된 사용률(206)이다. 조정된 사용률(206)은 변경가능한 목표 사용률(208)과 초기에 동일하다. 실제 사용률(207)은 컴퓨터상에서 실제로 생성되는 네트워크 사용률 차원에 대한 리소스의 양이다. 실제 사용률(207)은, 컴퓨터상의 네트워크 사용률 차원에 대한 실제 사용률(207)이 네트워크 I/O 생성기(202)에 의해 생성된 조정된 사용률(206)에 덧붙여 기여도를 포함하기 때문에, 조정된 사용률(206)과 상이하다. 실제 사용률(207)이 실제 사용률 측정 및 출력(240)에 의해 측정된 후, 실제 사용률(207)은 폐루프 컨트롤러(204)에 제공된다. 실제 사용률(207)에 응답하여, 실제 사용률(207)이 변경가능한 목표 사용률(208)과 동일하게 만들기 위한 시도시, 폐루프 컨트롤러(204)는 조정된 사용률(206)을 변경시킨다.
다른 3개의 루프도 유사하지만, 완벽함을 위해 설명된다.
대용량 저장장치 I/O 생성기(212)는 초당 읽기 동작 및 초당 쓰기 동작 중 하나 또는 하나 이상과 같은, 대용량 저장장치 사용률 차원 리소스 로드를 생성한다. 대용량 저장장치 I/O 생성기(212)에 의해 생성된 대용량 저장장치 차원 리소스 로드의 양은 조정된 사용률(216)이다. 조정된 사용률(216)은 변경가능한 목표 사용률(218)과 초기에 동일하다. 실제 사용률(217)은 컴퓨터상에 실제로 생성된 대용량 저장장치 사용률 차원에 대한 리소스 로드의 양이다. 실제 사용률(217)은, 컴퓨터상의 대용량 저장장치 사용률 차원에 대한 실제 사용률(217)이 대용량 저장장치 I/O 생성기(212)에 의해 생성된 조정된 사용률(216)에 덧붙여 기여도를 포함하기 때문에, 조정된 사용률(216)과 상이하다. 실제 사용률(217)이 실제 사용률 측정 및 출력(240)에 의해 측정된 후, 실제 사용률(217)은 폐루프 컨트롤러(214)에 제공된다. 실제 사용률(217)에 응답하여, 실제 사용률(217)이 변경가능한 목표 사용률(218)과 동일하게 만들기 위한 시도시, 폐루프 컨트롤러(214)는 조정된 사용률(216)을 변경시킨다.
메인 메모리 I/O 생성기(222)는 초당 읽기 동작 및 초당 쓰기 동작 중 하나 또는 하나 이상과 같은 메인 메모리 사용률 차원 리소스 로드를 생성한다. 메인 메모리 I/O 생성기(222)에 의해 생성된 메인 메모리 사용률 차원 리소스 로드의 양은 조정된 사용률(226)이다. 조정된 사용률(226)은 변경가능한 목표 사용률(228)과 초기에 동일하다. 실제 사용률(227)은 컴퓨터상에 실제로 생성된 네트워크 사용률 차원에 대한 리소스 로드의 양이다. 실제 사용률(227)은, 컴퓨터상의 메인 메모리 사용률 차원에 대한 실제 사용률(227)이 메인 메모리 I/O 생성기(222)에 의해 생성된 조정된 사용률(226)에 덧붙여 기여도를 포함하기 때문에, 조정된 사용률(226)과 상이하다. 실제 사용률(227)이 실제 사용률 측정 및 출력(240)에 의해 측정된 후, 실제 사용률(227)은 폐루프 컨트롤러(224)에 제공된다. 실제 사용률(227)에 응답하여, 실제 사용률(227)이 변경가능한 목표 사용률(228)과 동일하게 만들기 위한 시도시, 폐루프 컨트롤러(224)는 조정된 사용률(226)을 변경시킨다.
프로세서 CPU 로드 생성기(232)는 사용된 CPU 초 및 CPU 초 전체 중 하나 또는 하나 이상과 같은 프로세서 사용률 차원 리소스 로드를 생성한다. 프로세서 생성기(232)에 의해 생성된 프로세서 사용률 차원 리소스 로드의 양은 조정된 사용률(236)이다. 조정된 사용률(236)은 변경가능한 목표 사용률(238)과 초기에 동일하다. 실제 사용률(237)은 컴퓨터상에 실제로 생성된 프로세서 로드 사용률 차원에 대한 리소스 로드의 양이다. 실제 사용률(237)은, 컴퓨터상의 프로세서 차원에 대한 실제 사용률(237)이 프로세서 로드 생성기(232)에 의해 생성된 조정된 사용률(236)에 덧붙여 기여도를 포함하기 때문에, 조정된 사용률(236)과 상이하다. 실제 사용률(237)이 실제 사용률 측정 및 출력(240)에 의해 측정된 후, 실제 사용률(237)은 폐 루프 컨트롤러(234)에 제공된다. 실제 사용률(237)에 응답하여, 실제 사용률(237)이 변경가능한 목표 사용률(238)과 동일하게 만들기 위한 시도시, 폐루프 컨트롤러(234)는 조정된 사용률(236)을 변경시킨다.
폐 루프 컨트롤러(204, 214, 224 및 234)는 하드웨어 또는 소프트웨어 또는 그 조합으로 구현될 수 있다. 더욱 일반적으로, 폐 루프 컨트롤러(204, 214, 224 및 234)는 캐스케이드 보상 또는 피드백 보상을 수행할 수 있다. 캐스케이드 보상의 예는 비례 적분(PI) 제어, 비례 미분(PD) 제어, 및 비례 적분 미분(PID) 제어이다. 폐 루프 튜닝(tuning)의 예는 수동 튜닝, 지글러-니콜스 튜닝(Ziegler-nichols tuning), 티리우스-루이벤 튜닝(Tyreus Luyben tuning), 소프트웨어 도구 튜닝, 및 코헨-쿤 튜닝(Cohen-Coon tuning)이다.
사용률 테스트 애플리케이션(4)의 예가 4차원의 리소스 로드를 나타내고 있지만, 다른 예들은 3, 2, 1 또는 4 이상을 포함할 수 있다. 다른 예는 리소스 로드의 특정 차원을 특정 차원의 리소스 로드의 상이한 특성으로 나눌 수 있다.
도7은 특정 컴퓨터 리소스의 실제 사용률을 포함하는 상이한 부품의 단순화된 표현이다.
특정 컴퓨터 리소스에 대한 실제 사용률(301)은 예를 들어, 도6의 실제 사용률(207, 217, 227 또는 237)일 수 있다. 실제 사용률은 특정 컴퓨터 리소스(310)에 대해 조정된 사용률분만 아니라, 추가적인 사용률 기여도도 포함한다. 특정 컴퓨터 리소스에 대해 조정된 사용률(301)은, 예를 들어, 도6의 조정된 사용률(206, 216, 226, 또는 236)일 수 있다.
다른 차원의 컴퓨터 로드에 대한 로드 생성기 폐 루프로부터 몇 개의 도시된 기여도가 발생한다. 예를 들어, 특정 컴퓨터 리소스에 대한 실제 사용률(301)이 프로세서 로드 차원에 대한 실제 사용률(237)인 예에서, 컴퓨터 로드의 프로세서 로드 차원에 대한 추가 기여도는 네트워크 사용률 차원, 대용량 저장장치 사용률 차원, 및/또는 메인 메모리 사용률 차원에 대한 로드 생성기 폐 루프로부터 온다. 이러한 추가적인 기여도는 특정 컴퓨터 리소스(예를 들어, 프로세서 로드 차원)(320, 330, 및 340)에 대한 사용률 기여도로서 도시되고, 상이한 컴퓨터 리소스 #1 321(예를 들어, 네트워크 사용률 차원)에 대한 실제 사용률, 상이한 컴퓨터 리소스 #2 331(예를 들어, 대용량 저장장치 차원)에 대한 실제 사용률, 및 상이한 컴퓨터 리소스 #3 341(예를 들어, 메인 메모리 사용률 차원)에 대한 실제 사용률으로부터 각각 발생한다.
다른 도시된 기여도는 사용률 테스트의 외부 또는 심지어 완전히 컴퓨터의 외부로부터 발생한다. 특정 컴퓨터 리소그(350, 360, 및 370)에 대한 사용률은 사용률 테스트(351) 외부의 가상 머신상의 프로세스, 사용률 테스트(361) 외부의 물리적 머신상의 프로세스, 및 가상 머신(371) 외부의 물리적 서버상의 프로세스로부터 각각 발생한다. 엄격하게 말하면, 사용률 테스트(351) 외부의 가상 머신상의 프로세스, 사용률 테스트(361) 외부의 물리적 머신상의 프로세스, 및 가상 머신(371) 외부의 물리적 서버상의 프로세스는 리소스 가용성의 최대 한도를 나타낼 수 있다. 그러나, 이러한 최대 한도는 음의(negative) 기여도에 의해 설명될 수 있다.
도8은 개방 루프 로드 생성기에 대한 폐 루프 로드 생성기의 우수한 성능을 시간에 대해 나타내는 그래프이다.
이 그래프는 10% CPU 사용률에서 120초 지속기간 동안, 고유 CPU 로드 생성기(개방 루프(420)) 대 PID 제어된 CPU 로드 생성기(폐 루프(410))의 초기 비교를 나타낸다. x-축은 시간을 나타내고 y-축은 관찰된 에러를 나타낸다. 이 경우, 양의 에러는 불충분한 CPU 로드를 나타내고 음의 에러는 과도한 CPU 로드를 나타낸다. 양쪽 컨트롤러는 정상 시스템 변화로 인한 평균 에러 값 근처로 바운스(bounce)한다. 그러나, 평균 PID 컨트롤된 에러는 분명히 개방 루프 경우보다 0에 훨씬 가깝다.
도9는 CPU의 다양한 변경가능한 목표 사용률에 대한 개방 루프 로드 생성기에 대한 폐 루프 로드 생성기의 우수한 성능을 나타내는 그래프이다.
도8과 동일한 비교가 목표 CPU 로드에 대해 이뤄진다. 이번에는, x 축은 목표 로드이고, y축은 테스트 지속 기간동안 관찰돠는 평균 에러 값이다. 에러 바(error bar)는 테스트 실행 도중에 관찰되는 최대 및 최소 에러 값을 표시한다. 거의 모든 PID 경우(폐 루프(510))의 평균 에러 값은 0인 반면, 고유 CPU 생성기(개방 루프(520))은 목표 로드 CPU에 따르는 분명한 바이어스를 갖는다. 또하느 두 생성기는 0% 및 100% 로드에서 거의 동일하게 수행된다.
도10은 동시에 다수의 차원의 컴퓨터 리소스 로드의 성능을 나타내는 그래프이다.
이 그래프는 가볍게 로딩된 하이퍼바이저(hypervisor)상의 가상 머신 내부의 유니커널 기반 로드 생성기를 사용하여 세 개의 로드 생성기를 실행할 때 측정된 에러(그래프의 분산 백분률)를 나타내는 그래프이다.
생성기는 다음과 같이 구성되었다:
CPU 사용률(트레이스 650): 50%
메모리 읽기(트레이스 610) : 1000MB/s
메모리 쓰기(트레이스 620) : 100MB/s
디스크 읽기(트레이스 630) : 20MB/s
디스크 쓰기(트레이스 640) : 2MB/s
모든 결과 카테고리에는 약간의 차이가 있지만, 평균 에러는 0이다. 또한, 이것은 다수의 로드 생성기가 동시에 작동하여 시간에 따라 정확한 로드를 생성할 수 있다는 것을 나타낸다.
도11은 충분한 근본 리소스를 구비한 가상 머신에서의 CPU 로드 에러의 히스토그램이다.
로드 생성 기술은 원하는 성능 수준을 제공하기 위해 하이퍼바이저 플랫폼의 능력을 비교한다. 우리의 테스트 도구에 특정 로드를 구성함으로써, 리소스 사용률 테스트 애플리케이션은 하이퍼바이저가 리소스 계산 양을 테스트 도구에 제공할 수 있는지 여부를 결정할 수 있다.
이 첫번째 히스토그램은 가볍게 로딩된 하이퍼바이저상의 유니커널 기반 로드 생성기에 대해 측정된 CPU 로드 에러의 범위를 나타낸다. 이 테스트에 대한 평균 에러는 0%(전술된 초기 테스트에서처럼). 또한, 히스토그램은 0% 에러 주변의 에러 값의 빽빽한 클러스터링을 나타낸다.
도12는 불충분한 근본 리소스를 구비한 가상 머신에서의 CPU 로드 에러의 히스토그램이다.
이 두 번째 구성은 동일한 테스트 구성을 나타내지만, 오버로딩된 하이퍼바이저상에서 실행한다. 측정된 에러는 이 테스트 시스템상의 많이 큰 변형을 갖는다. 또한, 이 테스트 실행에 대한 평균 에러는 ~ -5%이고, PID 제어된 로드 생성기는 CPU 리소스의 결여로 인해 원하는 로드를 생성시킬 수 없었다는 것을 나타낸다.
도13은 상이한 물리적 서버상의 가상 머신의 다수의 인스턴스에서 실행되는 리소스 사용률 테스트 애플리케이션을 구비한 데이터 센터 클라우드의 단순화된 블록도이다.
네트워크(700)는 물리적 서버(710) 및 물리적 서버(740)와 같은 다수의 물리적 서버를 포함한다. 각각의 물리적 서버는 물리적 서버(710)상의 가상 머신 OS(720 및 721), 및 물리적 서버(740)상의 가상 머신 OS(750 및 7510)와 같은 다수의 가상 머신 인스턴스를 지원한다. 각각의 가상 머신은 각각의 가상 머신 OS(720, 721, 750, 및 751) 상의 리소스 사용률 테스트 애플리케이션(730, 731, 760, 및 761)과 같은, 리소스 사용률 테스트 애플리케이션을 지원한다. 2개의 가상 머신만 이 예에 도시되어 있지만, 각각의 물리적 서버는 임의의 수의 가상 머신을 지원할 수 있다.
일 실시예에서, 컨트롤 소프트웨어는 원격으로 리소스 사용률 테스트 애플리케이션을 설치한다(가상 머신을 따라, 그렇지 않으면 가상 머신이 이미 설치되어 있다). 그 다음에 컨트롤 소스트웨어는 물리적 서버의 전부(또는 일부 서브셋)상의 가상 머신의 전부(또는 일부 서브셋)상에서 리소스 사용률 테스트 애플리케이션의 전부(또는 일부 서브셋)을 실행하고 결과를 모은다. 최종 출력은 상이한 차원의 컴퓨터 로드에 대해 많은 가상 머신을 지원하는 데이터센터 클라우드의 전체 용량을 표시할 수 있다.
도14는 일 구현예에 따르는, 예시적인 컴퓨터 시스템의 블록도이다. 컴퓨터 시스템(910)은 일반적으로 서브시스템(912)을 거쳐 다수의 주변 장치와 통신하는 적어도 하나의 프로세서(914)를 포함한다. 이 주변 장치는 예를 들어 메모리 장치 및 파일 저장 서브시스템, 사용자 인터페이스 입력 장치(922), 사용자 인터페이스 출력 장치(920), 및 네트워크 인터페이스 서브시스템(916)을 포함하는 저장 서브시스템을 포함할 수 있다. 입력 및 출력 장치는 컴퓨터 시스템(910)과의 사용자 상호작용을 허용한다. 네트워크 인터페이스 서브시스템(916)은 다른 컴퓨터 시스템의 인터페이스 장치에 해당하는 인터페이스를 포함하는, 외부 네트워크에 인터페이스를 제공한다.
사용자 인터페이스 입력 장치(922)는 키보드; 마우스, 트랙볼, 터치패드, 또는 그래픽 타블렛과 같은 포인팅 장치; 스캐너; 디스플레이에 통합된 터치 스크린; 음성 인식 시스템 및 마이크와 같은 오디오 입력 장치; 및 다른 유형의 입력 장치를 포함할 수 있다. 일반적으로, 용어 "입력 장치"의 사용은 컴퓨터 시스템(910)에 정보를 입력하기 위한 모든 가능한 유형의 장치 및 방법을 포함하기 위한 것이다.
사용자 인터페이스 출력 장치(920)는 서브시스템, 프린터, 팩스 기계, 또는 오디오 출력 장치와 같은 비-시각적 디스플레이를 포함할 수 있다. 디스플레이 서브시스템은 음극선관(cathode ray tube, CRT), 액정 디스플레이(LCD)와 같은 평면판(flat-panel) 디스플레이, 투사 장치, 또는 시각적 이미지를 생성하기 위한 다른 메커니즘을 포함할 수 있다. 디스플레이 서브시스템은 오디오 출력 장치와 같은 비-시각적 디스플레이를 또한 제공할 수 있다. 일반적으로, 용어 "출력 장치"의 사용은 컴퓨터 시스템(910)으로부터 사용자 또는 다른 머신 또는 컴퓨터 시스템에 정보를 출력하기 위한 모든 가능한 유형의 장치 및 방법을 포함하기 위한 것이다.
저장 서브시스템(924)은 데이터는 여기에 기재된 모듈 및 방법의 전부 또는 일부의 기능을 제공하는 데이터 구성 및 프로그래밍을 저장한다. 이 소프트웨어 모듈은 일반적으로 프로세서(914) 단독으로 또는 다른 프로세서와 조합하여 실행된다.
저장 서브시스템에 사용된 메모리(926)는 프로그램 실행 도중에 명령 및 데이터의 저장을 위한 메인 임의 접근 메모리(RAM, 930) 및 고정된 명령이 안에 저장되는 읽기 전용 메모리(ROM, 932)를 포함하는 다수의 메모리를 포함할 수 있다. 파일 저장 서브시스템(928)은 프로그램 및 데이터 파일에 대한 영구 저장장치를 제공할 수 있고, 하드 디스크 드라이브, 관련된 제거가능한 미디어와 플로피 디스크 드라이브, CD-ROM 드라이브, 광학 드라이브, 또는 제거가능한 미디어 카트리지를 포함할 수 있다. 특정 구현예의 기능을 구현하는 모듈은 저장 서브시스템(924) 안에 또는 프로세서에 의해 접근가능한 다른 머신안에 파일 저장 서브시스템(928)에 의해 저장될 수 있다.
버스 서브시스템(912)은 컴퓨터 시스템의 다양한 부품 및 서브시스템이 의도된 대로 서로 통신하도록 하는 메커니즘을 제공한다. 버스 서브시스템(912)이 단일 버스로서 개략적으로 도시되어 있기는 하지만, 버스 서브시스템의 다른 구현예는 다수의 버스를 사용할 수 있다.
컴퓨터 시스템(910)은 워크스테이션, 서버, 컴퓨팅 클러스터, 블레이드 서버(blade server), 서버 팜(server farm), 또는 임의의 다른 데이터 프로세싱 시스템 또는 컴퓨팅 장치를 포함하는 다양한 유형의 것일 수 있다. 컴퓨터 및 네트워크의 전혀 변하지 않은 본성으로 인해, 도9에 도시된 컴퓨터 시스템(910)의 설명은 단지 예로서 의도된 것이다. 컴퓨터 시스템(910)의 많은 다른 예는 도9에 도시된 컴퓨터 시스템보다 많거나 적은 부품을 가질 수 있다.
특정 구현예
본 기술의 일 양태는 다수의 차원의 컴퓨터 리소스 로드의 용량을 테스트하기 위해 다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법이다.
이 방법은 제1 컴퓨터상에서 다수의 차원의 리소스 로드를 생성하는 사용률 테스트를 제1 컴퓨터상에서 실행하는 단계를 포함한다.
다수의 차원은 프로세서 사용률 차원, 메인 메모리 사용률 차원, 대용량 저장장치 사용률 차원, 및 네트워크 사용률 차원 중 적어도 둘을 포함한다.
둘 이상의 다수의 차원 중 각각의 차원에 대해, 사용률 테스트는, 제1 컴퓨터상의 상기 각각의 차원의 리소스 로드의 변경가능한 목표 사용률과 동일한 양으로 제1 컴퓨터상의 상기 각각의 차원의 리소스 로드를 생성하기 위한 반복적인 시도를 수행한다.
이 사용률 테스트는 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 실제 사용률을 측정한다.
실제 사용률은 적어도;
(ⅰ) 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 조정된 사용률로서, 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나에 대한 사용률 테스트에 의해 생성되는 조정된 사용률.
(ⅱ) 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나에 대한 제1 사용률 기여도로서, 제1 컴퓨터상의 사용률 테스트 외부에서 생성되는 사용률 기여로.
의 조합이다.
제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나는 상기 둘 이상의 다수의 차원 중 하나이어서, 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나는 변경가능한 목표 사용률을 갖는다.
사용률 테스트는 (ⅰ) 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 실제 사용률, 및 (ⅱ) 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 변경가능한 목표 사용률 사이의 격차(inequality)에 대한 수정을 시도하기 위해 조정된 사용률을 조정한다.
일 실시예에서 반복 중 뒤의 것은 반복 중 앞의 것 다음의 것이다. 반복 중 앞의 것에서, 사용률 테스트는 실제 사용률을 측정하고, 응답시, 반복의 뒤의 것에서 사용률 테스트는 조정된 사용률을 조정한다.
일 실시예에서, 반복 중 뒤의 것은 반복 중 앞의 것 다음의 것이다. 반복 중 앞의 것에서, 사용률 테스트는 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 실제 사용률을 측정하고, 응답시, 반복의 뒤의 것에서 사용률 테스트는 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 조정된 사용률을 조정한다.
일 실시예에서 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 실제 사용률은 적어도:
(ⅰ) 조정된 사용률,
(ⅱ) 제1 사용률 기여도, 및
(ⅲ) 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 다른 하나의 제2 사용률 기여도로서, 다수의 차원 중 다른 하나에 대한 사용률 테스트에 의해 생성되는 제2 사용률 기여도
의 조합이다.
일 실시예에서 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나는 프로세서 사용률 차원이고, 다수의 차원 중 상기 다른 하나는 메인 메모리 사용률 차원, 대용량 저장장치 사용률 차원, 및 네트워크 사용률 차원 중 임의의 것이다.
일 실시예에서 둘 이상의 다수의 차원은 다수의 차원 중 특정한 하나 및 제1 컴퓨터상의 다수의 차원의 리소스 로드중 다른 하나를 포함한다. 다수의 차원 중 상기 다른 하나에 대한 사용률 테스트에 의해 측정된 실제 사용률은 적어도:
(ⅰ) 다수의 차원 중 다른 하나에 대한 사용률 테스트에 의해 생성되는, 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 상기 다른 하나의 조정된 사용률; 및
(ⅱ) 제1 컴퓨터상의 사용률 테스트 외부에 생성되는 제1 컴퓨터상의 다른 제1 사용률 기여도
의 조합이다.
일 실시예에서, 사용률 테스트는 제1 컴퓨터상의 다수의 차원의 리소스 로드중 상이한 하나에 대해, 변경가능한 목표 사용률, 실제 사용률, 조정된 사용률, 및 제1 사용률 기여도의 상이한 값을 저장하는 능력을 갖는다.
일 실시예에서, 다수의 차원은 OS의 기본 움직임(behavior)을 측정한다.
일 실시예에서, 제1 컴퓨터는 물리적 컴퓨터이다.
일 실시예에서, 제1 컴퓨터는 물리적 컴퓨터상의 가상 머신이다.
일 실시예에서, 반복 중 뒤의 것에서, 조정된 사용률은 물리적 컴퓨터의 리소스에 접근시 변화를 겪는 가상 머신에 대한 수정을 시도하도록 추가로 조정된다.
일 실시예에서, 사용률 테스트는 제1 컴퓨터상의 유니커널 운영 체계에서 실행된다.
일 실시예에서, 사용률 테스트는 범용 운영 체계에서 실행된다.
일 실시예에서, 상이한 차원에 대해 변경가능한 목표 사용률은 시간에 따라 변화하고, 사용률 테스트는 변경가능한 목표 사용률이 변경되는 것에 반응하여 새로운 세트의 반복을 수행한다.
일 실시예에서, 상이한 차원에 대해 변경가능한 목표 사용률은 사용자에 의해 결정된다.
일 실시예에서, 상이한 차원에 대해 변경가능한 목표 사용률은 알고리즘에 의해 자동으로 결정된다.
일 실시예는 다수의 차원에 대해 변경가능한 목표 사용률과 실제 사용률 사이의 차이 및 실제 사용률을 보고하는 단계를 추가로 포함한다.
일 실시예에서, 사용률 테스트는, 제1 컴퓨터상의 다수의 차원의 리소스 로드에 대한 변경가능한 목표 사용률 실현의 시도시, 제1 컴퓨터의 다수의 차원의 리소스 로드에 대한 실제 사용률을 야기하는 PID 컨트롤러 출력을 구비한 PID 컨트롤러 루프를 포함한다.
이 기술의 다른 양태는 다수의 차원의 컴퓨터 리소스 로드의 용량을 테스트하기 위해 다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법이다.
이 방법은 제1 컴퓨터상의 다수의 차원의 리소스 로드를 생성하는 사용률 테스트를 제1 컴퓨터상에서 실행하는 단계를 포함한다.
다수의 차원은: 프로세서 사용률 차원, 메인 메모리 사용률 차원, 대용량 저장 사용률 차원, 및 네트워크 사용률 차원 중 적어도 둘을 포함한다.
둘 이상의 다수의 차원 중 각각의 차원에 대해, 사용률 테스트는, PID 컨트롤러를 사용하여, 제1 컴퓨터상의 각각의 차원의 리소스 로드의 변경가능한 목표 사용률과 동일한 양으로, 제1 컴퓨터상의 리소스 각각의 차원의 리소스 로드를 생성하는 시도의 반복을 수행한다.
이 기술의 다른 양태는 프로세서, 메모리, 및 여기에 기재된 방법을 구현하는 메모리안의 명령을 포함하는, 다수의 차원의 컴퓨터 리소스 로드의 가용성을 조정가능하게 테스트하기 위해 다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하도록 구성되는 장비이다.
이 기술의 다른 양태는 다수의 차원의 컴퓨터 리소스 로드의 용량을 테스트하기 위해 다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하기 위한 비-일시적 컴퓨터-판독가능 매체 저장 코드이다.
여기에 개시된 기술의 이 방법 및 다른 구현예는 하나 이상의 다음 특징적 구성 및/또는 개시된 추가 방법과 연결하여 기재된 특징적 구성을 포함할 수 있다.
간략화를 위해, 본 출원서에 개시된 특징적 구성의 조합은 개별적으로 열거되지 않으며, 각각의 기본 세트의 특징적 구성으로 반복되지 않는다.
다른 구현예는 컴퓨터가 전술된 임의의 방법을 구현하게 하는 컴퓨터 프로그램 명령을 포함하는 유형의 컴퓨터-판독가능 메모리를 포함할 수 있다. 또 다른 구현예는 전술된 임의의 방법을 수행하기 위해, 메모리 및 메모리 안에 저장된 명령을 실행하도록 동작할 수 있는 하나 이상의 프로세서를 포함하는 시스템을 포함할 수 있다.
하기의 구절들은 다수의 차원의 컴퓨터 리소스 로드의 용량을 테스트하기 위해 다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 다양한 예의 양태를 설명한다.
1. 다수의 차원의 컴퓨터 리소스 로드의 용량을 테스트하기 위해 다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법으로서,
제1 컴퓨터상의 다수의 차원의 리소스 로드를 생성하는 사용률 테스트를 제1 컴퓨터상에서 실행하는 단계를 포함하고,
다수의 차원은 프로세서 사용률 차원, 메인 메모리 사용률 차원, 대용량 저장장치 사용률 차원, 및 네트워크 사용률 차원 중 적어도 둘을 포함하고,
둘 이상의 다수의 차원 중 각각의 차원에 대해, 사용률 테스트는 제1 컴퓨터상의 각각의 차원의 리소스 로드의 변경가능한 목표 사용률과 동일한 양으로, 제1 컴퓨터상의 각각의 차원의 리소스 로드를 생성하기 위한 시도의 반복을 수행하고,
사용률 테스트는 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 실제 사용률을 측정하고,
실제 사용률은 적어도:
제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나에 대한 사용률 테스트에 의해 생성된, 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의, 조정된 사용률; 및
제1 컴퓨터상에 생성되고, 제1 컴퓨터상의 사용률 테스트 외부에 생성된, 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나에 대한 제1 사용률 기여도
의 조합이고,
제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나는 둘 이상의 다수의 차원 중 하나이어서, 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나는 변경가능한 목표 사용률을 갖고,
사용률 테스트는 (ⅰ) 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 실제 사용률, 및 (ⅱ) 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 변경가능한 목표 사용률 사이의 격차(inequality)에 대한 수정을 시도하기 위해 조정된 사용률을 조정한다.
2. 반복 중 뒤의 것은 반복 중 앞의 것 다음의 것이고, 반복 중 앞의 것에서, 사용률 테스트는 실제 사용률을 측정하고, 응답시, 반복의 뒤의 것에서 사용률 테스트는 조정된 사용률을 조정하는 제1절의 방법.
3. 반복 중 뒤의 것은 반복 중 앞의 것 다음의 것이고, 반복 중 앞의 것에서, 사용률 테스트는 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 실제 사용률을 측정하고, 응답시, 반복 중 뒤의 것에서 사용률 테스트는 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 조정된 사용률을 조정하는 제1-2절의 방법.
4. 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 실제 사용률은 적어도:
조정된 사용률,
제1 사용률 기여도, 및
제1 컴퓨터상의 다수의 차원의 리소스 로드 중 다른 하나의 제2 사용률 기여도로서, 다수의 차원 중 다른 하나에 대한 사용률 테스트에 의해 생성되는 제2 사용률 기여도
의 조합인, 제1-3절의 방법.
5. 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나는 프로세서 사용률 차원이고, 다수의 차원 중 상기 다른 하나는 메인 메모리 사용률 차원, 대용량 저장장치 사용률 차원, 및 네트워크 사용률 차원 중 임의의 것인, 제4절의 방법.
6. 둘 이상의 다수의 차원은 다수의 차원 중 특정한 하나 및 제1 컴퓨터상의 다수의 차원의 리소스 로드중 다른 하나를 포함하고, 다수의 차원 중 상기 다른 하나에 대한 사용률 테스트에 의해 측정된 실제 사용률은 적어도:
다수의 차원 중 상기 다른 하나에 대한 사용률 테스트에 의해 생성되는, 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 상기 다른 하나의 조정된 사용률; 및
제1 컴퓨터상의 사용률 테스트 외부에 생성되는 제1 컴퓨터상의 다른 제1 사용률 기여도
의 조합인, 임의의 선행 절의 방법.
7. 사용률 테스트는 제1 컴퓨터상의 다수의 차원의 리소스 로드중 상이한 하나에 대해, 변경가능한 목표 사용률, 실제 사용률, 조정된 사용률, 및 제1 사용률 기여도의 상이한 값을 저장하는 능력을 갖는, 임의의 선행 절의 방법.
8. 다수의 차원은 OS의 기본 움직임(behavior)을 측정하는, 임의의 선행 절의 방법.
9. 제1 컴퓨터는 물리적 컴퓨터인, 제1-8절의 방법.
10. 제1 컴퓨터는 물리적 컴퓨터상의 가상 머신인, 제1-8절의 방법.
11. 반복 중 뒤의 것에서, 조정된 사용률은 물리적 컴퓨터의 리소스에 접근시 변화를 겪는 가상 머신에 대한 수정을 시도하도록 추가로 조정되는, 제10절의 방법.
12. 사용률 테스트는 제1 컴퓨터상의 유니커널 운영 체계에서 실행되는, 임의의 선행 절의 방법.
13. 사용률 테스트는 범용 운영 체계에서 실행되는, 임의의 선행 절의 방법.
14. 변경가능한 목표 사용률은 제1 컴퓨터상의 다수의 차원 중 특정한 하나의 완전 사용률과 비-사용률 사이의 중간 값으로 변경가능한, 임의의 선행 절의 방법.
15. 상이한 차원에 대해 변경가능한 목표 사용률은 시간에 따라 변화하고, 사용률 테스트는 변경가능한 목표 사용률이 변경되는 것에 반응하여 새로운 세트의 반복을 수행하는, 임의의 선행 절의 방법.
16. 상이한 차원에 대해 변경가능한 목표 사용률은 사용자에 의해 결정되는, 임의의 선행 절의 방법.
17. 상이한 차원에 대해 변경가능한 목표 사용률은 알고리즘에 의해 자동으로 결정되는, 제1-15절의 방법.
18. 다수의 차원에 대해 변경가능한 목표 사용률과 실제 사용률 사이의 차이 및 실제 사용률을 보고하는 단계를 추가로 포함하는, 임의의 선행 절의 방법.
19. 사용률 테스트는, 제1 컴퓨터상의 다수의 차원의 리소스 로드에 대한 변경가능한 목표 사용률 실현의 시도시, 제1 컴퓨터의 다수의 차원의 리소스 로드에 대한 실제 사용률을 야기하는 PID 컨트롤러 출력을 구비한 PID 컨트롤러 루프를 포함하는, 임의의 선행 절의 방법.
20. 다수의 차원의 컴퓨터 리소스 로드의 용량을 테스트하기 위해 다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법으로서,
제1 컴퓨터상의 다수의 차원의 리소스 로드를 생성하는 사용률 테스트를 제1 컴퓨터상에서 실행하는 단계를 포함하고,
다수의 차원은 프로세서 사용률 차원, 메인 메모리 사용률 차원, 대용량 저장장치 사용률 차원, 및 네트워크 사용률 차원 중 적어도 둘을 포함하고,
둘 이상의 다수의 차원 중 각각의 차원에 대해, 사용률 테스트는 제1 컴퓨터상의 각각의 차원의 리소스 로드의 변경가능한 목표 사용률과 동일한 양으로, 제1 컴퓨터상의 각각의 차원의 리소스 로드를 생성하기 위한 시도의 반복을 PID 컨트롤러를 사용하여 수행한다.
21. 다수의 차원의 컴퓨터 리소스 로드의 가용성을 조정가능하게 테스트하기 위해 다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하도록 구성되는 장비로서,
프로세서, 메모리, 및 제1 컴퓨터상의 다수의 차원의 리소스 로드를 생성하는 사용률 테스트를 제1 컴퓨터상에서 실행하는 메모리안의 명령을 포함하는 제1 컴퓨터를 포함하고,
다수의 차원은 프로세서 사용률 차원, 메인 메모리 사용률 차원, 대용량 저장장치 사용률 차원, 및 네트워크 사용률 차원 중 적어도 둘을 포함하고,
둘 이상의 다수의 차원 중 각각의 차원에 대해, 사용률 테스트는 제1 컴퓨터상의 각각의 차원의 리소스 로드의 변경가능한 목표 사용률과 동일한 양으로, 제1 컴퓨터상의 각각의 차원의 리소스 로드를 생성하기 위한 시도의 반복을 수행하고,
사용률 테스트는 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 실제 사용률을 측정하고,
실제 사용률은 적어도:
다수의 차원의 리소스 로드 중 상기 특정한 하나에 대한 사용률 테스트에 의해 생성되는, 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 조정된 사용률; 및
제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나에 대한 제1 사용률 기여도, 제1 컴퓨터상에 생성된 제1 사용률 기여도, 제1 컴퓨터상의 사용률 테스트 외부에 생성되는 제1 컴퓨터상의 다른 제1 사용률 기여도
의 조합이고,
제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나는 둘 이상의 다수의 차원 중 하나이어서, 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나는 변경가능한 목표 사용률을 갖고,
사용률 테스트는 (ⅰ) 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 실제 사용률, 및 (ⅱ) 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 변경가능한 목표 사용률 사이의 격차(inequality)에 대한 수정을 시도하기 위해 조정된 사용률을 조정한다.
22. 다수의 차원의 컴퓨터 리소스 로드의 용량을 테스트하기 위해 다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하도록 구성되는 장비로서,
프로세서, 메모리, 및 제1 컴퓨터상의 다수의 차원의 리소스 로드를 생성하는 사용률 테스트를 제1 컴퓨터상에서 실행하는 메모리안의 명령을 포함하는 제1 컴퓨터를 포함하고,
다수의 차원은 프로세서 사용률 차원, 메인 메모리 사용률 차원, 대용량 저장장치 사용률 차원, 및 네트워크 사용률 차원 중 적어도 둘을 포함하고,
둘 이상의 다수의 차원 중 각각의 차원에 대해, 사용률 테스트는 제1 컴퓨터상의 각각의 차원의 리소스 로드의 변경가능한 목표 사용률과 동일한 양으로, 제1 컴퓨터상의 각각의 차원의 리소스 로드를 생성하기 위한 시도의 반복을 PID 컨트롤러를 사용하여 수행한다.
개시된 기술은 바람직한 구현예 및 예에 대한 참고로 상세하게 설명되었지만, 이 예들은 제한의 의미라기보다는 예시를 위한 것임을 이해할 것이다. 변형 및 조합은 당업자에게 용이하게 발생할 것으로 예상되며, 변형 및 조합은 개시된 기술의 사상 및 이하의 청구범위의 범주 내에 있을 것이다.
2 : 네트워크
10a, 10y, 10z, 710, 740 : 물리적 서버
19 : 물리적 머신 운영 체계
20, 720, 721 : 가상 머신 운영 체계
28a : 가상 머신 하드웨어
28z : 하드웨어 30a, 30y : 가상화 소프트웨어
40 : 사용자 공간 50 : 범용 운영 체계
52 : 유니커널 운영 체계 202 : 네트워크 I/O 생성기
212 : 대용량 저장장치 I/O 생성기 222 : 메인 메모리 I/O 생성기
232: 프로세서 로드 생성기
204, 214, 224, 234 : 폐루프 컨트롤러
730, 731, 760, 761 : 리소스 사용률 테스트 애플리케이션
910 : 컴퓨터 시스템 914 : 프로세서
916 : 네트워크 인터페이스
920 : 사용자 인터페이스 출력 장치
922 : 사용자 인터페이스 입력 장치 924 : 저장장치 서브시스템
926 : 메모리 서브시스템
928 : 파일 저장장치 서브시스템

Claims (20)

  1. 다수의 차원의 컴퓨터 리소스 로드의 용량을 테스트하기 위해 다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법으로서,
    제1 컴퓨터상의 다수의 차원의 리소스 로드를 생성하는 사용률 테스트를 제1 컴퓨터상에서 실행하는 단계를 포함하고,
    다수의 차원은 프로세서 사용률 차원, 메인 메모리 사용률 차원, 대용량 저장장치 사용률 차원, 및 네트워크 사용률 차원 중 적어도 둘을 포함하고,
    둘 이상의 다수의 차원 중 각각의 차원에 대해, 사용률 테스트는 제1 컴퓨터상의 각각의 차원의 리소스 로드의 변경가능한 목표 사용률과 동일한 양으로, 제1 컴퓨터상의 각각의 차원의 리소스 로드를 생성하기 위한 시도의 반복을 수행하고,
    사용률 테스트는 제1 컴퓨터상의 각각의 차원의 리소스 로드 중 특정한 하나의 실제 사용률을 특정하고,
    실제 사용률은 적어도:
    제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나에 대한 사용률 테스트에 의해 생성된, 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의, 조정된 사용률; 및
    제1 컴퓨터상에 생성되고, 제1 컴퓨터상의 사용률 테스트 외부에 생성된, 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나에 대한 제1 사용률 기여도
    의 조합이고,
    제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나는 둘 이상의 다수의 차원 중 하나이어서, 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나는 변경가능한 목표 사용률을 갖고,
    사용률 테스트는 (ⅰ) 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 실제 사용률, 및 (ⅱ) 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 변경가능한 목표 사용률 사이의 격차(inequality)에 대한 수정을 시도하기 위해 조정된 사용률을 조정하는
    다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법.
  2. 제1항에 있어서,
    반복 중 뒤의 것은 반복 중 앞의 것 다음의 것이고, 반복 중 앞의 것에서, 사용률 테스트는 실제 사용률을 측정하고, 응답시, 반복의 뒤의 것에서 사용률 테스트는 조정된 사용률을 조정하는
    다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법.
  3. 제1항 내지 제2항 중 어느 한 항에 있어서,
    반복 중 뒤의 것은 반복 중 앞의 것 다음의 것이고, 반복 중 앞의 것에서, 사용률 테스트는 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 실제 사용률을 측정하고, 응답시, 반복 중 뒤의 것에서 사용률 테스트는 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 조정된 사용률을 조정하는
    다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 실제 사용률은 적어도: 조정된 사용률,
    제1 사용률 기여도, 및
    제1 컴퓨터상의 다수의 차원의 리소스 로드 중 다른 하나의 제2 사용률 기여도로서, 다수의 차원 중 다른 하나에 대한 사용률 테스트에 의해 생성되는 제2 사용률 기여도
    의 조합인
    다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법.
  5. 제4항에 있어서,
    제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나는 프로세서 사용률 차원이고, 다수의 차원 중 상기 다른 하나는 메인 메모리 사용률 차원, 대용량 저장장치 사용률 차원, 및 네트워크 사용률 차원 중 임의의 것인
    다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법.
  6. 전술한 항 중 어느 한 항에 있어서,
    둘 이상의 다수의 차원은 다수의 차원 중 특정한 하나 및 제1 컴퓨터상의 다수의 차원의 리소스 로드중 다른 하나를 포함하고,
    다수의 차원 중 상기 다른 하나에 대한 사용률 테스트에 의해 측정된 실제 사용률은 적어도:
    다수의 차원 중 상기 다른 하나에 대한 사용률 테스트에 의해 생성되는, 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 상기 다른 하나의 조정된 사용률; 및
    제1 컴퓨터상의 사용률 테스트 외부에 생성되는 제1 컴퓨터상의 다른 제1 사용률 기여도
    의 조합인
    다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법.
  7. 전술한 항 중 어느 한 항에 있어서,
    사용률 테스트는 제1 컴퓨터상의 다수의 차원의 리소스 로드중 상이한 하나에 대해, 변경가능한 목표 사용률, 실제 사용률, 조정된 사용률, 및 제1 사용률 기여도의 상이한 값을 저장하는 능력을 갖는
    다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법.
  8. 전술한 항 중 어느 한 항에 있어서,
    다수의 차원은 OS의 기본 움직임(behavior)을 측정하는
    다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법.
  9. 제1항 내지 제8항 중 어느 한 항에 있어서,
    제1 컴퓨터는 물리적 컴퓨터인
    다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법.
  10. 제1항 내지 제8항 중 어느 한 항에 있어서,
    제1 컴퓨터는 물리적 컴퓨터상의 가상 머신인
    다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법.
  11. 제10항에 있어서,
    반복 중 뒤의 것에서, 조정된 사용률은 물리적 컴퓨터의 리소스에 접근시 변화를 겪는 가상 머신에 대한 수정을 시도하도록 추가로 조정되는
    다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법.
  12. 전술한 항 중 어느 한 항에 있어서,
    사용률 테스트는 제1 컴퓨터상의 유니커널 운영 체계에서 실행되는
    다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법.
  13. 전술한 항 중 어느 한 항에 있어서,
    사용률 테스트는 범용 운영 체계에서 실행되는
    다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법.
  14. 전술한 항 중 어느 한 항에 있어서,
    변경가능한 목표 사용률은 제1 컴퓨터상의 다수의 차원 중 특정한 하나의 완전 사용률과 비-사용률 사이의 중간 값으로 변경가능한
    다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법.
  15. 전술한 항 중 어느 한 항에 있어서,
    상이한 차원에 대해 변경가능한 목표 사용률은 시간에 따라 변화하고, 사용률 테스트는 변경가능한 목표 사용률이 변경되는 것에 반응하여 새로운 세트의 반복을 수행하는
    다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법.
  16. 전술한 항 중 어느 한 항에 있어서,
    상이한 차원에 대해 변경가능한 목표 사용률은 사용자에 의해 결정되는
    다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법.
  17. 제1항 내지 제15항 중 어느 한 항에 있어서,
    상이한 차원에 대해 변경가능한 목표 사용률은 알고리즘에 의해 자동으로 결정되는
    다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법.
  18. 전술한 항 중 어느 한 항에 있어서,
    다수의 차원에 대해 변경가능한 목표 사용률과 실제 사용률 사이의 차이 및 실제 사용률을 보고하는 단계를 추가로 포함하는
    다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법.
  19. 전술한 항 중 어느 한 항에 있어서,
    사용률 테스트는, 제1 컴퓨터상의 다수의 차원의 리소스 로드에 대한 변경가능한 목표 사용률 실현의 시도시, 제1 컴퓨터의 다수의 차원의 리소스 로드에 대한 실제 사용률을 야기하는 PID 컨트롤러 출력을 구비한 PID 컨트롤러 루프를 포함하는
    다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 방법.
  20. 다수의 차원의 컴퓨터 리소스 로드의 가용성을 조정가능하게 테스트하기 위해 다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하도록 구성되는 장비로서,
    프로세서, 메모리, 및 제1 컴퓨터상의 다수의 차원의 리소스 로드를 생성하는 사용률 테스트를 제1 컴퓨터상에서 실행하는 메모리안의 명령을 포함하는 제1 컴퓨터를 포함하고,
    다수의 차원은 프로세서 사용률 차원, 메인 메모리 사용률 차원, 대용량 저장장치 사용률 차원, 및 네트워크 사용률 차원 중 적어도 둘을 포함하고,
    둘 이상의 다수의 차원 중 각각의 차원에 대해, 사용률 테스트는 제1 컴퓨터상의 각각의 차원의 리소스 로드의 변경가능한 목표 사용률과 동일한 양으로, 제1 컴퓨터상의 각각의 차원의 리소스 로드를 생성하기 위한 시도의 반복을 수행하고,
    사용률 테스트는 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 실제 사용률을 측정하고,
    실제 사용률은 적어도:
    다수의 차원 중 상기 특정한 하나에 대한 사용률 테스트에 의해 생성되는, 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 조정된 사용률; 및
    제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나에 대한 제1 사용률 기여도, 제1 컴퓨터상에 생성된 제1 사용률 기여도, 제1 컴퓨터상의 사용률 테스트 외부에 생성되는 제1 컴퓨터상의 다른 제1 사용률 기여도
    의 조합이고,
    제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나는 둘 이상의 다수의 차원 중 하나이어서, 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나는 변경가능한 목표 사용률을 갖고,
    사용률 테스트는 (ⅰ) 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 실제 사용률, 및 (ⅱ) 제1 컴퓨터상의 다수의 차원의 리소스 로드 중 특정한 하나의 변경가능한 목표 사용률 사이의 격차(inequality)에 대한 수정을 시도하기 위해 조정된 사용률을 조정하는
    다수의 차원의 컴퓨터 리소스 로드를 조정가능하게 생성하는 장비.
KR1020187009630A 2015-09-30 2016-09-30 다수의 차원의 컴퓨터 로드의 정확한 생성 KR101925762B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/871,676 2015-09-30
US14/871,676 US9894150B2 (en) 2015-09-30 2015-09-30 Accurate generation of multiple dimensions of computer load
PCT/US2016/055003 WO2017059361A1 (en) 2015-09-30 2016-09-30 Accurate generation of multiple dimensions of computer load

Publications (2)

Publication Number Publication Date
KR20180039745A true KR20180039745A (ko) 2018-04-18
KR101925762B1 KR101925762B1 (ko) 2018-12-05

Family

ID=57206357

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187009630A KR101925762B1 (ko) 2015-09-30 2016-09-30 다수의 차원의 컴퓨터 로드의 정확한 생성

Country Status (6)

Country Link
US (2) US9894150B2 (ko)
EP (1) EP3356939B1 (ko)
JP (1) JP2018532194A (ko)
KR (1) KR101925762B1 (ko)
CN (1) CN108139943B (ko)
WO (1) WO2017059361A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10387509B2 (en) * 2014-07-30 2019-08-20 Microsoft Technology Licensing, Llc Behavior influenced search ranking
US11449365B2 (en) * 2016-01-04 2022-09-20 Trilio Data Inc. Ubiquitous and elastic workload orchestration architecture of hybrid applications/services on hybrid cloud
US10171297B2 (en) * 2016-07-07 2019-01-01 Honeywell International Inc. Multivariable controller for coordinated control of computing devices and building infrastructure in data centers or other locations
US10579511B2 (en) * 2017-05-10 2020-03-03 Bank Of America Corporation Flexible testing environment using a cloud infrastructure—cloud technology
FR3073298B1 (fr) * 2017-11-09 2021-01-22 Bull Sas Procede et dispositif de recherche de marge d’optimisation de ressources d’une chaine applicative
US10877786B1 (en) * 2018-09-28 2020-12-29 Amazon Technologies, Inc. Managing compute resource usage based on prior usage
US10884778B1 (en) 2018-09-28 2021-01-05 Amazon Technologies, Inc. Adjusting dynamically scalable instance hosting based on compute resource usage

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100023736A (ko) * 2008-08-22 2010-03-04 인터내셔널 비지네스 머신즈 코포레이션 분산된 환경에서의 계층화된 용량 구동 권한설정
US20110202925A1 (en) * 2010-02-18 2011-08-18 International Business Machines Corporation Optimized capacity planning
US20140068335A1 (en) * 2012-08-31 2014-03-06 Ca, Inc. Dynamic load calculation and predictive scaling
US20150192907A1 (en) * 2012-01-17 2015-07-09 Fisher-Rosemount Systems, Inc. Reducing controller updates in a control loop

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005063222A (ja) * 2003-08-15 2005-03-10 Nippon Telegr & Teleph Corp <Ntt> 負荷制御方法および装置、ならびに負荷制御用プログラム
US7275020B2 (en) * 2003-12-23 2007-09-25 Hewlett-Packard Development Company, L.P. Method and system for testing a computer system by applying a load
US7487258B2 (en) * 2004-01-30 2009-02-03 International Business Machines Corporation Arbitration in a computing utility system
US20070250837A1 (en) * 2006-04-24 2007-10-25 Herington Daniel E System and method for adjusting multiple resources across multiple workloads
US20090271152A1 (en) * 2008-04-28 2009-10-29 Alcatel Load testing mechanism for server-based applications
US8402140B2 (en) * 2010-01-13 2013-03-19 Nec Laboratories America, Inc. Methods and apparatus for coordinated energy management in virtualized data centers
JP5549237B2 (ja) 2010-01-21 2014-07-16 富士通株式会社 試験環境構築プログラム、試験環境構築方法、及び試験装置
WO2011105091A1 (ja) 2010-02-26 2011-09-01 日本電気株式会社 制御装置、管理装置、制御装置のデータ処理方法、およびプログラム
US20130179144A1 (en) * 2012-01-06 2013-07-11 Frank Lu Performance bottleneck detection in scalability testing
US9411622B2 (en) * 2013-06-25 2016-08-09 Vmware, Inc. Performance-driven resource management in a distributed computer system
US9283672B1 (en) * 2014-12-11 2016-03-15 Apkudo, Llc Robotic testing device and method for more closely emulating human movements during robotic testing of mobile devices
US10193984B2 (en) * 2015-12-01 2019-01-29 Telefonaktiebolaget Lm Ericsson (Publ) Architecture for enabling fine granular service chaining

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100023736A (ko) * 2008-08-22 2010-03-04 인터내셔널 비지네스 머신즈 코포레이션 분산된 환경에서의 계층화된 용량 구동 권한설정
US20110202925A1 (en) * 2010-02-18 2011-08-18 International Business Machines Corporation Optimized capacity planning
US20150192907A1 (en) * 2012-01-17 2015-07-09 Fisher-Rosemount Systems, Inc. Reducing controller updates in a control loop
US20140068335A1 (en) * 2012-08-31 2014-03-06 Ca, Inc. Dynamic load calculation and predictive scaling

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Pingyu Zhang 외 2명. 'Automatic generation of load tests'. Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering, 2011.11, pp.43-52. *

Also Published As

Publication number Publication date
EP3356939B1 (en) 2019-11-06
WO2017059361A1 (en) 2017-04-06
US10536516B2 (en) 2020-01-14
CN108139943B (zh) 2020-05-12
KR101925762B1 (ko) 2018-12-05
US9894150B2 (en) 2018-02-13
US20180124164A1 (en) 2018-05-03
US20170093962A1 (en) 2017-03-30
CN108139943A (zh) 2018-06-08
JP2018532194A (ja) 2018-11-01
EP3356939A1 (en) 2018-08-08

Similar Documents

Publication Publication Date Title
KR101925762B1 (ko) 다수의 차원의 컴퓨터 로드의 정확한 생성
CN113330723B (zh) 混合计算环境中的补丁管理
AU2016259298B2 (en) Machine for development and deployment of analytical models
EP3182280B1 (en) Machine for development of analytical models
Ye et al. Profiling-based workload consolidation and migration in virtualized data centers
US9477532B1 (en) Graph-data partitioning for workload-balanced distributed computation with cost estimation functions
Bu et al. Coordinated self-configuration of virtual machines and appliances using a model-free learning approach
Gunther et al. Hadoop superlinear scalability
US20160342443A1 (en) Optimizing virtual machine memory sizing for cloud-scale application deployments
Henning et al. A configurable method for benchmarking scalability of cloud-native applications
US20140196054A1 (en) Ensuring performance of a computing system
CA2650531A1 (en) Method, program and apparatus for optimizing configuration parameter set of system
US20090037879A1 (en) Method and system for integrating model-based and search-based automatic software configuration
Cheng et al. Tuning configuration of apache spark on public clouds by combining multi-objective optimization and performance prediction model
Lieber et al. The potential of diffusive load balancing at large scale
Bhatele et al. Applying graph partitioning methods in measurement-based dynamic load balancing
Canon et al. Wrekavoc: a tool for emulating heterogeneity
Di Sanzo et al. Providing transaction class-based qos in in-memory data grids via machine learning
Mosa et al. Towards a cloud native big data platform using micado
JP2023541510A (ja) コンテナ化されたアプリケーションの展開を最適化するためのシステム、方法、及びサーバ
Wang et al. Speeding up profiling program’s runtime characteristics for workload consolidation
Surya et al. Dynamic resource allocation for distributed Tensorflow training in kubernetes cluster
Iordache et al. Heterogeneous resource selection for arbitrary HPC applications in the cloud
Cheng et al. Towards GPU Memory Efficiency for Distributed Training at Scale
Fernando et al. Autotuning multi-tiered applications for performance

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant