亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

構建自己的基于Java的超級計算機

2019-11-18 14:50:01
字體:
來源:轉載
供稿:網友

  假如您曾想過構建自己的超級計算機,但卻對用 C 語言進行并行編程望而生畏,那么偽遠程線程可以幫您解決這一問題。這種獲獎的 java 編程模型極大地簡化了集群上的并行編程,并使超級計算走出實驗室,使每一位 Java 程序員都能使用它。

  在過去的三年里,并行集群已在改變著超級計算的面貌。一旦價值數百萬美元的單體機占了主導,并行集群很快就會成為超級計算機的選擇??梢韵胂竦玫?,開放源碼圈內的高漲熱情已導致產生了數百 -- 假如不是數千的話 -- 并行集群項目。第一個同時也是最聞名的開放源碼集群系統是 Beowulf。在 NASA 贊助下,由 Thomas Sterling 和 Donald Becker 在 1994 年發布的 Beowulf,開始是作為一個 16 節點演示集群推出的。今天,Beowulf 已有數百種實現,從 Oak Ridge 國家實驗室的 Stone SouperComputer 到 aspen 系統公司的定制構建的商業性集群(請參閱參考資源)。

  對 Java 程序員不利的是,多數集群系統都是圍繞基于 C 語言的軟件消息傳遞 API — 如消息傳遞接口(MPI)或并行虛擬機(PVM)— 來實現的。用 C 語言進行并行編程不是件輕易的事,因此我設計了一個替代方案。本文將說明如何綜合運用 Java 線程和 Java 遠程方法調用(RMI)來創建自己的基于 Java 的超級計算機。

  請注重,本文假定您有 Java 線程和 RMI 的應用知識。

  超級計算機內有什么?

  超級計算機的定義是:由八個或更多的節點組成、作為單個高性能機器工作的集群?;?Java 的超級計算機包含一個作業調度器和任意數量的運行服務器(也稱為主機)。作業調度器生成多個線程,每個線程包含執行不同子任務的代碼。各個線程將其代碼遷移到不同的運行服務器上。然后,每個運行服務器執行遷移給它的代碼并將結果返回給作業調度器。最后,作業調度器將各個線程的結果組合起來。

  這種并行集群系統之所以被稱為偽遠程線程,是因為線程是在作業調度器上調度的,但線程內的代碼卻是在遠程計算機上執行的。

  該系統有哪些組件?

  組件一詞是指組成“偽遠程線程”并行集群系統的邏輯模塊。該系統包含以下組件:

  Job dispatcher(作業調度器) 是執行控制的機器。它生成不同的線程,每個線程都包含此集群要處理的主任務的一個子任務。每個線程內的代碼都被發送到一臺遠程計算機去執行。線程在作業調度器上調度,所以理論上講,該機器不應該用于執行任何子任務。

  SuBTask 是一個用戶定義類,該類定義主任務的一個數據或功能獨立的部分。您可以為主任務的不同部分定義不同的類。類名 SubTask 是一個示例。您可以為一個 SubTask 類取任何名字,不過這個名字應該能描述分配給它的子任務。在定義 SubTask 類時,您必須實現 JobCodeInt 接口以及 jobCode() 方法,下面對其進行說明。

  JobCodeInt 是一個 Java 接口。您必須在定義子任務的類中實現該接口和 jobCode() 方法。jobCode() 方法描述了將在遠程執行的代碼。假如您打算在遠程使用某個本地資源,您必須在 jobCode() 方法外部初始化這個資源。比方說,您要將一組圖像發送到遠程處理,就必須在 jobCode() 方法外部初始化 Image 對象。您可以在該方法中調用標準 Java 庫中的類,因為遠程計算機上存在這些庫。

  RunServer 是一個 Java 對象,該對象答應遠程過程調用其方法。它的一個方法以實現了 JobCodeInt 接口的對象作為參數。 RunServer 就在運行該對象的計算機(運行服務器)上執行該對象內的代碼,并將計算結果作為 Object 類的一個實例返回。Object 是 Java 類層次結構中最高一級的類。

  PseudoRemThr 是一個 Java 類,該類封裝了一個線程并接受給定 SubTask 類的一個實例。它選擇一臺遠程主機,并將 SubTask 實例發送到這臺主機上執行。假如您要利用某臺主機上可用的特定資源(諸如數據庫或是打印機),則可以指定主機。

  HostSelector 是一個模塊。假如您沒有指定遠程主機,PseudoRemThr 類就會調用 HostSelector 模塊來選擇特定的主機。假如沒有空閑的主機,HostSelector 會返回負載最小的遠程計算機。假如某個遠程計算機是一個多處理器系統,HostSelector 可能會不止一次地返回該主機名。目前,HostSelector 無法根據給定任務的復雜程度來選擇主機。

  偽遠程線程的工作方式

  要使用偽遠程線程,您必須實現作業調度器和運行服務器。本節將說明如何實現各個部分。

  實現作業調度器

  首先,將主任務分解為數據或功能獨立的子任務。針對每個子任務,定義一個實現 JobCodeInt 接口(從而實現 jobCode() 方法)的類。在 jobCode() 方法中,定義各給定子任務要執行的代碼。

  請注重,您不能調用作業調度器上用戶定義的的本地資源。請在該方法外部初始化所有這類資源。例如,您可以在 SubTask 類的構造函數中初始化這類資源。

  創建類 PseudoRemThr 的若干實例,并將 SubTask 的實例傳遞給 PseudoRemThr 的各個實例。假如您要明確指定一臺遠程主機,您可以通過調用 PseudoRemThr 對象的另一個構造函數來完成。

  等待這些線程完成。調用 getResult() 方法來獲取 PseudoRemThr 的各個實例的執行結果。假如計算沒有完成,結果返回一個值為 false 的 Boolean 對象;否則,將返回 Object 類的一個實例,其中包含了計算結果。您必須將此實例轉換為您所希望的類類型。將所有的子任務結果組合為最終結果。

  實現運行服務器

  實現運行服務器是一項簡單的工作:

  啟動 RMI 注冊程序。

  啟動 RunServer。

  運行服務器在啟動時接通作業調度器,并通知作業調度器它已預備就緒,可以接受要執行的任務了。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲第一网站免费视频| 国产精品普通话| 久久久久久久国产精品| 精品亚洲夜色av98在线观看| 欧美日本高清视频| 亚洲福利影片在线| 日本不卡视频在线播放| 亚洲电影免费观看高清完整版| 国产精品成熟老女人| 欧美高清理论片| 欧美一级片免费在线| 日韩在线观看视频免费| 成人精品网站在线观看| 国产精品久久一区| 欧美丰满片xxx777| 插插插亚洲综合网| 国产精品自产拍在线观看中文| 久热爱精品视频线路一| 亚洲国产高潮在线观看| 亚洲国产日韩欧美在线99| 538国产精品视频一区二区| 欧美激情图片区| 中文字幕日韩在线视频| 精品久久久久久久大神国产| 国产精品永久免费视频| 欧美成人免费播放| 日韩欧美亚洲范冰冰与中字| 欧美成人合集magnet| 亚洲人午夜精品免费| 黑人巨大精品欧美一区二区免费| 国产中文字幕日韩| 538国产精品一区二区在线| 欧美精品电影在线| www日韩欧美| 亚洲第一网站免费视频| 69久久夜色精品国产69乱青草| 国产精品视频一区国模私拍| 久久精品国产清自在天天线| 欧美刺激性大交免费视频| 国产一区二区三区视频免费| 国产一区二区三区欧美| 欧美一级片在线播放| 2020欧美日韩在线视频| 91亚洲va在线va天堂va国| 国产成人啪精品视频免费网| 欧美日韩美女在线| 欧美美最猛性xxxxxx| 国产精品视频一区国模私拍| 欧美成人免费大片| 国产小视频国产精品| 91夜夜未满十八勿入爽爽影院| 亚洲第一国产精品| 国产精品一区二区三区久久久| 欧美日韩中国免费专区在线看| 日韩av免费在线看| 久久久之久亚州精品露出| 亚洲国产欧美在线成人app| 欧美激情在线一区| 亚洲精品一区二区在线| 国产精品入口日韩视频大尺度| 日本午夜精品理论片a级appf发布| 亚洲精品按摩视频| 精品一区二区三区四区在线| 久久久久久12| 久久免费国产精品1| 日韩成人黄色av| 亚洲免费av网址| 久久成人免费视频| 98精品在线视频| 性欧美在线看片a免费观看| 97婷婷大伊香蕉精品视频| 国外成人在线视频| 亚洲系列中文字幕| 亚洲黄色av网站| 欧美一区二区视频97| 国产一区视频在线播放| 欧美日韩免费区域视频在线观看| 亚洲最新av在线网站| 国产精品久久久久久亚洲调教| 亚洲成色999久久网站| 久久影院资源网| 中文日韩在线观看| 九九久久精品一区| 亚洲天堂日韩电影| 成人免费xxxxx在线观看| 中文字幕在线国产精品| 91九色综合久久| 亚洲激情自拍图| 亚洲一级片在线看| 国产精品高潮呻吟久久av野狼| 日韩一区二区三区国产| 欧美黑人巨大精品一区二区| 日韩av免费看| 国产精品久久一| 欧美韩日一区二区| 国产日本欧美一区二区三区| 在线电影欧美日韩一区二区私密| 上原亚衣av一区二区三区| 欧美人交a欧美精品| 亚洲www永久成人夜色| 国产成人精品久久亚洲高清不卡| 午夜精品www| 欧美日韩中文字幕日韩欧美| 97在线看福利| 欧美制服第一页| 欧美亚洲在线播放| 亚洲深夜福利视频| 国产一区二区日韩精品欧美精品| 欧美激情第一页xxx| 欧美www视频在线观看| 久久综合网hezyo| www国产91| 欧美日韩xxxxx| 亚洲第一免费网站| 日韩精品免费看| 成人免费大片黄在线播放| 精品免费在线视频| 国产欧亚日韩视频| 欧美一级高清免费播放| 国产精品日日摸夜夜添夜夜av| 欧美裸体xxxx| 国产成人精品日本亚洲专区61| 国产精品久久久久久网站| 夜夜嗨av一区二区三区四区| 久久色免费在线视频| 国产色婷婷国产综合在线理论片a| 日韩在线资源网| 日韩欧美高清在线视频| 亚洲欧美另类中文字幕| 精品动漫一区二区| 欧美亚洲视频一区二区| 精品视频在线播放免| 日韩精品视频免费| 国产精品日本精品| 午夜精品一区二区三区在线视| 欧洲永久精品大片ww免费漫画| 日韩中文字幕欧美| 91久久久久久久久| 亚洲自拍另类欧美丝袜| 日韩在线播放视频| 亚洲免费精彩视频| 欧美国产中文字幕| 日韩一区二区久久久| 欧美国产精品日韩| 精品美女久久久久久免费| 国产精品综合久久久| 大伊人狠狠躁夜夜躁av一区| 国产精品欧美激情在线播放| 欧美裸体xxxx| 国产精品免费观看在线| 欧美理论电影在线观看| 午夜精品久久久久久久白皮肤| 欧美亚洲国产成人精品| 国产成人avxxxxx在线看| 91探花福利精品国产自产在线| 欧美国产日韩精品| 亚洲自拍偷拍网址| 亚洲free性xxxx护士hd| 亚洲人成电影网站色www| 精品久久久久久久久久久| 欧美一级黑人aaaaaaa做受| 日韩欧美在线中文字幕| 欧美午夜宅男影院在线观看| 精品视频久久久|