![基于軟件框架的數(shù)據(jù)處理課件_第1頁](http://file4.renrendoc.com/view/5f01b68818f9cd153b196682cbee2dbb/5f01b68818f9cd153b196682cbee2dbb1.gif)
![基于軟件框架的數(shù)據(jù)處理課件_第2頁](http://file4.renrendoc.com/view/5f01b68818f9cd153b196682cbee2dbb/5f01b68818f9cd153b196682cbee2dbb2.gif)
![基于軟件框架的數(shù)據(jù)處理課件_第3頁](http://file4.renrendoc.com/view/5f01b68818f9cd153b196682cbee2dbb/5f01b68818f9cd153b196682cbee2dbb3.gif)
![基于軟件框架的數(shù)據(jù)處理課件_第4頁](http://file4.renrendoc.com/view/5f01b68818f9cd153b196682cbee2dbb/5f01b68818f9cd153b196682cbee2dbb4.gif)
![基于軟件框架的數(shù)據(jù)處理課件_第5頁](http://file4.renrendoc.com/view/5f01b68818f9cd153b196682cbee2dbb/5f01b68818f9cd153b196682cbee2dbb5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
基于軟件框架的數(shù)據(jù)處理基于軟件框架的數(shù)據(jù)處理主要內(nèi)容背景介紹離線數(shù)據(jù)處理及軟件軟件框架框架實例:Gaudi&SNiPER代碼示范總結(jié)和展望基于軟件框架的數(shù)據(jù)處理2主要內(nèi)容背景介紹基于軟件框架的數(shù)據(jù)處理2基于大科學裝置的實驗科學技術(shù)的發(fā)展對實驗探測技術(shù)的促進實驗規(guī)模,大型國際合作組改變了科學實驗組織模式實驗設(shè)備規(guī)模人力、物力等資源耗費規(guī)模數(shù)據(jù)規(guī)模,PB量級數(shù)據(jù)已經(jīng)很常見大亞灣中微子實驗原始數(shù)據(jù)約100TB/年建設(shè)中的江門中微子實驗原始數(shù)據(jù)約2PB/年基于軟件框架的數(shù)據(jù)處理3基于大科學裝置的實驗科學技術(shù)的發(fā)展對實驗探測技術(shù)的促進基于軟現(xiàn)代高能物理實驗的要素基于軟件框架的數(shù)據(jù)處理4事例源探測器電子學觸發(fā)、DAQ原始數(shù)據(jù)刻度、重建物理分析成果模擬探測目標的來源,如對撞機、核反應(yīng)堆、自然界的宇宙線感知探測目標探測器中反應(yīng)的數(shù)字化信號數(shù)據(jù)(過濾和)記錄還原事例的基本物理信息,如末態(tài)粒子飛行方向、能量等還原事例的完整反應(yīng)過程,如初始粒子的衰變模式等;并通過統(tǒng)計學等分析方法,從大量事例中尋找規(guī)律預(yù)研階段:優(yōu)化探測器設(shè)計、對離線軟件進行檢驗等取數(shù)階段:幫助我們理解探測器性能和軟件性能等現(xiàn)代高能物理實驗的要素基于軟件框架的數(shù)據(jù)處理4事例源探測器電離線軟件在數(shù)據(jù)處理中的作用基于軟件框架的數(shù)據(jù)處理5照相(鏡頭/快門)看相洗相(暗室/顯影/定影)數(shù)據(jù)獲取硬件設(shè)備和物理學家之間的橋梁,從數(shù)據(jù)到物理成果轉(zhuǎn)化中的關(guān)鍵和重要環(huán)節(jié)刻度、重建洗相物理分析看相離線軟件在數(shù)據(jù)處理中的作用基于軟件框架的數(shù)據(jù)處理5照相看相洗主要內(nèi)容背景介紹離線數(shù)據(jù)處理及軟件軟件框架框架實例:Gaudi&SNiPER代碼示范總結(jié)和展望基于軟件框架的數(shù)據(jù)處理6主要內(nèi)容背景介紹基于軟件框架的數(shù)據(jù)處理6離線數(shù)據(jù)處理示意圖基于軟件框架的數(shù)據(jù)處理7othersites分布式站點數(shù)據(jù)中心實驗數(shù)據(jù)元數(shù)據(jù)實驗數(shù)據(jù)元數(shù)據(jù)刻度Keep-UpProduction(準實時)PhysicsProduction(定期)元數(shù)據(jù)庫Bookkeeping磁盤磁帶backup數(shù)據(jù)存儲/管理條件數(shù)據(jù)庫數(shù)據(jù)質(zhì)量檢查/監(jiān)控成果發(fā)布latestconditiondatafullreconstructionalgorithmspreliminarydataqualityvalidatedandfrozenconditiondataofficialreleasedandvalidateds/wdataqualityfilebyfiletrackrunbyruntrack實驗現(xiàn)場PhysicsAnalysis(持續(xù))離線數(shù)據(jù)處理示意圖基于軟件框架的數(shù)據(jù)處理7othersit數(shù)據(jù)處理軟件(一)模擬在實驗預(yù)研和建設(shè)階段優(yōu)化探測器的設(shè)計,驗證其性能指標為離線數(shù)據(jù)處理系統(tǒng)的開發(fā)提供基礎(chǔ),驗證離線軟件性能在實驗運行期間幫助物理學家理解探測器性能獲取物理分析軟件的性能、誤差等在整個實驗周期內(nèi)都具有重要作用刻度探測器校準微小的位移自然老化造成的響應(yīng)變化等等……刻度數(shù)據(jù)(條件數(shù)據(jù))的管理不同條件數(shù)據(jù)有不同的更新周期條件數(shù)據(jù)庫為重建算法的精確度提供保障基于軟件框架的數(shù)據(jù)處理8數(shù)據(jù)處理軟件(一)模擬刻度基于軟件框架的數(shù)據(jù)處理8數(shù)據(jù)處理軟件(二)重建物理分析從海量數(shù)據(jù)中尋找感興趣的信號統(tǒng)計學+物理學其他事例顯示數(shù)據(jù)質(zhì)量檢查軟件validation…基于軟件框架的數(shù)據(jù)處理9原始數(shù)據(jù):電子學信號,如探測單元、信號(脈沖)幅度和時間重建數(shù)據(jù):如微觀粒子的能量、電荷、空間位置和運動方向等重建結(jié)果的質(zhì)量,對物理分析有直接影響數(shù)據(jù)處理軟件(二)重建物理分析基于軟件框架的數(shù)據(jù)處理9原始數(shù)數(shù)據(jù)處理軟件的開發(fā)周期10實驗預(yù)研探測設(shè)施建造探測器運行取數(shù)探測器壽命到期模擬軟件數(shù)據(jù)重建軟件探測器刻度軟件
物理分析軟件基于軟件框架的數(shù)據(jù)處理數(shù)據(jù)處理軟件的開發(fā)周期10實驗預(yù)研模擬軟件數(shù)據(jù)重建軟件物理分高能物理數(shù)據(jù)處理軟件的特點探測器通常是獨一無二的高成本定制設(shè)備,非批量生產(chǎn)的工業(yè)化產(chǎn)品數(shù)據(jù)處理軟件:自主開發(fā)+開源軟件和工具實驗設(shè)備越來越復雜,參與人員越來越多更細的分工、團隊合作數(shù)據(jù)處理軟件開發(fā)面臨的挑戰(zhàn)數(shù)據(jù)處理過程紛繁復雜,需求多種多樣從原始數(shù)據(jù)到最終物理成果經(jīng)過多個環(huán)節(jié),前后步驟需要緊密銜接人員組織相對分散(世界各地)、流動性強(學生畢業(yè)),物理學家軟件背景不一實驗生命周期內(nèi)的長期發(fā)展和維護基于軟件框架的數(shù)據(jù)處理11高能物理數(shù)據(jù)處理軟件的特點探測器通常是獨一無二的高成本定制設(shè)基于框架的離線軟件系統(tǒng)12國內(nèi)離線軟件系統(tǒng)BESIII實驗的BOSSDYB實驗的NuWaJUNO實驗的SNiPER。。。流水線思維,離線軟件為流水線,數(shù)據(jù)為產(chǎn)品問題分解:模塊化設(shè)計和開發(fā),方便成員間的分工和合作有機整體:通過框架實現(xiàn)不同模塊的組合或替換,保證前后步驟的正確銜接團隊協(xié)作較復雜的功能由有經(jīng)驗的人員實現(xiàn),物理學家不必接觸軟件技術(shù)細節(jié)長周期內(nèi),穩(wěn)定的軟件接口、統(tǒng)一的開發(fā)規(guī)范基于軟件框架的數(shù)據(jù)處理基于框架的離線軟件系統(tǒng)12國內(nèi)離線軟件系統(tǒng)流水線思維,離線軟主要內(nèi)容背景介紹離線數(shù)據(jù)處理及軟件軟件框架框架實例:Gaudi&SNiPER代碼示范總結(jié)和展望基于軟件框架的數(shù)據(jù)處理13主要內(nèi)容背景介紹基于軟件框架的數(shù)據(jù)處理13離線軟件的構(gòu)成基礎(chǔ)軟件庫和工具軟件開發(fā)通用庫和工具高能物理領(lǐng)域通用的流行軟件:Geant4,ROOT等框架軟件狹義上指通用的離線軟件框架,與實驗無關(guān),如Gaudi、SNiPER等通常也包括與實驗相關(guān)的通用功能模塊,如數(shù)據(jù)模型及其I/O、數(shù)據(jù)庫接口等數(shù)據(jù)處理和分析軟件與實驗緊密相關(guān),需要有物理背景人員開發(fā)專注于對數(shù)據(jù)的計算(算法),不用關(guān)心底層軟件技術(shù)細節(jié)基于軟件框架的數(shù)據(jù)處理14離線軟件的構(gòu)成基礎(chǔ)軟件庫和工具基于軟件框架的數(shù)據(jù)處理14軟件框架基于軟件框架的數(shù)據(jù)處理15軟件框架(Softwareframework),通常指的是為了實現(xiàn)某個業(yè)界標準或完成特定基本任務(wù)的軟件組件規(guī)范,也指為了實現(xiàn)某個軟件組件規(guī)范時,提供規(guī)范所要求之基礎(chǔ)功能的軟件產(chǎn)品。
----百度百科面向領(lǐng)域,一般不能跨領(lǐng)域使用WEB開發(fā)領(lǐng)域:如Struts、Spring高能物理領(lǐng)域:Gaudi、SNiPER等軟件框架基于軟件框架的數(shù)據(jù)處理15軟件框架(Software軟件框架VS.軟件庫定位軟件庫著眼于處理某一個/一類問題,軟件框架著眼于處理某一領(lǐng)域問題使用方式軟件庫(函數(shù))由用戶調(diào)用,是用戶搭建自己軟件大廈的磚塊軟件框架反向調(diào)用用戶代碼軟件框架中不包含具體功能,但抽象化了軟件的主體執(zhí)行邏輯用戶定義軟件執(zhí)行的具體細節(jié)軟件框架代表了軟件復用的新高度介于傳統(tǒng)軟件庫與完整軟件產(chǎn)品之間的“半成品”高度模塊化,易擴展用戶能夠更專注于具體問題(如數(shù)據(jù)處理算法),以插件形式將自己的代碼嵌入框架執(zhí)行基于軟件框架的數(shù)據(jù)處理16軟件框架VS.軟件庫定位基于軟件框架的數(shù)據(jù)處理16高能物理實驗數(shù)據(jù)的組織方式17事例1離線軟件一般以事例循環(huán)方式線性處理事例之間相對獨立,或僅時間鄰近的事例之間存在關(guān)聯(lián)事例2事例3事例4事例5事例6…事例:微觀粒子在探測器中的一次可觀測反應(yīng),如e+、e-的一次對撞數(shù)據(jù)文件:若干事例按時間順序依次保存到文件Run:探測器一個運行周期(簡單理解為一次開、關(guān)機)期間的數(shù)據(jù),包含若干文件對撞機中粒子束流不斷衰減,BESIII每隔1-2小時需要重新注束大亞灣實驗探測器每2-3天需要做一次刻度基于軟件框架的數(shù)據(jù)處理高能物理實驗數(shù)據(jù)的組織方式17事例1離線軟件一般以事例循環(huán)方最簡單的軟件框架什么樣?18beginendmoreeventsYNexecute基于事例循環(huán)的數(shù)據(jù)處理偽代碼:最基本要素:反向調(diào)用用戶代碼readEvent()、process(evt)、writeResult(evt)提供事例循環(huán)的頂層執(zhí)行邏輯基于軟件框架的數(shù)據(jù)處理最簡單的軟件框架什么樣?18beginendmoreeve完備的軟件框架主要功能核心功能數(shù)據(jù)管理數(shù)據(jù)格式及其存取內(nèi)存數(shù)據(jù)管理任務(wù)執(zhí)行的流程控制模塊的加載、決定執(zhí)行次序公共服務(wù)功能模塊如條件數(shù)據(jù)庫查詢等用戶編程和運行參數(shù)配置接口統(tǒng)一計算環(huán)境和軟件平臺19軟件框架決定著整個離線軟件系統(tǒng)的設(shè)計理念、實現(xiàn)和使用方式、性能和可靠性等用戶規(guī)范編程語言及接口,編碼風格統(tǒng)一的運行方式一致的開發(fā)和編譯環(huán)境Cmake、gcc開發(fā)管理和版本控制Git、CVS、SVN統(tǒng)一的版本發(fā)布和安裝基于軟件框架的數(shù)據(jù)處理完備的軟件框架主要功能核心功能數(shù)據(jù)管理統(tǒng)一計算環(huán)境和軟件平臺軟件框架的模塊化和層次化20功能分解和模塊化設(shè)計一個模塊專注于完成某項特定功能由相互關(guān)聯(lián)緊密的類組成靈活性與復雜度的平衡決定模塊粒度劃分模塊間通過接口交互模塊內(nèi)部高內(nèi)聚,模塊之間弱耦合模塊整體可替換為不同實現(xiàn)插件式開發(fā)和使用在不影響原有模塊情況下,向框架骨架中添加新功能層次間相互關(guān)系穩(wěn)定,通過協(xié)議約定降低耦合對比MVC(Model-View-Controller)模型,個人給高能物理離線軟件中常見的層次模型起名為M3CModel-Controller-Calculation-Configure基于軟件框架的數(shù)據(jù)處理軟件框架的模塊化和層次化20功能分解和模塊化設(shè)計層次間相互關(guān)主要內(nèi)容背景介紹離線數(shù)據(jù)處理及軟件軟件框架框架實例:Gaudi&SNiPER代碼示范總結(jié)和展望基于軟件框架的數(shù)據(jù)處理21主要內(nèi)容背景介紹基于軟件框架的數(shù)據(jù)處理21Gaudi由CERN為LHCb開發(fā),非常適合對撞機實驗使用國內(nèi)主要應(yīng)用BESIII實驗:完美使用大亞灣中微子實驗:可用,但遇到一些困難SNiPER最初為應(yīng)對江門中微子實驗(JUNO)的需求而自主開發(fā)吸取了Gaudi的有益經(jīng)驗和在大亞灣實驗上的教訓針對非對撞機實驗(特別是中微子實驗)做了針對性設(shè)計被國內(nèi)JUNO、LHAASO以及美國的nEXO等實驗采用基于軟件框架的數(shù)據(jù)處理22Gaudi基于軟件框架的數(shù)據(jù)處理22Gaudi軟件框架架構(gòu)示意圖基于軟件框架的數(shù)據(jù)處理23算法(多變)與數(shù)據(jù)(穩(wěn)定)分離瞬態(tài)數(shù)據(jù)(內(nèi)存)與持久數(shù)據(jù)(磁盤)分離Gaudi軟件框架架構(gòu)示意圖基于軟件框架的數(shù)據(jù)處理23算法(Gaudi中的主要組件及其管理算法,對事例數(shù)據(jù)進行計算處理的功能單元一般由框架按規(guī)則調(diào)用執(zhí)行,事例循環(huán)過程中執(zhí)行的計算模擬、刻度、重建和分析都主要以算法的形式實現(xiàn)服務(wù),提供公共的輔助性功能,一般由有經(jīng)驗的人員開發(fā)由用戶按需調(diào)用執(zhí)行如探測器幾何信息、條件數(shù)據(jù)庫查詢等組件以插件形式開發(fā),框架通過接口訪問組件新組件的開發(fā)不影響框架和原有組件用戶根據(jù)具體任務(wù)目標選擇加載組件,執(zhí)行不同的應(yīng)用功能基于軟件框架的數(shù)據(jù)處理24框架:舞臺服務(wù):燈光、音樂、布景算法:用戶的表演Gaudi中的主要組件及其管理算法,對事例數(shù)據(jù)進行計算處理的在Gaudi中開發(fā)一個新算法基于軟件框架的數(shù)據(jù)處理25設(shè)計的復用ConcreteAlgorithmAlgorithminitialize()execute()finalize()initialize()execute()finalize()從Algorithm基類派生,完成接口的具體實現(xiàn)不必考慮應(yīng)用整體的設(shè)計與其它組件通過框架交互沒有面向?qū)ο缶幊探?jīng)驗的用戶也能快速開發(fā);用戶能更專注于科學計算本身在Gaudi中開發(fā)一個新算法基于軟件框架的數(shù)據(jù)處理25設(shè)計的基于軟件框架的數(shù)據(jù)處理26Gaudi應(yīng)用運行時序圖結(jié)構(gòu)的復用初始化事例循環(huán)收尾工作基于軟件框架的數(shù)據(jù)處理26Gaudi應(yīng)用運行時序圖結(jié)構(gòu)的復用SNiPER軟件框架沿襲Gaudi中的算法、服務(wù)概念新增任務(wù)(Task)組件Task負責事例循環(huán)Task可以嵌套子Task,即事例循環(huán)的嵌套事例內(nèi)存管理基于時間窗的事例緩存,支持鄰近事例的關(guān)聯(lián)處理和分析輕量,核心模塊僅依賴C++標準庫和準標準庫Boost框架關(guān)鍵功能完備基于軟件框架的數(shù)據(jù)處理27繼續(xù)前面對舞臺的類比在SNiPER中,用戶可以表演劇中劇,對數(shù)據(jù)處理實現(xiàn)更為復雜的邏輯控制SNiPER軟件框架沿襲Gaudi中的算法、服務(wù)概念基于軟件主要內(nèi)容背景介紹離線數(shù)據(jù)處理及軟件軟件框架框架實例:Gaudi&SNiPER代碼示范總結(jié)和展望基于軟件框架的數(shù)據(jù)處理28主要內(nèi)容背景介紹基于軟件框架的數(shù)據(jù)處理28實現(xiàn)一個算法(C++偽代碼)基于軟件框架的數(shù)據(jù)處理29使用接口訪問數(shù)據(jù):與數(shù)據(jù)讀取模塊、其它算法解耦和。調(diào)用公共服務(wù):以條件數(shù)據(jù)庫服務(wù)為例,服務(wù)根據(jù)事例上下文自動查找正確的數(shù)據(jù),用戶不必自己寫SQL語句。注冊后的數(shù)據(jù)可被其它模塊訪問,或保存到輸出文件。用戶能更專注于解決物理/數(shù)學問題。實現(xiàn)一個算法(C++偽代碼)基于軟件框架的數(shù)據(jù)處理29使用接運行時作業(yè)配置(Python偽代碼)基于軟件框架的數(shù)據(jù)處理30模塊替換,讀取不同格式數(shù)據(jù)算法組合,執(zhí)行不同功能按需加載公共服務(wù)Gaudi和SNiPER均支持(一定程度上的)C++和Python混合編程C++開發(fā)算法/服務(wù)模塊,能夠保證運行速度Python主要用于作業(yè)配置,靈活性強、調(diào)整參數(shù)方便,還可避免反復編譯等麻煩運行時作業(yè)配置(Python偽代碼)基于軟件框架的數(shù)據(jù)處理3主要內(nèi)容背景介紹離線數(shù)據(jù)處理及軟件軟件框架框架實例:Gaudi&SNiPER代碼示范總結(jié)和展望基于軟件框架的數(shù)據(jù)處理31主要內(nèi)容背景介紹基于軟件框架的數(shù)據(jù)處理31基于軟件框架的數(shù)據(jù)處理系統(tǒng)基于軟件框架的數(shù)據(jù)處理32物理軟件平臺ROOTGeant4CLHEP???BOOSTPython框架軟件(SNiPER,GAUDI…)基礎(chǔ)軟件庫數(shù)據(jù)處理系統(tǒng)BOSSNuWa???物理成果實驗平臺基于軟件框架的數(shù)據(jù)處理系統(tǒng)基于軟件框架的數(shù)據(jù)處理32物理軟件展望未來信息技術(shù)仍在快速發(fā)展中并行計算、異構(gòu)計算、大數(shù)據(jù)技術(shù)、機器學習等數(shù)據(jù)處理軟件在科學實驗中的應(yīng)用展望數(shù)據(jù)爆炸的時代,科學實驗對數(shù)據(jù)處理技術(shù)越來越依賴軟件開發(fā)技術(shù)+專業(yè)知識=專業(yè)化數(shù)據(jù)處理軟件的發(fā)展方向高層應(yīng)用(算法)開發(fā)簡單化底層軟件專業(yè)化,向高層用戶隱藏技術(shù)復雜性基于軟件框架的數(shù)據(jù)處理33展望未來信息技術(shù)仍在快速發(fā)展中基于軟件框架的數(shù)據(jù)處理33謝謝!基于軟件框架的數(shù)據(jù)處理34謝謝!基于軟件框架的數(shù)據(jù)處理34軟件復用技術(shù)的發(fā)展35結(jié)構(gòu)化軟件開發(fā)(FORTRAN)面向?qū)ο筌浖_發(fā)(C++/Java)面向組件和接口的開發(fā)(軟件框架)代碼復用,函數(shù)庫類庫組件復用,設(shè)計復用,結(jié)構(gòu)復用代碼片段的復用,用戶仍需考慮應(yīng)用的所有細節(jié)源代碼復用的高級形式,相對完整的軟件子功能復用比類庫粒度更大的子功能復用;按接口規(guī)范開發(fā)用戶代碼,復用框架的組件設(shè)計和骨架結(jié)構(gòu)隨著軟件規(guī)模的增長:開發(fā)難度、維護開銷等因素愈發(fā)重要基于軟件框架的數(shù)據(jù)處理軟件復用技術(shù)的發(fā)展35結(jié)構(gòu)化軟件開發(fā)(FORTRAN)面向?qū)?6摘自黃性濤教授(山東大學)報告系統(tǒng)和框架基于軟件框架的數(shù)據(jù)處理36摘自黃性濤教授(山東大學)報告系統(tǒng)和框架基于軟件框架的數(shù)基于軟件框架的數(shù)據(jù)處理基于軟件框架的數(shù)據(jù)處理主要內(nèi)容背景介紹離線數(shù)據(jù)處理及軟件軟件框架框架實例:Gaudi&SNiPER代碼示范總結(jié)和展望基于軟件框架的數(shù)據(jù)處理38主要內(nèi)容背景介紹基于軟件框架的數(shù)據(jù)處理2基于大科學裝置的實驗科學技術(shù)的發(fā)展對實驗探測技術(shù)的促進實驗規(guī)模,大型國際合作組改變了科學實驗組織模式實驗設(shè)備規(guī)模人力、物力等資源耗費規(guī)模數(shù)據(jù)規(guī)模,PB量級數(shù)據(jù)已經(jīng)很常見大亞灣中微子實驗原始數(shù)據(jù)約100TB/年建設(shè)中的江門中微子實驗原始數(shù)據(jù)約2PB/年基于軟件框架的數(shù)據(jù)處理39基于大科學裝置的實驗科學技術(shù)的發(fā)展對實驗探測技術(shù)的促進基于軟現(xiàn)代高能物理實驗的要素基于軟件框架的數(shù)據(jù)處理40事例源探測器電子學觸發(fā)、DAQ原始數(shù)據(jù)刻度、重建物理分析成果模擬探測目標的來源,如對撞機、核反應(yīng)堆、自然界的宇宙線感知探測目標探測器中反應(yīng)的數(shù)字化信號數(shù)據(jù)(過濾和)記錄還原事例的基本物理信息,如末態(tài)粒子飛行方向、能量等還原事例的完整反應(yīng)過程,如初始粒子的衰變模式等;并通過統(tǒng)計學等分析方法,從大量事例中尋找規(guī)律預(yù)研階段:優(yōu)化探測器設(shè)計、對離線軟件進行檢驗等取數(shù)階段:幫助我們理解探測器性能和軟件性能等現(xiàn)代高能物理實驗的要素基于軟件框架的數(shù)據(jù)處理4事例源探測器電離線軟件在數(shù)據(jù)處理中的作用基于軟件框架的數(shù)據(jù)處理41照相(鏡頭/快門)看相洗相(暗室/顯影/定影)數(shù)據(jù)獲取硬件設(shè)備和物理學家之間的橋梁,從數(shù)據(jù)到物理成果轉(zhuǎn)化中的關(guān)鍵和重要環(huán)節(jié)刻度、重建洗相物理分析看相離線軟件在數(shù)據(jù)處理中的作用基于軟件框架的數(shù)據(jù)處理5照相看相洗主要內(nèi)容背景介紹離線數(shù)據(jù)處理及軟件軟件框架框架實例:Gaudi&SNiPER代碼示范總結(jié)和展望基于軟件框架的數(shù)據(jù)處理42主要內(nèi)容背景介紹基于軟件框架的數(shù)據(jù)處理6離線數(shù)據(jù)處理示意圖基于軟件框架的數(shù)據(jù)處理43othersites分布式站點數(shù)據(jù)中心實驗數(shù)據(jù)元數(shù)據(jù)實驗數(shù)據(jù)元數(shù)據(jù)刻度Keep-UpProduction(準實時)PhysicsProduction(定期)元數(shù)據(jù)庫Bookkeeping磁盤磁帶backup數(shù)據(jù)存儲/管理條件數(shù)據(jù)庫數(shù)據(jù)質(zhì)量檢查/監(jiān)控成果發(fā)布latestconditiondatafullreconstructionalgorithmspreliminarydataqualityvalidatedandfrozenconditiondataofficialreleasedandvalidateds/wdataqualityfilebyfiletrackrunbyruntrack實驗現(xiàn)場PhysicsAnalysis(持續(xù))離線數(shù)據(jù)處理示意圖基于軟件框架的數(shù)據(jù)處理7othersit數(shù)據(jù)處理軟件(一)模擬在實驗預(yù)研和建設(shè)階段優(yōu)化探測器的設(shè)計,驗證其性能指標為離線數(shù)據(jù)處理系統(tǒng)的開發(fā)提供基礎(chǔ),驗證離線軟件性能在實驗運行期間幫助物理學家理解探測器性能獲取物理分析軟件的性能、誤差等在整個實驗周期內(nèi)都具有重要作用刻度探測器校準微小的位移自然老化造成的響應(yīng)變化等等……刻度數(shù)據(jù)(條件數(shù)據(jù))的管理不同條件數(shù)據(jù)有不同的更新周期條件數(shù)據(jù)庫為重建算法的精確度提供保障基于軟件框架的數(shù)據(jù)處理44數(shù)據(jù)處理軟件(一)模擬刻度基于軟件框架的數(shù)據(jù)處理8數(shù)據(jù)處理軟件(二)重建物理分析從海量數(shù)據(jù)中尋找感興趣的信號統(tǒng)計學+物理學其他事例顯示數(shù)據(jù)質(zhì)量檢查軟件validation…基于軟件框架的數(shù)據(jù)處理45原始數(shù)據(jù):電子學信號,如探測單元、信號(脈沖)幅度和時間重建數(shù)據(jù):如微觀粒子的能量、電荷、空間位置和運動方向等重建結(jié)果的質(zhì)量,對物理分析有直接影響數(shù)據(jù)處理軟件(二)重建物理分析基于軟件框架的數(shù)據(jù)處理9原始數(shù)數(shù)據(jù)處理軟件的開發(fā)周期46實驗預(yù)研探測設(shè)施建造探測器運行取數(shù)探測器壽命到期模擬軟件數(shù)據(jù)重建軟件探測器刻度軟件
物理分析軟件基于軟件框架的數(shù)據(jù)處理數(shù)據(jù)處理軟件的開發(fā)周期10實驗預(yù)研模擬軟件數(shù)據(jù)重建軟件物理分高能物理數(shù)據(jù)處理軟件的特點探測器通常是獨一無二的高成本定制設(shè)備,非批量生產(chǎn)的工業(yè)化產(chǎn)品數(shù)據(jù)處理軟件:自主開發(fā)+開源軟件和工具實驗設(shè)備越來越復雜,參與人員越來越多更細的分工、團隊合作數(shù)據(jù)處理軟件開發(fā)面臨的挑戰(zhàn)數(shù)據(jù)處理過程紛繁復雜,需求多種多樣從原始數(shù)據(jù)到最終物理成果經(jīng)過多個環(huán)節(jié),前后步驟需要緊密銜接人員組織相對分散(世界各地)、流動性強(學生畢業(yè)),物理學家軟件背景不一實驗生命周期內(nèi)的長期發(fā)展和維護基于軟件框架的數(shù)據(jù)處理47高能物理數(shù)據(jù)處理軟件的特點探測器通常是獨一無二的高成本定制設(shè)基于框架的離線軟件系統(tǒng)48國內(nèi)離線軟件系統(tǒng)BESIII實驗的BOSSDYB實驗的NuWaJUNO實驗的SNiPER。。。流水線思維,離線軟件為流水線,數(shù)據(jù)為產(chǎn)品問題分解:模塊化設(shè)計和開發(fā),方便成員間的分工和合作有機整體:通過框架實現(xiàn)不同模塊的組合或替換,保證前后步驟的正確銜接團隊協(xié)作較復雜的功能由有經(jīng)驗的人員實現(xiàn),物理學家不必接觸軟件技術(shù)細節(jié)長周期內(nèi),穩(wěn)定的軟件接口、統(tǒng)一的開發(fā)規(guī)范基于軟件框架的數(shù)據(jù)處理基于框架的離線軟件系統(tǒng)12國內(nèi)離線軟件系統(tǒng)流水線思維,離線軟主要內(nèi)容背景介紹離線數(shù)據(jù)處理及軟件軟件框架框架實例:Gaudi&SNiPER代碼示范總結(jié)和展望基于軟件框架的數(shù)據(jù)處理49主要內(nèi)容背景介紹基于軟件框架的數(shù)據(jù)處理13離線軟件的構(gòu)成基礎(chǔ)軟件庫和工具軟件開發(fā)通用庫和工具高能物理領(lǐng)域通用的流行軟件:Geant4,ROOT等框架軟件狹義上指通用的離線軟件框架,與實驗無關(guān),如Gaudi、SNiPER等通常也包括與實驗相關(guān)的通用功能模塊,如數(shù)據(jù)模型及其I/O、數(shù)據(jù)庫接口等數(shù)據(jù)處理和分析軟件與實驗緊密相關(guān),需要有物理背景人員開發(fā)專注于對數(shù)據(jù)的計算(算法),不用關(guān)心底層軟件技術(shù)細節(jié)基于軟件框架的數(shù)據(jù)處理50離線軟件的構(gòu)成基礎(chǔ)軟件庫和工具基于軟件框架的數(shù)據(jù)處理14軟件框架基于軟件框架的數(shù)據(jù)處理51軟件框架(Softwareframework),通常指的是為了實現(xiàn)某個業(yè)界標準或完成特定基本任務(wù)的軟件組件規(guī)范,也指為了實現(xiàn)某個軟件組件規(guī)范時,提供規(guī)范所要求之基礎(chǔ)功能的軟件產(chǎn)品。
----百度百科面向領(lǐng)域,一般不能跨領(lǐng)域使用WEB開發(fā)領(lǐng)域:如Struts、Spring高能物理領(lǐng)域:Gaudi、SNiPER等軟件框架基于軟件框架的數(shù)據(jù)處理15軟件框架(Software軟件框架VS.軟件庫定位軟件庫著眼于處理某一個/一類問題,軟件框架著眼于處理某一領(lǐng)域問題使用方式軟件庫(函數(shù))由用戶調(diào)用,是用戶搭建自己軟件大廈的磚塊軟件框架反向調(diào)用用戶代碼軟件框架中不包含具體功能,但抽象化了軟件的主體執(zhí)行邏輯用戶定義軟件執(zhí)行的具體細節(jié)軟件框架代表了軟件復用的新高度介于傳統(tǒng)軟件庫與完整軟件產(chǎn)品之間的“半成品”高度模塊化,易擴展用戶能夠更專注于具體問題(如數(shù)據(jù)處理算法),以插件形式將自己的代碼嵌入框架執(zhí)行基于軟件框架的數(shù)據(jù)處理52軟件框架VS.軟件庫定位基于軟件框架的數(shù)據(jù)處理16高能物理實驗數(shù)據(jù)的組織方式53事例1離線軟件一般以事例循環(huán)方式線性處理事例之間相對獨立,或僅時間鄰近的事例之間存在關(guān)聯(lián)事例2事例3事例4事例5事例6…事例:微觀粒子在探測器中的一次可觀測反應(yīng),如e+、e-的一次對撞數(shù)據(jù)文件:若干事例按時間順序依次保存到文件Run:探測器一個運行周期(簡單理解為一次開、關(guān)機)期間的數(shù)據(jù),包含若干文件對撞機中粒子束流不斷衰減,BESIII每隔1-2小時需要重新注束大亞灣實驗探測器每2-3天需要做一次刻度基于軟件框架的數(shù)據(jù)處理高能物理實驗數(shù)據(jù)的組織方式17事例1離線軟件一般以事例循環(huán)方最簡單的軟件框架什么樣?54beginendmoreeventsYNexecute基于事例循環(huán)的數(shù)據(jù)處理偽代碼:最基本要素:反向調(diào)用用戶代碼readEvent()、process(evt)、writeResult(evt)提供事例循環(huán)的頂層執(zhí)行邏輯基于軟件框架的數(shù)據(jù)處理最簡單的軟件框架什么樣?18beginendmoreeve完備的軟件框架主要功能核心功能數(shù)據(jù)管理數(shù)據(jù)格式及其存取內(nèi)存數(shù)據(jù)管理任務(wù)執(zhí)行的流程控制模塊的加載、決定執(zhí)行次序公共服務(wù)功能模塊如條件數(shù)據(jù)庫查詢等用戶編程和運行參數(shù)配置接口統(tǒng)一計算環(huán)境和軟件平臺55軟件框架決定著整個離線軟件系統(tǒng)的設(shè)計理念、實現(xiàn)和使用方式、性能和可靠性等用戶規(guī)范編程語言及接口,編碼風格統(tǒng)一的運行方式一致的開發(fā)和編譯環(huán)境Cmake、gcc開發(fā)管理和版本控制Git、CVS、SVN統(tǒng)一的版本發(fā)布和安裝基于軟件框架的數(shù)據(jù)處理完備的軟件框架主要功能核心功能數(shù)據(jù)管理統(tǒng)一計算環(huán)境和軟件平臺軟件框架的模塊化和層次化56功能分解和模塊化設(shè)計一個模塊專注于完成某項特定功能由相互關(guān)聯(lián)緊密的類組成靈活性與復雜度的平衡決定模塊粒度劃分模塊間通過接口交互模塊內(nèi)部高內(nèi)聚,模塊之間弱耦合模塊整體可替換為不同實現(xiàn)插件式開發(fā)和使用在不影響原有模塊情況下,向框架骨架中添加新功能層次間相互關(guān)系穩(wěn)定,通過協(xié)議約定降低耦合對比MVC(Model-View-Controller)模型,個人給高能物理離線軟件中常見的層次模型起名為M3CModel-Controller-Calculation-Configure基于軟件框架的數(shù)據(jù)處理軟件框架的模塊化和層次化20功能分解和模塊化設(shè)計層次間相互關(guān)主要內(nèi)容背景介紹離線數(shù)據(jù)處理及軟件軟件框架框架實例:Gaudi&SNiPER代碼示范總結(jié)和展望基于軟件框架的數(shù)據(jù)處理57主要內(nèi)容背景介紹基于軟件框架的數(shù)據(jù)處理21Gaudi由CERN為LHCb開發(fā),非常適合對撞機實驗使用國內(nèi)主要應(yīng)用BESIII實驗:完美使用大亞灣中微子實驗:可用,但遇到一些困難SNiPER最初為應(yīng)對江門中微子實驗(JUNO)的需求而自主開發(fā)吸取了Gaudi的有益經(jīng)驗和在大亞灣實驗上的教訓針對非對撞機實驗(特別是中微子實驗)做了針對性設(shè)計被國內(nèi)JUNO、LHAASO以及美國的nEXO等實驗采用基于軟件框架的數(shù)據(jù)處理58Gaudi基于軟件框架的數(shù)據(jù)處理22Gaudi軟件框架架構(gòu)示意圖基于軟件框架的數(shù)據(jù)處理59算法(多變)與數(shù)據(jù)(穩(wěn)定)分離瞬態(tài)數(shù)據(jù)(內(nèi)存)與持久數(shù)據(jù)(磁盤)分離Gaudi軟件框架架構(gòu)示意圖基于軟件框架的數(shù)據(jù)處理23算法(Gaudi中的主要組件及其管理算法,對事例數(shù)據(jù)進行計算處理的功能單元一般由框架按規(guī)則調(diào)用執(zhí)行,事例循環(huán)過程中執(zhí)行的計算模擬、刻度、重建和分析都主要以算法的形式實現(xiàn)服務(wù),提供公共的輔助性功能,一般由有經(jīng)驗的人員開發(fā)由用戶按需調(diào)用執(zhí)行如探測器幾何信息、條件數(shù)據(jù)庫查詢等組件以插件形式開發(fā),框架通過接口訪問組件新組件的開發(fā)不影響框架和原有組件用戶根據(jù)具體任務(wù)目標選擇加載組件,執(zhí)行不同的應(yīng)用功能基于軟件框架的數(shù)據(jù)處理60框架:舞臺服務(wù):燈光、音樂、布景算法:用戶的表演Gaudi中的主要組件及其管理算法,對事例數(shù)據(jù)進行計算處理的在Gaudi中開發(fā)一個新算法基于軟件框架的數(shù)據(jù)處理61設(shè)計的復用ConcreteAlgorithmAlgorithminitialize()execute()finalize()initialize()execute()finalize()從Algorithm基類派生,完成接口的具體實現(xiàn)不必考慮應(yīng)用整體的設(shè)計與其它組件通過框架交互沒有面向?qū)ο缶幊探?jīng)驗的用戶也能快速開發(fā);用戶能更專注于科學計算本身在Gaudi中開發(fā)一個新算法基于軟件框架的數(shù)據(jù)處理25設(shè)計的基于軟件框架的數(shù)據(jù)處理62Gaudi應(yīng)用運行時序圖結(jié)構(gòu)的復用初始化事例循環(huán)收尾工作基于軟件框架的數(shù)據(jù)處理26Gaudi應(yīng)用運行時序圖結(jié)構(gòu)的復用SNiPER軟件框架沿襲Gaudi中的算法、服務(wù)概念新增任務(wù)(Task)組件Task負責事例循環(huán)Task可以嵌套子Task,即事例循環(huán)的嵌套事例內(nèi)存管理基于時間窗的事例緩存,支持鄰近事例的關(guān)聯(lián)處理和分析輕量,核心模塊僅依賴C++標準庫和準標準庫Boost框架關(guān)鍵功能完備基于軟件框架的數(shù)據(jù)處理63繼續(xù)前面對舞臺的類
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 現(xiàn)代商業(yè)辦公空間設(shè)計藝術(shù)
- 《神奇的工具》(說課稿)安徽大學版三年級下冊綜合實踐活動
- 生態(tài)城市中的綠色建筑材料應(yīng)用
- 16《朱德的扁擔》說課稿-2024-2025學年二年級上冊語文統(tǒng)編版
- 環(huán)保型辦公空間的設(shè)計與實現(xiàn)
- 七年級地理下冊 11《中國在世界中》說課稿2 魯教版五四制
- 現(xiàn)代醫(yī)療辦公中的電子病歷標準化操作教程
- 現(xiàn)代綠色物流與環(huán)境保護的協(xié)同發(fā)展
- 現(xiàn)代醫(yī)療技術(shù)下的辦公樓規(guī)劃設(shè)計
- 現(xiàn)代建筑設(shè)計的創(chuàng)新點與實踐案例分享
- 醫(yī)院消防安全培訓課件
- 質(zhì)保管理制度
- 《00541語言學概論》自考復習題庫(含答案)
- 2025年機關(guān)工會個人工作計劃
- 2024年全國卷新課標1高考英語試題及答案
- 華為經(jīng)營管理-華為激勵機制(6版)
- 城市旅行珠海景色介紹珠海旅游攻略PPT圖文課件
- 小學 三年級 科學《觀測風》教學設(shè)計
- JJF1664-2017溫度顯示儀校準規(guī)范-(高清現(xiàn)行)
- 第二講共振理論、有機酸堿理論
- 高考英語聽力必備場景詞匯精選(必看)
評論
0/150
提交評論