• 沒有找到結果。

5. 系統建置與成果

5.2. 成果分析

5.2.3. 運算端程式對運算端電腦日常運作的影響

運算端協助運算是以不影響運算端電腦日常運作為原則,本小節就針對該項 目來做驗證。實驗方法上,採用一個叫 Super PI 的軟體,並紀錄其運算時間。該 軟體由日本人所開發,是一個計算圓周率小數點後幾位的軟體,藉由其運算時間 的長短,可以當作一台電腦效能衡量的標準。也由於 Super PI 相當依賴 CPU 運 算能力,運作的同時將佔用電腦絕大多數的運算資源。因此,本實驗利用 Super PI 來模擬運算端電腦在運行繁重日常工作的環境;另外採用 Super PI 運算圓周 率小數點後 1M 個位數(Super PI 1M)所需的時間作為衡量標準。

圖 5-9 Super PI 運算圓周率小數點後 1M 個位數的情況

實驗方法為:再一台單獨執行Super PI 1M需要 1 分 20 秒的電腦上,分別採 用CPS架構的運算端程式和以及直接執行的方式來執行「多重小波轉換濾波器浮 水印」的實驗。並由Super PI 1M所需的時間來判定兩種環境之下對於使用者操 作的影響。不同的環境之下各做 5 遍,分別取平均值和單獨執行Super PI 1M所

需的時間做比較,差距越多,代表該方式越能影響使用者的日常作業。

表格 5-3 對運算者端電腦的影響

使用 CPS 運算端程式 直接執行

需時:01m22s 需時:02m05s

附註:單獨執行 Super PI 1M 需時 01m20s

實驗結果如表格 5-3所示。使用CPS運作時,由於工作優先權是低的。所以 OS會把大多數的時間分配給優先權式標準的Super PI去使用;相對的,直接執行 的情況之下,優先權皆為標準的兩個工作會去搶奪CPU時間。從效果來看也很顯 著:在單純只執行Super PI 1M需時 01m20s;而加入了採用CPS運算端執行「多 重小波轉換濾波器浮水印」的實驗後時間略升為01m22s;至於直接執行「多重 小波轉換濾波器浮水印」的實驗時間會暴增到02m05s。若以Super PI的運作當成 運算者電腦的日常作業來看,CPS運算端的運作並不會對其造成巨大的影響。

透過之前的印證,證明了 CPS 在處理小批次的需高運算能力的執行程式的 分散式運算環境中,是一個能有效縮短執行時間,同時具有工作流程控管能力的 解決方案。但是,倘若運行的實驗產生較大量的檔案傳輸時,CPS 是否適用?以 下,將透過實驗驗證。

本實驗,透過傳送一個 130MB大小的檔案,主要著重在於較大量的檔案傳 輸流量的環境上,運行的工作並不耗費大量的運算能力。單一批次流程圖可以參 考圖 5-10。在共做 20 次的環境之下,參與運算電腦由一台漸增至 6 台,並監控 工作的總完成時間及需求者端的網路流量狀況。每組實驗各做 3 次,取平均值做 為判斷依據。

圖 5-10 高檔案傳輸實驗流程圖

在進行該實驗之前,先傳輸較小的檔案,分別為 1MB、2MB、4MB作為對 照。在這個對照組實驗中,流程大致與圖 5-10相似,只是改變傳送檔案大小與 數量,每個批次控制檔案的傳輸為 20MB,亦即 1MB傳 20 個、2MB傳 10 個、

4MB傳 5 個,總共進行 30 個批次。參與電腦依舊由 1 台漸增至 6 台,取工作的 總完成時間及需求者端的網路流量狀況為判斷依據。

對照組的實驗結果見圖 5-11。隨著電腦的增加,可以看到所需時間逐漸減 少。儘管,相同環境下三組實驗的所需時間略有不同,但差異不大,可以歸為網 路環境所以造成的合理誤差。

圖 5-11 較小檔案傳輸流量實驗完成總時間圖(對照組)

圖 5-12 高檔案傳輸流量實驗完成總時間圖

表格 5-4 較小檔案傳輸流量實驗需求端流量表(4MB)(對照組)

註:Y 軸最大值為 25000000 bits/sec

表格 5-5 較小檔案傳輸流量實驗需求端流量表(2MB)(對照組)

註:Y 軸最大值為 25000000 bits/sec

表格 5-6 較小檔案傳輸流量實驗需求端流量表(1MB)(對照組)

註:Y 軸最大值為 25000000 bits/sec

表格 5-7 高檔案傳輸流量實驗需求端流量表

1 66 131 196 261 326 391 456 521 586 651 716 781 846 911 976 1041 1106 1171 1236 1301 1366 1431 數列1

1 73 145 217 289 361 433 505 577 649 721 793 865 937 1009 1081 1153 1225 1297 1369 1441 1513 1585 數列1

1 70 139 208 277 346 415 484 553 622 691 760 829 898 967 1036 1105 1174 1243 1312 1381 1450 1519 1588 數列1

1 77 153 229 305 381 457 533 609 685 761 837 913 989 1065 1141 1217 1293 1369 1445 1521 1597 1673 數列1

1 88 175 262 349 436 523 610 697 784 871 958 1045 1132 1219 1306 1393 1480 1567 1654 1741 1828 1915 2002 數列1

1 84 167 250 333 416 499 582 665 748 831 914 997 1080 1163 1246 1329 1412 1495 1578 1661 1744 1827 數列1

註:Y 軸最大值為 25000000 bits/sec

高檔案傳輸流量實驗結果請見圖 5-12以及表格 5-7。首先,從完成時間的

4411 4262

3719

Numbers of PCs

F in ish ed T im es (S ec )

數列1

圖 5-13 延長等待時間為 200 秒後的完成時間圖

實驗過程之中,也發現了許多以往不曾發生的例外情況。例如,檔案無法完 全正常回傳或者運算端程式無法回傳檔案而停止運作的情況。因此,可以研判在

高檔案傳輸流量的環境之下,運作時間將不再取決於參與電腦的多寡,反而更加 依賴網路頻寬的大小以及需求者端電腦的效能,明顯和當初 CPS 建立的精神不 符。

由這些實驗結果可以知道,CPS 架構並不是適合處理高檔案傳輸流量的環 境。過大的網路流量以及過於頻繁的存取,對於需求者來說,會造成其負擔的增 加,會造成工作運作上的瓶頸,甚至頻繁地產生例外情況使的工作效率降低。在 實際應用 CPS 架構時,應該避免這種頻繁地傳輸大檔案的環境。

6. 結論與未來展望

6.1. 結論

本研究提出了 CPS 架構,利用 Web Services 的非緊密結合以及開放式標準,

突破了現行 P2P 分散式運算環境彈性的不足;導入 BPEL 則賦予了 P2P 架構實 驗設計上的彈性以及工作流程控管的能力;在信賴網路中實行,則提升了中小企 業在施行分散式運算環境上,安全性和動機上的立場和保證。

CPS 架構提供了一個以 Web Services 為基礎的輕量級 P2P 運算能力分享環 境。適用於傳輸量小的可批次化的需高運算能力的執行程式,在組織的信賴網路 之中實行,為中小型組織提供了一個運用組織內閒置電腦運算能力的可行方案。

同時兼具了圖形化的開發與管理環境以及工作流程控管的能力,不影響運算端的 日常作業。簡單使用且能 24 小時運作的 P2P 協同運算環境,可以有效利用老舊 電腦的運算能力,減少組織為因應運算需求增高而添購設備的成本支出。

6.2. 未來展望

6.2.1. 工作進度管理

目前運算端程式的 Roll-Back 機制採用重作的方式,主要的目的在於保守地 確定契約被達成而已,卻是一個浪費運算資源的舉動。因此,要如何有效率地做 工作進度管理。例如當程式被關閉之後,能記錄目前的進度狀態;當重新執行運 算端程式時,便能夠較有效率的 Roll-Back,甚至能夠接續之前的進度繼續運算,

資源才不會被浪費。工作進度管理兼具資源合理使用以及效率提升的好處,是今 後值得研究的方向之ㄧ。

6.2.2. 流程最佳化

具有工作流程控管能力之後,如何使流程最佳化,是一個容易被提起的部 份。動態派工機制應該是一個可行的方式:以一個流程點來看,參考圖 6-1。有 ABCD代表四個運算端,圖中每一個時間區塊代表該運算端執行一個工作的所需 時間。圖中狀況表示在需求者還有兩個工作時,A、D分別向需求者要求新的工 作。在循序式(round robin)派工機制的環境下,需求者會各分給A、D一個工作,

其狀態如圖中(a)所示;倘若透過動態派工機制,根據之前的A、D運算效能

Finishing time (a) If requester assigns one to A, another to D

C D A B

Time

(b) If requester assigns both to D, finish time is optimal.

A and D request for new subtask when Requester still has 2 subtasks to assign

Finishing time

圖 6-1 單流程點最佳化派工示意圖

另外,若能換過來把整個網路當成一個虛擬機器,利用 BPEL 作為外界與虛 擬機器、甚至虛擬機器內部元件之間溝通的一種媒介,建構出一整個虛擬機器運 作的邏輯。透過這種方式,整個虛擬機器所包含的資源將能被統籌管理使用;屆 時,無論是程序或者是執行緒,也能透過虛擬機器核心的運作分配給網路中閒置 資源運作。這種方式將突破本研究目前只能執行可批次化的需高運算能力的情 況,也是未來值得研究的方向之ㄧ。

參考文獻

[1] Dejan S. Milojicic “Peer-to-Peer Computing” HP Laboratories Palo Alto March 2002

[2] Alfred W. Loo “The Future of Peer-to-peer Computing” Communications of The ACM September 2003 Vol.46,No.9 P.57-.61

[3] 喻瀚寬、蔡澤銘 ”解析 Web Service 的技術內容與意涵----打破平台疆界 啟 動 internet AP 整合新視界”,軟體產業通訊,第三十七期,2001/06

[4] Dan Gisolfsi, Web Services Architect , Solutions Architect, IBM jStart Emerging Technologies 01 Apr 2001

http://www-106.ibm.com/developerworks/webservices/library/ws-arc1/

[5] Biplav Srivastava, Jana Koehler “Web Service Composition - Current Solutions and Open Problems”

[6] Tony Andrew, Francisco Curbera, Hitesh Dholakia, Yaron Goland, Johannes Klein et al. “Business Process Execution Language for Web Services”

http://www-106.ibm.com/developerworks/webservices/library/ws-bpel/

[7] Holt Adams “Asynchronous operations and Web services: A primer on asynchronous transactions”

http://www-106.ibm.com/developerworks/library/ws-asynch1.html 2002

[8] Oracle Lab Segments “Oracle BPEL Process Manager Training”

http://otn.oracle.com/bpel August 2004

[9] 曾立信 ”小波封包轉換的浮水印對數位影像所有權之確認” 國立交通大學 碩士論文 2003

[10] Nikola Milanovic and Miroslaw Malek“Current Solutions for Web Service Composition” IEEE INTERNET COMPUTING NOVEMBER • DECEMBER 2004 P.51-59

[11] Matt Powell “Asynchronous Web Service Calls over HTTP with the .NET Framework”

http://msdn.microsoft.com/library/en-us/dnservice/html/service09032002.asp?fra me=true September 9, 2002

[12] Matt Powell “Server-side Asynchronous Web Methods”

http://msdn.microsoft.com/library/en-us/dnservice/html/service10012002.asp?fra me=true October 2, 2002

[13] “Asp.Net 程式設計徹底研究” 董大偉著 文魁資訊股份有限公司出版 [14] “Building XML Web Services for the Microsoft .NET Platform” Short

Microsoft Press

[15] “Visual Basic .Net 強力調校” 彭明柳譯 博碩文化出版

[16] “使用 VB.Net 與 C#.Net 開發 XML Web Services 與伺服器元件” 啟真工作室 Microsoft Press

[17] Chris Peltz “Web services orchestration and choreography IEEE Computer Volume:36, Issue:10 Oct. 2003

[18] Boualem Benatallah and Quan Z. Sheng “The Self-Serv Environment for Web Services Composition” IEEE INTERNET COMPUTING JANUARY •

FEBRUARY 2003

[19] HEATHER KREGER “FULFILLING THE WEB SERVICES PROMISE”

COMMUNICATIONS OF THE ACM June 2003/Vol. 46, No. 6

附錄(一) Computing Power Services 系統使用手冊

軟體安裝

z Microsoft Visual Studio .Net 2003 z Microsoft .Net Framework

z Microsoft SQL Server 2000 z Oracle BPEL Process Manager 2.0

z Eclipse 3.0(若使用 3.1 板,在安裝 BPEL Process Manager 時會發生問題)

z J2SDK1.4.2 以上版本

z ActivePerl-5.6.1.638(若使用 5.8.7 版,會發生不支援的問題,此軟體為針對

「多重小波轉換濾波器浮水印嵌入」實驗,生成實驗檔所使用)

系統建置

1. Microsoft .Net 系統主程式

z 需求者端(Requester)- EXPClient

y 在 C:\Inetpub\wwwroot\ 下建立資料夾 EXPClient。

y 控制台→系統管理工具→Internet Information Services→新增虛擬目 錄。開啟服務。

y 進入 Microsoft Visual Studio .Net 2003 開啟 EXPClient 專案,並重新 編譯。

y Web Reference_coordinator依照協調者端Coordinator的安裝位址進行 更新,例如:http://140.113.72.173/psbroker/broker.asmx

¾ EXPClient→滑鼠右鍵→加入 Web 參考

¾ 依照協調者端 PSBroker 的安裝位址進行更新,選擇「本機上 的電腦服務」(PSBroker 和 EXPClient 架在同一主機上)或直接 輸入 URL 位址。

¾ 選擇協調者端 PSBroker 位址

¾ Web 參考名稱命名

y 可依據使用者需要更改程式碼中的帳號密碼。

z 運算者端(Computing Unit)- ComputingUnit

y 在 C:\Inetpub\wwwroot\ 下建立資料夾 ComputingUnit。

y 控制台→系統管理工具→Internet Information Services→新增虛擬目 錄。開啟服務。

y 進入 Microsoft Visual Studio .Net 2003 開啟 ComputingUnit 專案,並

重新編譯。

y Web Reference_Broker依照協調者端Coordinator的安裝位址進行更 新,例如:http://140.113.72.173/PSBroker/Broker.asmx

(方法同上 EXPClient)

y Web Reference_EXPClient依照需求者端Requester的安裝位址進行更 新,例如:http://140.113.72.173/expclient/expclient.asmx

(方法同上 EXPClient)

y 可依據使用者需要更改程式碼中的參數。

y 可依據使用者需要更改程式碼中的參數。

相關文件