2016-10-06 3 views
-4
input: hostList, utilThreshold 

hostList.sortDecreasingUtilization() 
lastIndex = hostList.indexOfLastNonZeroHostUtilization() 
for i := lastIndex downto 1 
    for j := 1 to i - 1 
    if hostList[j].currentUtil() + hostList[i].currentUtil() <= utilThreshold 
     vmList = hostList[i].getAllVms() 
     host[i].deleteAllVms() 
     host[j].addVms(vmList) 
     break 

이 의사는누구든지이 알고리즘의 조건을 설명 할 수 있습니까?

Green Cloud Computing: Greedy Algorithms for Virtual Machines Migration and Consolidation to Optimize Energy Consumption in a Data Center

에서 Rasoul Beik 이슬람 아자 드 대학 - Khomeinishahr 지점, 이스파한,이란

일부 연구 논문. 나는 종이를 읽을 수 있지만,이 알고리즘의 설명이 없습니다.

이 알고리즘은 최소 호스트 활용 선택, 최대 호스트 활용 할당 (MinMax_HU)이 알고리즘 호스트에서

가 주기적으로 사용률을 기반으로 분류되어 있습니다 :

용지에서 설명입니다 ; 효율적인 호스트의 사용률이 알고리즘에 정의 된 사용률 임계 값을 초과하지 않으면 덜 효율적인 호스트의 VM이보다 효율적인 호스트로 이동합니다.

는 사람이 나에게 라인으로이 알고리즘 라인을 설명 할 수 있습니까? if 조건을 이해하지 못합니다. 모두가하고있다

답변

6

는 호스트 중 하나에 의해 필요한 자원을 확보 할 VM을 두 호스트의 현재 설정을 유지하기에 충분한 능력을 가지고 호스트에 VM을 이동합니다. 당신이 집으로 이동하고 상상, 당신은 밴에 맞게 책의 너무 많은 판지 상자를 가지고 :

호스트 및 VM을 잊어 버려. 각 판지 상자는 책의 일부 최대 수를 저장할 수 : 한 판지 상자에서 모든 책을 다른에 넣어 할 수있을 것; 전체적인 상자가 줄어들 것입니다.

그래서, 알고리즘은 기본적으로 :

for box1 in boxes: 
    for box2 in (boxes without box1): 
    if (# books in box1 + # books in box2) < (max # books in a box): 
     move all books from box1 to box2 
     throw away box1 

그냥 알고리즘을 잘 사용할 수있는 공간을 활용하기 위해 노력하게, 너무 거기에 약간의 정렬 물건있다 : 그것은 활용 (책의 CF 수를 감소시켜 정렬 각 상자에); 내부 루프의 반복 순서는 호스트 (c.f. 상자)를 결합하여 나중에 최소 공간을 남기려고한다는 것을 의미합니다.

+0

예와 같은 쉽게 설명하면 너무 감사드립니다 :) – S11

관련 문제