基于drceu的云染整合實(shí)驗(yàn)教學(xué)平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)_第1頁(yè)
基于drceu的云染整合實(shí)驗(yàn)教學(xué)平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)_第2頁(yè)
基于drceu的云染整合實(shí)驗(yàn)教學(xué)平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)_第3頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

基于drceu的云染整合實(shí)驗(yàn)教學(xué)平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)

1云染染平臺(tái)的擴(kuò)展近年來,高校數(shù)字信息技術(shù)的發(fā)展浪潮為推動(dòng)我國(guó)旅游業(yè)、數(shù)字教育和數(shù)字創(chuàng)作的發(fā)展提供了機(jī)遇。3D渲染對(duì)計(jì)算能力的需求在目前看來還是難以滿足的,即使通過大規(guī)模集群計(jì)算方式還是需要數(shù)個(gè)月才能完成一部動(dòng)漫電影的渲染制作。為進(jìn)一步充分利用高校的閑置資源以縮短渲染所耗時(shí)延,我們?cè)谖墨I(xiàn)研究的基礎(chǔ)上,進(jìn)一步擴(kuò)展渲染平臺(tái),基于開源集群渲染(distributedrenderingenvironment,DRE,又叫分布式渲染環(huán)境)管理軟件Drqueue,借助Multi-Cluster概念,實(shí)現(xiàn)了渲染資源和渲染應(yīng)用跨校園的云渲染實(shí)驗(yàn)平臺(tái),讓更多的高校參與并享用云渲染平臺(tái),對(duì)于那些本身不具備渲染硬件、或距離完成期限近因而需要更多計(jì)算資源來完成渲染的創(chuàng)作團(tuán)隊(duì)來說,該平臺(tái)更適合他們。他們除了能在短時(shí)間段內(nèi)使用大數(shù)量渲染機(jī)器群外,不用考慮渲染硬件的采購(gòu)、維護(hù)以及服務(wù)支持等,也不用考慮所使用軟件的成本和額外安裝開支。此外,該云渲染平臺(tái)操作簡(jiǎn)單,通過瀏覽器即可提交渲染任務(wù)和查看渲染進(jìn)展?fàn)顩r,平臺(tái)在數(shù)據(jù)轉(zhuǎn)換與存儲(chǔ)等方面也都采用相關(guān)的權(quán)限控制和加密措施,為用戶提供了企業(yè)級(jí)的渲染平臺(tái)。2基于drqueue的單一集群染整Drqueue是一款開放源碼分布式渲染程序,提供的服務(wù)接口包括了渲染節(jié)點(diǎn)任務(wù)的分配、監(jiān)控和管理等。它支持的渲染器包括:3Dlight,3DSMax,AfterEffects,Aqsis,Blender,BMRT,Cinema4D,Lightwave,Luxrender,Mantra,Maya,MentalRay,Nuke,Pixie,Shake,Terragen,Turtle,V-RayandXSI等;它支持的操作系統(tǒng)平臺(tái)可以是:Linux,MacOSX,Irix,FreeBSD,Windows,它還支持混合平臺(tái)渲染集群的創(chuàng)建,支持使用Python等以提供完整的接口調(diào)用。目前在國(guó)內(nèi)外都有一些小的項(xiàng)目在使用Drqueue,比如MartianLabs,《加勒比海盜》、《驅(qū)魔人》等。我們選擇它,是因?yàn)樗敲赓M(fèi)開源的,并且內(nèi)置了Python,可以通過Pythone腳本擴(kuò)展功能,進(jìn)行二次開發(fā)比較方便?;贒rqueue的單一集群渲染架構(gòu)見圖1,它與文獻(xiàn)給出的集群渲染管理軟件架構(gòu)是一致的。其中,Master節(jié)點(diǎn)保存著整個(gè)渲染集群的任務(wù)隊(duì)列信息和Slave渲染節(jié)點(diǎn)信息,它通常維護(hù)一個(gè)全局性的數(shù)據(jù)庫(kù),記錄節(jié)點(diǎn)工作狀態(tài)以及任務(wù)與子任務(wù)分配、執(zhí)行狀態(tài)等信息。Slave節(jié)點(diǎn)負(fù)責(zé)渲染任務(wù)的執(zhí)行,它會(huì)維護(hù)一個(gè)局部數(shù)據(jù)庫(kù)以保存本機(jī)資源信息以及所分配的子任務(wù)隊(duì)列與狀態(tài)信息,同時(shí)負(fù)責(zé)調(diào)用渲染器(例如Maya,3DMax等)完成渲染。也就是說,一方面,有自己的狀態(tài)和任務(wù)等信息,另一方面同時(shí)要定期向Master更新自己的負(fù)載或CPU可用資源等信息。當(dāng)它可用時(shí),它會(huì)向Master發(fā)送請(qǐng)求以完成與它的配置文件(操作系統(tǒng)、內(nèi)存、CPU核數(shù)、渲染器等)描述一致的、能勝任的渲染任務(wù)。Master一旦將任務(wù)分配給Slave,Slave會(huì)接收所有跟渲染任務(wù)相關(guān)的信息(包括渲染文件存放地、渲染器類型、起始和結(jié)束幀等),當(dāng)收到這些信息后,Slave會(huì)創(chuàng)建一個(gè)新的進(jìn)程來執(zhí)行此任務(wù)。在實(shí)現(xiàn)中,任務(wù)腳本必須位于共享存儲(chǔ)中,這樣所有Slave節(jié)點(diǎn)都可以以相同的路徑來讀取到任務(wù)腳本。只要渲染任務(wù)沒完成,Slave節(jié)點(diǎn)會(huì)不間斷地向Master匯報(bào)其存在及渲染進(jìn)展?fàn)顩r;當(dāng)渲染任務(wù)完成,Slave節(jié)點(diǎn)中的渲染父進(jìn)程會(huì)收集各子進(jìn)程的退出狀態(tài),并向Master發(fā)送所有信息。基于這些信息,任務(wù)自動(dòng)排隊(duì),并標(biāo)記“Finished”或“Error”。當(dāng)然,這些信息也可以在應(yīng)用服務(wù)器上進(jìn)行訪問。3染液兩相系統(tǒng)的調(diào)度策略本項(xiàng)目的其中一個(gè)研究出發(fā)點(diǎn)是,能否實(shí)現(xiàn)將高校閑置的資源共享、運(yùn)用到動(dòng)漫渲染中,為教學(xué)、科研和小型動(dòng)漫創(chuàng)作提供堅(jiān)實(shí)的后盾。高校的資源是異地分布的,資源的供給與回收也是動(dòng)態(tài)變化的,為此,探索云渲染就不僅僅只是一個(gè)集群渲染,既然是在云計(jì)算環(huán)境下的渲染,那就有可能存在不同的渲染集群參與同一渲染任務(wù),因此本文引入了Multi-Cluster的概念。在云計(jì)算領(lǐng)域里,IBNPlatformLSF在2010年提出過Multi-ClustertotheCloud的概念,并通過優(yōu)秀的集群調(diào)度軟件LSF(loadsharefacility)實(shí)現(xiàn)了將云供應(yīng)商創(chuàng)建的新Cluster加入現(xiàn)有云平臺(tái)以擴(kuò)展或提供更強(qiáng)的計(jì)算功能,它的實(shí)現(xiàn)是通過多集群協(xié)調(diào)模塊(multiclusterorchestrator),應(yīng)用相應(yīng)的調(diào)度策略自動(dòng)向云供應(yīng)商創(chuàng)建的新集群分發(fā)任務(wù),從而合并本地集群與新集群的計(jì)算功能。借助Muti-Cluster的理念,本文將集群渲染擴(kuò)展到更廣泛的云環(huán)境中,其結(jié)構(gòu)架構(gòu)圖如圖2所示。其中VM為集群里的虛擬機(jī)或?qū)嶓w機(jī),是渲染任務(wù)完成的主力軍,我們上節(jié)也稱之為Slave節(jié)點(diǎn),VM-M為渲染集群里的Master節(jié)點(diǎn),負(fù)責(zé)集群里的渲染任務(wù)管理,以及集群間的通信和狀態(tài)上報(bào)等。我們?cè)诮M建Cluster的時(shí)候,同一Cluster通常是機(jī)器類型一致的或同一操作系統(tǒng)安裝有相同的渲染器,這樣處置是因?yàn)椴煌珻luster渲染出來的結(jié)果有可能存在色差問題;另外,同一Cluster通常位于同一網(wǎng)絡(luò),可以快速訪問其相應(yīng)的文件服務(wù)器,節(jié)點(diǎn)間的通信開銷在可控范圍內(nèi)。擴(kuò)展后的渲染流程如下:用戶向渲染應(yīng)用服務(wù)器提交了渲染請(qǐng)求后,渲染任務(wù)將保存到數(shù)據(jù)庫(kù)服務(wù)器中,并通知用戶將渲染源文件及材質(zhì)文件等上傳至文件服務(wù)器F中。由于不同Cluster可能是異地分布的,所以文件服務(wù)器也是異地分布的,每個(gè)Cluster通常能就近高效訪問文件服務(wù)器。渲染管理服務(wù)器收到渲染任務(wù)后,從渲染節(jié)點(diǎn)集群集中選擇合適的集群(可能是多個(gè),如果是多個(gè)的話,需要首先進(jìn)行任務(wù)的切分)執(zhí)行渲染任務(wù),當(dāng)渲染任務(wù)執(zhí)行完畢后,一方面,將渲染狀態(tài)反饋回渲染管理服務(wù)器,另一方面直接由執(zhí)行渲染任務(wù)的Cluster返回渲染結(jié)果至相應(yīng)的文件服務(wù)器,用戶通過上網(wǎng)即可查看渲染狀態(tài)和下載渲染結(jié)果。為了減少網(wǎng)絡(luò)拓?fù)鋵?duì)渲染性能的影響,在渲染節(jié)點(diǎn)集群調(diào)度中,使用了topology-aware的調(diào)度策略,實(shí)現(xiàn)了渲染資源就近調(diào)度及最大調(diào)度。例如:如果在學(xué)校A里能找到滿足要求的渲染資源可調(diào)用,則來自學(xué)校A局域網(wǎng)里的渲染請(qǐng)求將優(yōu)先考慮學(xué)校A里的渲染集群,這就是就近分配的原則;若來自學(xué)校A的渲染請(qǐng)求(要求N核資源執(zhí)行渲染任務(wù))在學(xué)校A部署的集群集里空閑的CPU已不夠N核,但在另一學(xué)校B部署的集群里卻又滿足N核的請(qǐng)求,此時(shí),平臺(tái)優(yōu)先將任務(wù)分配到學(xué)校B部署的集群中執(zhí)行,從而減少因?yàn)殇秩救蝿?wù)過分劃分導(dǎo)致性能的下降,也盡可能地減少了因?yàn)榧簷C(jī)型不太一致導(dǎo)致的色差問題,這就是最大分配的考慮。4平臺(tái)配置及染液分配在學(xué)校A的局域網(wǎng)內(nèi)部署了2個(gè)渲染集群C1,C2,在學(xué)校B的局域網(wǎng)內(nèi)部署了另外2個(gè)渲染集群C3,C4,每個(gè)渲染集群里的渲染節(jié)點(diǎn)都是學(xué)校A和學(xué)校B云平臺(tái)上的虛擬機(jī)VM(64bit),分配給VM的CPU核數(shù)和內(nèi)存可以通過云計(jì)算管理平臺(tái)進(jìn)行重新配置。每個(gè)渲染集群都部署有Drqueue作為渲染管理軟件,每個(gè)渲染節(jié)點(diǎn)安裝Centos操作系統(tǒng),實(shí)驗(yàn)中渲染器也采用開源的Blender(當(dāng)然,Drqueue也支持其他渲染器,如maya,3Dmax等常用渲染器)。實(shí)驗(yàn)渲染案例是25幀的blender動(dòng)畫,分辨率為8000×6000。平臺(tái)的渲染時(shí)間開銷及渲染加速比如表1所示。表1結(jié)果表明:在普通實(shí)驗(yàn)機(jī)上(表1中的第一行)執(zhí)行的渲染任務(wù)應(yīng)用到該平臺(tái)上,只需求很短的時(shí)間,該平臺(tái)有很好的加速比,能勝任大創(chuàng)作,并在較短時(shí)間內(nèi)完成渲染任務(wù)。5云染染實(shí)驗(yàn)平臺(tái)開源的Drqueu

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論