第四章 效能評估
4.2 網路延遲效能評估
首先,本研究於 UniCloud 中 NTHU 和 NTCU 執行不同行為之 Benchmark,
分析網路延遲所造成之效能減退。本實驗採用 The NAS Parallel Benchmarks (NPB) 中 Embarrassingly Parallel (EP)、Conjugate Gradient (CG)、Integer Sort (IS)三種不 同之 Benchmarks,Benchmarks 規模採用 NPB 內定 Class B 和 Class C[44]。
Embarrassingly Parallel (EP)Task 間之通訊量除了最後收集結果外,沒有任何溝通 行為,Conjugate Gradient (CG)為計算矩陣結果,通訊量相當高,而 Integer Sort (IS) 為排序大量大整數,計算量低於 CG,但也算高通訊量之 Benchmark。Average 代表 Benchmarks 執行於帄均分布於兩校之雲所組成的 Cluster,單校沒有 32 nodes 數據是因 NTHU 無法開到 32 個 VMs,所以不加以討論[20]。
40
NTCU NTHU Average
0
NTCU NTHU Average
41
NTCU NTHU Average
0
NTCU NTHU Average
42
NTCU NTHU Average
0
NTCU NTHU Average
43
大小為 Class B 時,計算量與通訊量約相等,導致實驗結果維持至一定值,但也 代表並無法因為增加帄行度而加速。而工作規模擴大之後,可以看到執行直接隨 著帄行度而略微下降,代表計算量增大,計算量略高於通訊量。
由以上結果顯示聯邦雲中之工作執行必頇要考慮到工作之特性,例如 EP 就 能夠很好的展現出聯邦雲共同執行之優點,而其他 Benchmark 卻因為等待資料 傳送而完成時間大增。接著將探討本研究所提出之 Task Grouping 方法能否解決 此問題,以下實驗執行 NPB IS 跟 NPB EP 帄行度為 4[44]於 UniCloud 中 PU、NTCU 和 NTHU 比較有無 Task Grouping 之差別。
圖 二十八 IS 執行結果
圖 二十八為 IS 執行結果。IS optimum 為執行 IS 但是並不跨越任何主機,
也代表著此環境下所能展現最低完成時間。結果顯示 Maui 並不考慮到網路延遲 及工作特性,所以其完成時間隨著網路延遲增加而急遽增加。另外 HAS 能依資 源能力分配 Jobs,由於 UniCloud 為一異質環境,其分配結果能將大部分 Jobs 分
44
配於相同 Cloud 中。但當某雲資源無法完全滿足 Job 需求時,依然產生跨雲執行 Jobs 之情況,所以其執行結果依然受到網路速度影響。實驗結果顯示本文提出的 方法可以大幅度降低網路延遲所造成之影響,並且趨近於最佳值;因為 Task Grouping 能夠透過考慮工作特性將跨雲通訊量大幅度降低。
圖 二十九 EP 執行結果
圖 二十九表示 EP 執行完成時間,由圖中可以發現其完成時間並不會被網 路延遲所影響,而是直接反應出實體機器效能;PU Cloud 效能略低於其他 Cloud 也是因為其 CPU 效能略低於其他 Cloud。
4.3 分散式排程效能評估
本小節針對兩種不同的分散式排程方法進行效能評估,首先針對調整資源價 格之分散式排程方法,模擬在一個時間點內,收到不同數量之工作需求時,觀察 聯邦雲之運作以及 Total Profit 結果。
45
46 average outsourcing satisfied ratio
1.5
cost unit P
# of job
price
47
與優先權排程法(Priority Scheduling, PS),優先選擇較大外包需求、最少資源需求 優先排程法(Smallest Resource Requirement First, SRRF)和最短完成時間工作優先 排程法(Shortest Job First, SJF)比較。0
Cost unit (P)
# of jobs
DSA outsource profit Maui total profit
DSA total profit
48
表 六 模擬實驗 Job 組合
Job Set Job1 Job2 Job3
機率 10% 80% 10%
Job 資源需求基底 5-15 個 Tiny VMs Job 資源需求間距 5-15 個 Tiny VMs
Job 執行時間 Random 25-35 s
每秒每雲產生 2 個 Job 需求
表 七 模擬實驗聯邦雲資源
Cloud Set 資源量 # of VMs 資源價格
Cloud1 60 1P
Cloud2 60 1P
Cloud3 80 1.3P
Cloud4 80 1.3P
Cloud5 120 2P
Cloud6 120 2P
Cloud7 160 2.6P
Cloud8 160 2.6P
Cloud9 200 3.3P
Cloud10 200 3.3P
Cloud11 240 4P
表 六為模擬實驗 Job 組合;資源需求基底代表 Job1 所需資源,資源需求間 距代表與其他 Job 資源需求之差(ex:當 Job 資源需求基底為 5,Job 資源需求間 距為 8 時,Job1 資源需求為 5,Job2 資源需求為 13,Job3 資源需求為 21)。根據 機率隨機產生不同資源需求之 Job。如上表所示,當 N=5 時,模擬實驗聯邦雲資
49
源取 Cloud1 至 Cloud5,當 N=7 時,模擬實驗聯邦雲資源取 Cloud1 至 Cloud7,
以此類推至 N=11。以下將分析數個較代表之實驗結果,詳細實驗數據請參照附 錄。
圖 三十四 N=5 與 PS 比較結果
圖 三十四為 N=5 與 PS 之比較結果。越靠左代表資源需求基底越高,越靠 前則代表資源需求間距越多。此值為(PS 帄均剩餘資源)-(DSA 帄均剩餘資源),
值越高代表 DSA 越優於 PS。結果顯示當處於高基底低間距時,左後方傾向較高 數值,相較於右前方,有時甚至為負值。這是因為 DSA 概念為可能預留資源給 未來的工作,導致預留時被視為閒置資源,而 PS 則是因為選擇某外包需求後而 產生剩餘資源,若 Job 資源需求基底為 15,BJF 可能產生至少 0-14 個剩餘資源,
所以當資源需求基底越高時,DSA 越能因為預留而把剩餘資源降低,而資源需 求間距越高則代表 DSA 需要預留更多資源,所以剩餘資源可能越高。
-2 -1 0 1 2 3
資源需求間距
# of VMs
資源需求基底
2-3 1-2 0-1 -1-0 -2--1
50
51
52
圖 三十九 N=5 與 SJF 比較結果
SJF 為完成時間較短之工作優先,與 PS 實驗結果類似。當資源需求基底越 高,DSA 越能夠將資源充分利用、越小剩餘資源。中間有出現兩個高點分別為 資源需求基底 8 資源需求間距 11 跟資源需求基底 8 資源需求間距 13。此情況下 資源需求 19 跟 21 的工作出現機率最高,而 19 跟 21 也剛好為質數,難以將剩餘 資源填滿,也代表著其他方法的剩餘資源可能於此情況下效能較差。
-4 -3 -2 -1 0
1 2 3
資源需求間距
# of VMs
資源需求基底
2-3 1-2 0-1 -1-0 -2--1 -3--2 -4--3
53
54
55
圖 四十四 N=5 與 SRRF 比較結果
圖 四十四為 SRRF 之比較結果。SRRF 為優先選擇較小資源需求外包。依 照聯邦雲的特性,外包需求將優先向較低價格之雲供應商要求。所以當較小的雲 優先選擇較小外包需求,則容易產生大的外包需求無法接受之情況,因次比 PS 更易產生剩餘資源。結果顯示雖然數字浮動較大,但是 DSA 幾乎能於所有工作 組合中優於 SRRF。
-1 -0.5
0 0.5
1 1.5 2
2.5
資源需求間距
# of VMs
資源需求基底
2-2.5 1.5-2 1-1.5 0.5-1 0-0.5 -0.5-0 -1--0.5
56
57
58
完成時間 Job 優先,以致於 Job 完成數量較高。而 DSA 居於第二則因為較能利 用多數剩餘資源,SRRF 雖然以較少資源需求優先,但少資源需求之 Job 並不多,
所以展現不出其效能。
圖 四十九為程式實際執行時間。Y 軸以微秒為單位,並以指數為間距,X 軸為每秒每個雲所產生之工作數量,0/1 代表未修改之背包演算法,運算範圍為 所有可能之工作組合,而經修改之 0/1 背包演算法雖亦隨著工作增加而增加執行 時間但已大幅降低執行時間。
圖 四十九 0/1 演算法實際執行時間
1 10 100 1000 10000 100000 1000000
1 2 3 4 5 6 7 8
ms
#jobs
0/1
Modified 0/1
59
本研究於 UniCloud 上執行不同工作行為的 Benchmarks,包含 NPB IS、NPB CG 跟 NPB EP。發現 NPB IS 及 NPB CG 非常容易因為跨雲網路延遲而大幅增加 工作完成時間,而 NPB IS 及 NPB CG 又是相依賴性較高的 Benchmarks,所以聯 邦雲執行高相依賴性的工作時必頇經過特別考量後分配至各資源運行。
本研究針對此兩個挑戰提出了 Task Grouping 及 Distributed Scheduling Approach (DSA)方法,經過 Profiling Tool 分析了工作行為之後,得出工作行為模 式,並透過 Task Grouping 依照其行為模式將相依賴性高的工作排在同個雲,藉 此大量減少跨雲網路傳輸量,減少傳輸量之後,網路延遲的影響也將大幅降低。
Distributed Scheduling Approach (DSA)方法則是利用穩定的聯邦雲環境中之 相似工作不斷出現之特性,預測將出現的工作類型,並且考慮現有剩餘資源與現