本發(fā)明涉及一種信號并行處理方法。
背景技術(shù):
:衛(wèi)星導(dǎo)航從基礎(chǔ)研究領(lǐng)域(天文學(xué)、力學(xué)、物理學(xué)、地球動力學(xué)等)到工程
技術(shù)領(lǐng)域:
(信息傳遞、深空探測、空間飛行器、時間傳遞、測速授時等),以及關(guān)系國民經(jīng)濟建設(shè)和國家安全的諸多重要部門和領(lǐng)域(海事、交通、救援、精準(zhǔn)農(nóng)業(yè)、地震監(jiān)測、電子通訊等)等各個方面,均占據(jù)重要地位,發(fā)揮著重要作用??梢哉f,衛(wèi)星導(dǎo)航技術(shù)是各種基礎(chǔ)理論、最新科技成果、國家科技水平和綜合實力的集中體現(xiàn)。衛(wèi)星導(dǎo)航信號是衛(wèi)星導(dǎo)航系統(tǒng)中最重要的組成部分,是衛(wèi)星、地面運控與用戶之間協(xié)調(diào)工作的紐帶。衛(wèi)星導(dǎo)航信號質(zhì)量的好壞將直接關(guān)系到系統(tǒng)定位、授時和測速等基本功能、關(guān)鍵性能和關(guān)鍵指標(biāo)的實現(xiàn)。因此,全球?qū)Ш叫l(wèi)星系統(tǒng)(globalnavigationsatellitesystem,gnss)導(dǎo)航信號質(zhì)量監(jiān)測評估是衛(wèi)星導(dǎo)航系統(tǒng)完好性的重要保障手段。目前國內(nèi)外已經(jīng)開展對gnss衛(wèi)星導(dǎo)航信號質(zhì)量的監(jiān)測評估工作,而且隨著科技的發(fā)展,信號質(zhì)量監(jiān)測評估技術(shù)和手段越來越成熟,監(jiān)測越來越全面,數(shù)據(jù)量越來越大:例如美國斯坦福大學(xué)、德國宇航研究院、英國奇爾波頓天文臺、中國科學(xué)院國家授時中心、中國衛(wèi)星導(dǎo)航定位總站、中國電子科技集團54所、北京航空航天大學(xué)、華中科技大學(xué)等單位和機構(gòu),他們均利用國內(nèi)外可利用的高增益天線(天線增益大于20dbi)、相應(yīng)的測試測量儀器(頻譜儀、矢量信號分析儀、示波器、功率計、硬件接收機)及高速數(shù)據(jù)采集設(shè)備(多通道高速數(shù)據(jù)同步采集設(shè)備),對接收的衛(wèi)星導(dǎo)航信號進行全方位多角度的實時監(jiān)測、采集和離線分析。然而研究發(fā)現(xiàn),gnss導(dǎo)航信號質(zhì)量評估工作中每天連續(xù)監(jiān)測采集的數(shù)據(jù)量非常之大:每天有若干臺頻譜儀、矢量信號分析儀、示波器、功率計等標(biāo)準(zhǔn)測量儀器對信號進行實時不間斷的監(jiān)測;有若干臺全向天線接收機實時監(jiān)測所有可視在軌衛(wèi)星,并實時輸出各顆衛(wèi)星的偽距、載波相位、多普勒、載噪比、相關(guān)曲線、定位解算數(shù)據(jù);有若干臺監(jiān)測接收機實時監(jiān)測高增益大口徑天線(一般增益高于20dbi)所對準(zhǔn)的衛(wèi)星,并實時輸出該顆衛(wèi)星的偽距、載波相位、多普勒、載噪比、相關(guān)曲線數(shù)據(jù);還有多通道同步數(shù)據(jù)高速采集設(shè)備,能夠?qū)邮盏男l(wèi)星信號進行多個通道的高速高采樣率同步數(shù)據(jù)采集與回放;另外,還有來自整個監(jiān)測評估接收系統(tǒng)的自身標(biāo)校測量數(shù)據(jù),來自外界周邊電磁環(huán)境的干擾監(jiān)測數(shù)據(jù),來自氣象測試測量儀器有關(guān)溫度、濕度、氣壓的測量數(shù)據(jù)。粗略計算結(jié)果表明:頻譜儀、矢量信號分析儀、示波器、功率計等標(biāo)準(zhǔn)測量儀器按每秒輸出一個測量值計算,則每天每臺標(biāo)準(zhǔn)儀器輸出的數(shù)據(jù)量大約為120mbytes,按5臺測量儀器計算為600mbytes/天;監(jiān)測接收機每天每臺數(shù)據(jù)量大約為20mbytes,按8臺測量儀器計算為160mbytes/天;多通道同步數(shù)據(jù)采集設(shè)備數(shù)據(jù)量巨大,按照250mhz的采樣率計算,每通道每采集1秒的數(shù)據(jù)量即為500mbytes,按3個通道計算為1.5gbytes/秒,若每天采集1小時的數(shù)據(jù),則約為5400gbytes/天;另外,為提高gnss信號分析測量精度,還有定期或不定期的其他測量數(shù)據(jù),如接收系統(tǒng)自身標(biāo)校測量數(shù)據(jù)、周邊電磁環(huán)境監(jiān)測數(shù)據(jù)、氣象測量數(shù)據(jù)。然而,如此巨大的數(shù)據(jù)量,若還是按照傳統(tǒng)的串行計算方法進行離線分析,則事后分析滯后時間太長,不能及時發(fā)現(xiàn)gnss衛(wèi)星出現(xiàn)的各種故障,用戶接收到異常的gnss衛(wèi)星導(dǎo)航信號,會產(chǎn)生較大的定位、測速和授時誤差,因此會給用戶帶來較大程度的影響。技術(shù)實現(xiàn)要素:為了克服現(xiàn)有技術(shù)在數(shù)據(jù)處理過程中經(jīng)常存在速度慢、實時性差的不足,本發(fā)明提供一種基于集群環(huán)境的針對gnss海量數(shù)據(jù)處理的并行算法,通過構(gòu)建集群并行運算環(huán)境及基于動態(tài)分配的并行算法,能夠提高數(shù)據(jù)處理運算效率,為我國衛(wèi)星導(dǎo)航服務(wù)性能的實時監(jiān)測評估以及故障快速預(yù)測預(yù)警提供有價值的參考,進一步為保障我國衛(wèi)星導(dǎo)航系統(tǒng)的高可靠服務(wù)性能和安全性做貢獻。本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案包括以下步驟:步驟1,收集所有有關(guān)gnss導(dǎo)航數(shù)據(jù)處理的各類型數(shù)據(jù);挑選出能夠綜合分析、相互無依賴關(guān)系的數(shù)據(jù);步驟2,采用若干計算機作為節(jié)點構(gòu)建集群環(huán)境,包括用戶節(jié)點、管理節(jié)點、存儲節(jié)點和計算節(jié)點;所述的用戶節(jié)點提供用戶界面,接受用戶任務(wù),通過運行調(diào)度器將任務(wù)分派到其它節(jié)點,并將運算結(jié)果返回給用戶;所述的管理節(jié)點對集群中的任意節(jié)點進行監(jiān)視和操作,并處理集群中所有節(jié)點的日志和報警信息;所述的存儲節(jié)點提供存儲共享,確保數(shù)據(jù)同步訪問;所述的計算節(jié)點包括胖節(jié)點和工作節(jié)點,胖節(jié)點的計算能力優(yōu)于工作節(jié)點,每個集群包括1個胖節(jié)點和若干工作節(jié)點;各個節(jié)點間通過進程間通信網(wǎng)絡(luò)在執(zhí)行并行任務(wù)時進行進程間通信,管理節(jié)點通過管理網(wǎng)絡(luò)收集集群信息、監(jiān)視集群計算機和執(zhí)行維護任務(wù)的網(wǎng)絡(luò),計算節(jié)點通過存儲訪問網(wǎng)絡(luò)訪問存儲節(jié)點;步驟3,針對步驟1挑選出的數(shù)據(jù)進行任務(wù)分解、數(shù)據(jù)分解或數(shù)據(jù)流分解;所述的任務(wù)分解對應(yīng)用程序根據(jù)其執(zhí)行的功能進行分解;所述的數(shù)據(jù)分解將應(yīng)用程序根據(jù)各任務(wù)所處理的數(shù)據(jù)進行分解,利用多個線程對不同的數(shù)據(jù)塊執(zhí)行相同的操作;所述的數(shù)據(jù)流分解將一個線程的輸出作為另一個線程的輸入;步驟4,構(gòu)建可并行執(zhí)行算法,具體步驟如下:(1)通過提取存儲節(jié)點的數(shù)據(jù)文件和文件列表文件標(biāo)識,完成數(shù)據(jù)采集文件的提取;(2)對提取的數(shù)據(jù)文件進行合理性檢驗、剔除野值、系統(tǒng)誤差修正和公共誤差修正;(3)將m個同步通道、每個通道n顆衛(wèi)星、每顆衛(wèi)星l個頻點的任務(wù)一次性投入集群系統(tǒng),并行計算,最后在胖節(jié)點上面完成各工作節(jié)點計算數(shù)據(jù)比價匯總;(4)對于需要其他指標(biāo)結(jié)果作為輸入的數(shù)據(jù),在執(zhí)行并行計算后執(zhí)行串行計算。所述的步驟(4)之后,客戶端與集群繪圖服務(wù)程序建立tcpsocket連接,通過并行和管道兩種方式傳輸繪圖或顯示所需數(shù)據(jù),由集群java接口配合繪圖調(diào)度完成繪圖并行處理。所述的步驟(4)計算的參數(shù)及結(jié)果圖形在胖節(jié)點上按照預(yù)定義的評估結(jié)果報表格式或要求匯總,利用多線程進行作業(yè)日志管理和報表顯示。本發(fā)明的有益效果是:本發(fā)明為克服目前現(xiàn)有技術(shù)無法實現(xiàn)巨大數(shù)據(jù)的存儲、管理和處理等問題,提出了一種基于集群并行運算的gnss導(dǎo)航信號海量數(shù)據(jù)快速處理技術(shù),不僅涵蓋如何確定數(shù)據(jù)處理算法是否可并行執(zhí)行,以及如何構(gòu)建集群并行運算環(huán)境,還解決了如何分解待并行執(zhí)行的算法,以及如何構(gòu)建可并行的執(zhí)行算法的問題。相比現(xiàn)有技術(shù),本發(fā)明將gnss導(dǎo)航信號處理算法的多數(shù)據(jù)源特性和集群的多任務(wù)進行無縫集成,針對gnss導(dǎo)航信號處理的數(shù)據(jù)種類繁多、數(shù)據(jù)量巨大等問題,提出了構(gòu)建基于集群環(huán)境的并行執(zhí)行框架,大大提高運算效率和實時性,提高運算的可靠性。本發(fā)明可應(yīng)用于全球衛(wèi)星導(dǎo)航系統(tǒng)(包括我國beidou、美國gps、歐盟galileo等系統(tǒng))衛(wèi)星導(dǎo)航信號的分析處理,尤其是對gnss衛(wèi)星導(dǎo)航信號質(zhì)量的監(jiān)測評估、導(dǎo)航信號畸變的快速診斷與實時預(yù)警建模技術(shù)的研究與實現(xiàn),有重要作用,在有效提高數(shù)據(jù)處理的運算效率基礎(chǔ)上,能夠在信號畸變未對用戶造成影響或影響不嚴(yán)重的情況下,及時發(fā)現(xiàn)該異常并在最短時間內(nèi)進行異常診斷,然后及時告知衛(wèi)星、地面運控及用戶,給系統(tǒng)決策者提供有效決策依據(jù),便于其及時采取相應(yīng)措施進行修正或補救,從而將信號畸變對用戶和整個系統(tǒng)的影響降到最低,提高衛(wèi)星導(dǎo)航系統(tǒng)服務(wù)性能的可靠性和完好性,進一步提高我國在國際衛(wèi)星導(dǎo)航領(lǐng)域的地位,提高我國衛(wèi)星導(dǎo)航系統(tǒng)在國際上的競爭力。附圖說明圖1為集群環(huán)境構(gòu)建示意圖;圖2為集群軟件系統(tǒng)結(jié)構(gòu)圖;圖3為openmp并行計算內(nèi)存共享示意圖;圖4為openmp并行計算原理示意圖;圖5為gnss導(dǎo)航信號處理集群硬件環(huán)境架構(gòu)圖;圖6為gnss導(dǎo)航信號處理算法整體并行執(zhí)行框架;圖7為gnss導(dǎo)航信號標(biāo)準(zhǔn)測量儀器數(shù)據(jù)處理并行執(zhí)行框架;圖8為gnss導(dǎo)航信號接收機數(shù)據(jù)處理并行執(zhí)行框架;圖9為gnss導(dǎo)航信號多通道同步數(shù)據(jù)處理捕獲算法并行執(zhí)行框架;圖10為gnss導(dǎo)航信號多通道同步數(shù)據(jù)處理整體算法并行執(zhí)行框架;圖11為gnss導(dǎo)航信號綜合分析處理并行執(zhí)行框架;圖12為gnss導(dǎo)航信號各類計算結(jié)果綜合及繪圖算法并行執(zhí)行框架。具體實施方式下面結(jié)合附圖和實施例對本發(fā)明進一步說明,本發(fā)明包括但不僅限于下述實施例。本發(fā)明包括以下步驟:一、步驟1,收集所有有關(guān)gnss導(dǎo)航數(shù)據(jù)處理的各類型數(shù)據(jù);挑選出能夠綜合分析、相互無依賴關(guān)系的數(shù)據(jù)。若數(shù)據(jù)間相互依賴較大,則并行處理效果不明顯,不建議利用本發(fā)明設(shè)計的并行處理技術(shù)。本步驟所涉及的主要
發(fā)明內(nèi)容主要為:衛(wèi)星導(dǎo)航信號數(shù)據(jù)處理算法是否可并行執(zhí)行的判決方法,具體判決方法如下:根據(jù)數(shù)據(jù)收集情況,若各類型數(shù)據(jù)的處理之間無相互依賴關(guān)系,也即對某種數(shù)據(jù)的處理并不依賴于其他數(shù)據(jù)的處理情況,而在最終能夠綜合各種數(shù)據(jù)的分析結(jié)果,給出綜合評估結(jié)果,則能夠綜合分析相互無依賴關(guān)系數(shù)據(jù)的處理算法適合進行集群并行處理。然后,相互無依賴關(guān)系的各類數(shù)據(jù)共同進入下一步的集群處理。例如,對于gnss導(dǎo)航數(shù)據(jù)處理的各類型數(shù)據(jù),包括標(biāo)準(zhǔn)測量儀器數(shù)據(jù)、全向天線接收機數(shù)據(jù)、監(jiān)測接收機數(shù)據(jù)、多通道同步數(shù)據(jù)采集數(shù)據(jù)、標(biāo)校數(shù)據(jù)、干擾監(jiān)測數(shù)據(jù)和氣象測試測量數(shù)據(jù),各類數(shù)據(jù)之間無相互依賴關(guān)系,如對標(biāo)準(zhǔn)測量儀器的數(shù)據(jù)處理并不依賴于其他數(shù)據(jù),各類型數(shù)據(jù)可單獨進行處理,而在各類型數(shù)據(jù)處理完畢后,綜合各類數(shù)據(jù)分析處理結(jié)果,從而給出gnss導(dǎo)航信號評估最終結(jié)果。由于各種數(shù)據(jù)的數(shù)據(jù)類型、數(shù)據(jù)大小、數(shù)據(jù)頻率有可能不同,因此,在進行并行處理前,先進行可并行性分析。進行g(shù)nss導(dǎo)航信號評估,每天都需要利用多種測量儀器設(shè)備實時或非實時地采集不同類型數(shù)據(jù):每天有若干臺全向天線接收機實時監(jiān)測所有可視在軌衛(wèi)星,并實時輸出各顆衛(wèi)星的偽距、載波相位、多普勒、載噪比、相關(guān)曲線、定位解算數(shù)據(jù);由于全向天線的低信噪比特點,需要利用高增益大口徑天線(一般增益大于20dbi)連接若干臺監(jiān)測接收機實時監(jiān)測單顆在軌衛(wèi)星,進行單星精細質(zhì)量觀測和數(shù)據(jù)采集,并實時輸出該顆衛(wèi)星的偽距、載波相位、多普勒、載噪比、相關(guān)曲線數(shù)據(jù);還有多通道同步數(shù)據(jù)高速采集設(shè)備,能夠?qū)邮盏男l(wèi)星信號進行多個通道的高速高采樣率同步數(shù)據(jù)采集與回放;另外,還有來自整個監(jiān)測評估接收系統(tǒng)的自身標(biāo)校測量數(shù)據(jù),來自外界周邊電磁環(huán)境的干擾監(jiān)測數(shù)據(jù),來自氣象測試測量儀器有關(guān)溫度、濕度、氣壓測量數(shù)據(jù)。技術(shù)效果:該
發(fā)明內(nèi)容能夠明確待分析算法是否可以進行基于集群的并行運算,僅當(dāng)算法具備可并行執(zhí)行的潛能,才能提利用本發(fā)明提高運算效率。二、步驟2,采用若干計算機作為節(jié)點構(gòu)建集群環(huán)境,包括用戶節(jié)點、管理節(jié)點、存儲節(jié)點和計算節(jié)點;所述的用戶節(jié)點提供用戶界面,接受用戶任務(wù),通過運行調(diào)度器將任務(wù)分派到其它節(jié)點,并將運算結(jié)果返回給用戶;所述的管理節(jié)點對集群中的任意節(jié)點進行監(jiān)視和操作,并處理集群中所有節(jié)點的日志和報警信息;所述的存儲節(jié)點提供存儲共享,確保數(shù)據(jù)同步訪問;所述的計算節(jié)點包括胖節(jié)點和工作節(jié)點,胖節(jié)點的計算能力優(yōu)于工作節(jié)點,每個集群包括1個胖節(jié)點和若干工作節(jié)點;各個節(jié)點間通過進程間通信網(wǎng)絡(luò)在執(zhí)行并行任務(wù)時進行進程間通信,管理節(jié)點通過管理網(wǎng)絡(luò)收集集群信息、監(jiān)視集群計算機和執(zhí)行維護任務(wù)的網(wǎng)絡(luò),計算節(jié)點通過存儲訪問網(wǎng)絡(luò)訪問存儲節(jié)點。本步驟所涉及的主要
發(fā)明內(nèi)容主要為:集群環(huán)境的最優(yōu)化構(gòu)建方法,具體構(gòu)建方法如下:若數(shù)據(jù)處理算法可并行,則下一步是針對算法構(gòu)建集群并行運算環(huán)境。并行計算的基本思想是,利用多個處理器來協(xié)同求解同一問題,將被分析的問題根據(jù)其特點分解成若干部分,每個不同的部分分別交由一個獨立的線程來并行計算,然后將各個線程的計算結(jié)果按照分解的特點進行交互和整合。集群并行運算系統(tǒng)是共同為客戶機提供網(wǎng)絡(luò)資源的一組計算機系統(tǒng)。而其中的每一臺提供服務(wù)的計算機,稱之為節(jié)點。當(dāng)一個節(jié)點不可用或者不能處理客戶的請求時,該請求將會轉(zhuǎn)到另外的可用節(jié)點來處理,而這些對于客戶端來說,它根本不必關(guān)心這些要使用的資源的具體位置,集群系統(tǒng)會自動完成。集群環(huán)境使用的服務(wù)器根據(jù)各自的功能,通常可以分為用戶節(jié)點、管理節(jié)點、存貯節(jié)點和計算節(jié)點四種。它們的角色分別是:(1)用戶節(jié)點提供用戶界面的計算機。它從用戶那里接受任務(wù),運行調(diào)度器將任務(wù)分派到其它計算機,并將運算結(jié)果返回給用戶。(2)管理節(jié)點提供管理功能的計算機。它能夠使管理員從這一計算機對集群中的任意一臺計算機進行監(jiān)視和操作,并處理集群中所有計算機的日志和報警信息。(2)存儲節(jié)點提供存儲共享的計算機。為了使任務(wù)可以并行執(zhí)行,每臺執(zhí)行任務(wù)的計算機必須能夠訪問同樣的數(shù)據(jù)。存儲節(jié)點通過網(wǎng)絡(luò)共享或其它方式來確保數(shù)據(jù)訪問的同步。(4)計算節(jié)點真正執(zhí)行計算任務(wù)的計算機,根據(jù)其計算能力,又被分為胖節(jié)點和工作節(jié)點:一般胖節(jié)點的計算能力和計算機性能優(yōu)于工作節(jié)點。每個集群環(huán)境一般僅需要1臺胖節(jié)點和若干臺工作節(jié)點。實際應(yīng)用中可根據(jù)所使用的計算機類型和計算機性能,選擇性能最高的作為胖節(jié)點。集群中的大部分計算機都是計算節(jié)點這種類型,而其中大部分又都為工作節(jié)點,僅有少數(shù)需要耗費大量資源的并行線程工作在胖節(jié)點。一個高性能集群環(huán)境通常同時使用三個網(wǎng)絡(luò),它們分別是進程間通信網(wǎng)絡(luò)(用于并行任務(wù)執(zhí)行時的進程間通信的專用網(wǎng)絡(luò),通常要求延遲小,帶寬大)、管理網(wǎng)絡(luò)(用來收集集群信息、監(jiān)視集群計算機和執(zhí)行維護任務(wù)的網(wǎng)絡(luò))和存儲訪問網(wǎng)絡(luò)(用來訪問公用存儲的專用網(wǎng)絡(luò))。根據(jù)具體的使用需求和選擇的節(jié)點特性,這些網(wǎng)絡(luò)可以使用多種介質(zhì)和協(xié)議。本發(fā)明附圖1-附圖5中詳細給出了如何構(gòu)建集群環(huán)境的三個網(wǎng)絡(luò):通信網(wǎng)、管理網(wǎng)和存儲訪問網(wǎng)。技術(shù)效果:該
發(fā)明內(nèi)容能夠幫助構(gòu)建基于集群的并行運算環(huán)境,為算法的并行實施提供硬件基礎(chǔ)條件。實例說明:如附圖1至附圖5所示,構(gòu)建集群并行運算環(huán)境。本發(fā)明提供一種已成功應(yīng)用在某部gnss導(dǎo)航信號質(zhì)量監(jiān)測評估系統(tǒng)中的集群環(huán)境構(gòu)建方法:(1)集群硬件運行環(huán)境1)計算節(jié)點服務(wù)器a)計算機類型:ibmx3650m4b)cpu:2*e5-2620c)內(nèi)存:32gbd)網(wǎng)卡:雙端口萬兆網(wǎng)卡e)數(shù)量:7臺2)胖節(jié)點服務(wù)器a)計算機類型:ibmx3850x5b)cpu:4*e7-4830c)內(nèi)存:128gbd)網(wǎng)卡:雙端口萬兆網(wǎng)卡e)數(shù)量:1臺3)存儲服務(wù)器a)計算機類型:ibmx3650m4b)cpu:e5-2620c)內(nèi)存:32gbd)硬盤空間:4*1tbe)網(wǎng)卡:雙端口萬兆網(wǎng)卡f)數(shù)量:1臺4)集群管理服務(wù)器a)計算機類型:ibmx3650m4b)cpu:e5-2620c)內(nèi)存:32gbd)網(wǎng)卡:雙端口萬兆網(wǎng)卡e)數(shù)量:1臺(2)軟件支撐環(huán)境1)集群節(jié)點操作系統(tǒng):linux(centos6.464位);2)程序開發(fā)語言(集群):matlab、c/c++、java、shell、python。(3)運行庫序號內(nèi)容版本號1pich21.52gcc4.4.73g++4.4.74fortrang775matlab2013a6cuda5.57hadoop1.2.18spark0.7.39scala2.9.310mesos0.14.211python2.6.612jdk1.713thrift0.9.0openmp定義了一套編譯指導(dǎo)語句,用于指定程序的并行性、數(shù)據(jù)的共享和私有信息。openmp以線程為基礎(chǔ),采用fork-join的形式,即在程序開始執(zhí)行的時候,只有主線程的運行線程存在,當(dāng)遇到需要并行的時候,派生出fork線程(創(chuàng)建新線程或者喚醒已有線程)來執(zhí)行并行任務(wù),此時主線程和派生線程共同工作,并行結(jié)束后,派生線程退出或者掛起,不再工作,控制流程回到單獨的主線程中(join,即多線程的會和)。三、步驟3,針對步驟1挑選出的數(shù)據(jù)進行任務(wù)分解、數(shù)據(jù)分解或數(shù)據(jù)流分解;所述的任務(wù)分解對應(yīng)用程序根據(jù)其執(zhí)行的功能進行分解;所述的數(shù)據(jù)分解將應(yīng)用程序根據(jù)各任務(wù)所處理的數(shù)據(jù)進行分解,利用多個線程對不同的數(shù)據(jù)塊執(zhí)行相同的操作;所述的數(shù)據(jù)流分解將一個線程的輸出作為另一個線程的輸入。本步驟所涉及的主要
發(fā)明內(nèi)容主要為:并行執(zhí)行算法的分解方法,具體分解方法如下:根據(jù)數(shù)據(jù)處理的任務(wù)不同、數(shù)據(jù)類型不同、每種數(shù)據(jù)的特點不同,本發(fā)明提出從以下三個層次進行算法分解的方式,具體分解方法設(shè)計如下:(1)任務(wù)分解:對應(yīng)用程序根據(jù)其執(zhí)行的功能進行分解的過程稱為任務(wù)分解(taskdecomposition)。例如,gnss信號處理需要每天給出一個評估結(jié)果報告,但是每天可能有若干個任務(wù),在不同時間段對不同數(shù)據(jù)進行采集。這就需要根據(jù)不同任務(wù)進行分解,每個任務(wù)獨立分析,最終給出多個任務(wù)的綜合分析結(jié)果。(2)數(shù)據(jù)分解:數(shù)據(jù)分解也稱為數(shù)據(jù)級并行(data-levelparallelism),是將應(yīng)用程序根據(jù)各任務(wù)所處理的數(shù)據(jù),而非按任務(wù)來進行分解的方法,利用多個線程對不同的數(shù)據(jù)塊執(zhí)行相同的操作。例如,gnss信號處理的每個任務(wù)一般都需要采集各類型的數(shù)據(jù),這種情況下可對不同數(shù)據(jù)進行分解,每種互不依賴的數(shù)據(jù)進行獨立分析,最終給出該任務(wù)下的數(shù)據(jù)綜合分析結(jié)果。(3)數(shù)據(jù)流分解:一個線程的輸出作為另一個線程的輸入,應(yīng)注意盡量避免延遲。在很多情況下,當(dāng)對一個問題進行分解時,關(guān)鍵問題在于數(shù)據(jù)在這些任務(wù)之間是如何流動的,這個時候就要采用數(shù)據(jù)流分解方式。例如,對于各類標(biāo)準(zhǔn)測量儀器,每天可能會連續(xù)采集較長時間(幾個小時或十幾、二十幾個小時)的數(shù)據(jù),對于t0時刻的數(shù)據(jù),它既是t0+1時刻預(yù)測模型的輸入,也是t0時刻數(shù)據(jù)分析步驟的輸入,也即每時刻數(shù)據(jù)都有不同的數(shù)據(jù)流動,根據(jù)各種數(shù)據(jù)類型數(shù)據(jù)的流動特點,并行執(zhí)行各類數(shù)據(jù)流,最終給出每種數(shù)據(jù)的綜合數(shù)據(jù)分析結(jié)果。技術(shù)效果:該
發(fā)明內(nèi)容能夠幫助實現(xiàn)算法的最優(yōu)化并行分解,更加充分地利用集群并行環(huán)境資源,更加高效地實現(xiàn)算法的并行處理。實例說明:如附圖6所示,將數(shù)據(jù)處理算法分解為若干可并行執(zhí)行的部分。本發(fā)明提供一種已成功應(yīng)用在某部gnss導(dǎo)航信號質(zhì)量監(jiān)測評估系統(tǒng)中的可并行執(zhí)行數(shù)據(jù)分解方法。具體做法是將gnss導(dǎo)航信號處理算法分解為五大子步驟,分解方法和原理如下:子步驟一:任務(wù)管理和任務(wù)配置:用于服務(wù)管理,負責(zé)調(diào)度、狀態(tài)上報、用戶信息接收、記錄各種日志、管理接口;子步驟二:數(shù)據(jù)處理并行分解:標(biāo)準(zhǔn)測量儀器數(shù)據(jù)處理、接收機數(shù)據(jù)處理、多通道同步數(shù)據(jù)處理、標(biāo)校數(shù)據(jù)處理、干擾數(shù)據(jù)處理和氣象數(shù)據(jù)處理;(1)標(biāo)準(zhǔn)測量儀器數(shù)據(jù)處理:啟用獨立的集群線程專門用于處理來自頻譜儀、信號分析儀、示波器、功率計數(shù)據(jù);(2)接收機數(shù)據(jù)處理:啟用獨立的集群線程專門用于處理來自全向天線接收機和監(jiān)測接收機輸出的偽距、載波相位、多普勒、載噪比、相關(guān)曲線、定位解算數(shù)據(jù);(3)多通道同步數(shù)據(jù)處理:啟用獨立的集群線程專門用于處理來自多通道同步數(shù)據(jù)采集設(shè)備的高采樣率大數(shù)據(jù),這部分?jǐn)?shù)據(jù)量巨大,并行執(zhí)行過程應(yīng)分配給該部分絕大部分的計算資源;(4)標(biāo)校數(shù)據(jù)處理:啟用獨立的集群線程專門用于處理整個導(dǎo)航信號接收通道的標(biāo)校數(shù)據(jù),包括幅頻特性、相頻特性、群時延特性,盡量減小接收通道的非理想特性給評估結(jié)果帶來的不確定影響;(5)干擾數(shù)據(jù)處理:啟用獨立的集群線程,專門用于處理導(dǎo)航信號接收系統(tǒng)周邊電磁干擾的數(shù)據(jù),包括干擾的功率、頻點和帶寬,盡量減小電磁干擾對評估結(jié)果帶來的不確定影響;(6)氣象數(shù)據(jù)處理:啟用獨立的集群線程,專門用于處理導(dǎo)航信號采集過程中的氣象監(jiān)測數(shù)據(jù),包括氣壓、溫度、濕度,盡量減小氣象條件對評估結(jié)果帶來的不確定影響。子步驟三:綜合分析處理:綜合標(biāo)準(zhǔn)測量儀器數(shù)據(jù)處理分析結(jié)果、接收機數(shù)據(jù)處理分析結(jié)果、多通道同步數(shù)據(jù)處理分析結(jié)果,并結(jié)合接收系統(tǒng)自身標(biāo)校測量數(shù)據(jù)、周邊電磁干擾監(jiān)測數(shù)據(jù)、氣象測量數(shù)據(jù)的處理結(jié)果,給出gnss導(dǎo)航信號分析處理綜合評估結(jié)果;子步驟四:動態(tài)界面管理:人機交互界面,專門用于各類輸入?yún)?shù)和輸出項的設(shè)置和選擇;子步驟五:評估結(jié)果報表管理:根據(jù)各部分的綜合分析結(jié)果,給出最終評估結(jié)果。四、步驟4,構(gòu)建可并行執(zhí)行算法,具體步驟如下:(1)通過提取存儲節(jié)點的數(shù)據(jù)文件和文件列表文件標(biāo)識,完成數(shù)據(jù)采集文件提??;(2)對提取的數(shù)據(jù)文件進行合理性檢驗、剔除野值、系統(tǒng)誤差修正和公共誤差修正;(3)將m個同步通道、每個通道n顆衛(wèi)星、每顆衛(wèi)星l個頻點的任務(wù)一次性投入集群系統(tǒng),并行計算,最后在胖節(jié)點上面完成各工作節(jié)點計算數(shù)據(jù)比價匯總;(4)對于需要其他指標(biāo)結(jié)果作為輸入的數(shù)據(jù),在執(zhí)行并行計算后執(zhí)行串行計算。本步驟所涉及的主要
發(fā)明內(nèi)容主要為:可并行執(zhí)行算法最優(yōu)化構(gòu)建方法,具體分解方法如下:明確了數(shù)據(jù)處理能夠進行并行運算,并構(gòu)建了基于集群的并行運算環(huán)境,同時也確定了對算法進行何種分解之后,最后是進行算法的并行執(zhí)行和實施。gnss導(dǎo)航信號監(jiān)測和評估需要分析處理來自不同儀器設(shè)備和各種來源的數(shù)據(jù),包括各種標(biāo)準(zhǔn)測量儀器如頻譜儀、信號分析儀、示波器、功率計數(shù)據(jù),來自全向天線接收機和監(jiān)測接收機輸出的偽距、載波相位、多普勒、載噪比、相關(guān)曲線、定位解算數(shù)據(jù),來自多通道同步數(shù)據(jù)采集設(shè)備的高采樣率大數(shù)據(jù),以及來自接收系統(tǒng)自身標(biāo)校測量數(shù)據(jù)、周邊電磁環(huán)境監(jiān)測數(shù)據(jù)、氣象測量數(shù)據(jù),數(shù)據(jù)量之大、數(shù)據(jù)種類之多,因此,必須構(gòu)建可并行執(zhí)行的算法,以期最大程度上提高算法的運算效率,提高算法的實時性。本發(fā)明將算法的多元性和集群的多任務(wù)進行無縫集成,針對gnss導(dǎo)航信號處理的多數(shù)據(jù)源和大數(shù)據(jù)量等問題,提出構(gòu)建基于集群環(huán)境的并行執(zhí)行框架,根據(jù)gnss導(dǎo)航信號分析處理的數(shù)據(jù)源特性和算法的功能,將算法分為五大步驟(詳見具體實施方式),從而實現(xiàn)算法的最優(yōu)化并行處理。技術(shù)效果:該
發(fā)明內(nèi)容能夠幫助實現(xiàn)gnss衛(wèi)星導(dǎo)航信號處理算法的最優(yōu)化并行設(shè)計與實施,相比傳統(tǒng)處理方法,能夠大大提高運算效率和實時性,提高運算的可靠性。實例說明:將算法分解后,根據(jù)各類型輸入數(shù)據(jù)特點,構(gòu)建可并行快速執(zhí)行的基于集群環(huán)境的并行處理算法。本發(fā)明提供一種已成功應(yīng)用在某部gnss導(dǎo)航信號質(zhì)量監(jiān)測評估系統(tǒng)中的并行執(zhí)行算法最優(yōu)化構(gòu)建方法。具體做法如下:(1)任務(wù)管理和任務(wù)配置:主要負責(zé)各并行執(zhí)行部分間的調(diào)度與狀態(tài)上報,所以根據(jù)負責(zé)內(nèi)容的不同,在編寫程序過程中,最好按照程序負責(zé)內(nèi)容的不同,編譯不同的目標(biāo)可執(zhí)行文件,其目的就是可以根據(jù)需要啟動或是注銷不同功能數(shù)據(jù)處理部分,以便利用多進程或是線程,并且有效的利用內(nèi)存空間,不會發(fā)生長時間無人職守工作期間任何內(nèi)存泄漏現(xiàn)象發(fā)生。(2)標(biāo)準(zhǔn)測量儀器數(shù)據(jù)處理:如附圖7所示,主要完成對示波器、矢量信號分析儀、實時頻譜分析儀、矢量網(wǎng)絡(luò)信號分析儀、功率計等儀器監(jiān)測數(shù)據(jù)的讀取、解析、處理、中間參數(shù)計算和參數(shù)存貯功能。讀取數(shù)據(jù)庫中相關(guān)數(shù)據(jù),完成參數(shù)計算和圖形繪制工作。利用集群系統(tǒng)進行多個儀器并行處理,數(shù)據(jù)處理能力大,雖然需計算參數(shù)之間相互有依賴,但時間延時不是很大,所以總體上可以表現(xiàn)出并行效果。標(biāo)準(zhǔn)測量儀器數(shù)據(jù)處理可以顯示并修改界面輸入數(shù)據(jù),可以顯示標(biāo)準(zhǔn)測量儀器數(shù)據(jù)處理的中間計算結(jié)果,并將中間結(jié)果和最終分析結(jié)果顯示并用文本導(dǎo)出。(3)接收機數(shù)據(jù)處理:如附圖8所示,類似標(biāo)準(zhǔn)測量儀器數(shù)據(jù)處理,多種不同類型或不同的接收機數(shù)據(jù)投入集群系統(tǒng)同時并行處理,完成對各類接收機數(shù)據(jù)的高速實時處理,分析評估接收機輸出的偽距、載波相位、多普勒、載噪比、相關(guān)曲線、定位解算數(shù)據(jù)。接收機數(shù)據(jù)處理可以顯示并修改界面輸入數(shù)據(jù),可以顯示接收機數(shù)據(jù)處理的中間計算結(jié)果,并將中間結(jié)果和最終分析結(jié)果顯示并用文本導(dǎo)出。(4)多通道同步數(shù)據(jù)處理:如附圖9和附圖10所示。這部分需要處理的數(shù)據(jù)量巨大,是利用集群系統(tǒng)資源最多的部分。第一步,通過提取多通道同步數(shù)據(jù)采集存儲設(shè)備的數(shù)據(jù)文件和文件列表文件標(biāo)識,完成數(shù)據(jù)采集文件的提取工作;第二步,提取的數(shù)據(jù)文件預(yù)處理,目的是對所接收的協(xié)議轉(zhuǎn)換后的數(shù)據(jù),進行合理性檢驗、剔除野值和作必要的系統(tǒng)誤差修正和公共誤差修正,對各類觀測數(shù)據(jù)進行檢驗、系統(tǒng)差修正和其它處理,為進一步的信息處理做前期數(shù)據(jù)準(zhǔn)備;第三步,主要完成軟件接收機的捕獲工作,由于捕獲各顆衛(wèi)星數(shù)據(jù)之間互不依賴,所以使用并行方法,一次性投入集群系統(tǒng),并行計算結(jié)果,最后在胖節(jié)點上面完成各分計算節(jié)點計算數(shù)據(jù)比價匯總,得出結(jié)論。如附圖9所示,假設(shè)有m個同步通道,每個通道n顆衛(wèi)星,每顆衛(wèi)星有l(wèi)個頻點,則這m*n*l個小任務(wù)之間互不依賴,可以mpi并行化;第四步,主要完成軟件接收機的跟蹤工作。如附圖10所示,因為跟蹤過程前后數(shù)據(jù)有部分依賴關(guān)系,因此,可將不依賴前后數(shù)據(jù)的計算放入了集群系統(tǒng)中并行運算。而且m個通道互不依賴,可利用mpi并行化;第五步,參數(shù)計算。絕大多數(shù)參數(shù)可以獨立進行計算,因此投入集群系統(tǒng)并行計算能大大提高運算效率,但對于有些指標(biāo)的計算還需要其他很多指標(biāo)結(jié)果作為輸入的情況,則將可并行部分執(zhí)行完后,再執(zhí)行串行計算。多通道同步數(shù)據(jù)處理可以顯示并修改界面輸入數(shù)據(jù),可以顯示中間計算結(jié)果,并將中間結(jié)果和最終分析結(jié)果顯示并用文本導(dǎo)出。(5)標(biāo)校數(shù)據(jù)、干擾數(shù)據(jù)和氣象數(shù)據(jù)的處理:這部分是啟用獨立的集群線程,專門用于處理整個導(dǎo)航信號接收通道的標(biāo)校數(shù)據(jù)、干擾數(shù)據(jù)和氣象數(shù)據(jù),輸出整個導(dǎo)航信號接收通道的幅頻特性、相頻特性、群時延特性,輸出導(dǎo)航信號接收系統(tǒng)周邊電磁干擾的功率、頻點和帶寬,輸出導(dǎo)航信號接收時的氣壓、溫度、濕度特性,盡量減小接收通道的非理想特性、電磁干擾和氣象條件給評估結(jié)果帶來的不確定影響;(6)綜合分析處理:如圖11所示,綜合評估主要是利用各類型數(shù)據(jù)的計算結(jié)果(標(biāo)準(zhǔn)處理儀器數(shù)據(jù)處理、接收機數(shù)據(jù)處理、多通道同步數(shù)據(jù)處理、標(biāo)校數(shù)據(jù)處理、電磁干擾數(shù)據(jù)處理和氣象數(shù)據(jù)處理結(jié)果)以及預(yù)設(shè)的門限值,完成對已計算出的指標(biāo)匯總,包括了對底層服務(wù)、各個部分計算結(jié)果的參數(shù)融合、最終評估指標(biāo)的計算和存儲功能,需要進行數(shù)據(jù)挖掘、數(shù)據(jù)信息再加工、多數(shù)據(jù)的聯(lián)合繪圖、指標(biāo)門限超限報警。該部分由于需要調(diào)用多種數(shù)據(jù)關(guān)系,而且數(shù)據(jù)間存在依賴關(guān)系,因此在胖節(jié)點上完成。綜合分析處理可以顯示并修改界面輸入數(shù)據(jù),可以顯示中間計算結(jié)果,并將中間結(jié)果和最終分析結(jié)果顯示并用文本導(dǎo)出。(7)動態(tài)界面管理:該部分完成對客戶端與服務(wù)器控制信令、參數(shù)和圖片數(shù)據(jù)的交互。用戶通過互聯(lián)網(wǎng)或者局域網(wǎng)訪問web服務(wù)器,服務(wù)器隨即調(diào)用相應(yīng)的服務(wù),經(jīng)過計算返回結(jié)果給訪問者。其主進程在胖節(jié)點上運行,每一個用戶登錄都是一個獨立的進程,界面上的每一個并行執(zhí)行部分、圖表都分為了獨立的線程,可以獨立刷新,從而保證頁面的完整性和流暢性。因為考慮到今后使用安全性的要求,該部分可先部署在胖節(jié)點上,并且只具有讀權(quán)限,隨著技術(shù)的完善和操作的成熟,可增加高級用戶的寫權(quán)限。五、步驟5:評估結(jié)果并行計算及并行繪圖顯示。如附圖12所示,各部分?jǐn)?shù)據(jù)處理實時計算相應(yīng)參數(shù),一旦參數(shù)計算成功,則具體繪圖工作由集群java接口配合繪圖調(diào)度完成并行處理,圖形繪制服務(wù)不僅需要傳輸大量實時或是非實時數(shù)據(jù),還需要同時兼顧用戶操作和圖形配置參數(shù),因此,本發(fā)明使用兩種數(shù)據(jù)傳輸方式:一是并行方式,二是管道方式。如圖12所示,gnuplot是一個命令行的交互式繪圖工具(command-driveninteractivefunctionplottingprogram)。用戶通過輸入命令,可以逐步設(shè)置或修改繪圖環(huán)境。繪圖的根源來自客戶端,可以是人為手動操作或自動定時刷新。客戶端要和集群的繪圖服務(wù)程序建立tcpsocket連接,而繪圖服務(wù)程序會啟動繪圖子進程,通過管道傳輸繪圖需要的參數(shù),圖形繪制完成后,畫圖服務(wù)程序讀取該文件并發(fā)給客戶端。客戶端和繪圖服務(wù)程序間每一個圖形文件請求都用獨立的線程來完成。技術(shù)效果:該
發(fā)明內(nèi)容能夠?qū)⑿l(wèi)星導(dǎo)航信號各參數(shù)的計算及結(jié)果繪制同時進行,相比傳統(tǒng)串行數(shù)據(jù)處理方法,能夠大大提高運算效率,從而進一步提高衛(wèi)星導(dǎo)航信號數(shù)據(jù)處理實時性。六、步驟6:最終結(jié)果并行輸出。評估結(jié)果報表管理負責(zé)將gnss導(dǎo)航信號處理的最終結(jié)果以報表的形式或按照所需格式和方式輸出。因為需要綜合各類并行執(zhí)行數(shù)據(jù)處理部分輸出的中間數(shù)據(jù)和結(jié)果信息,所以該部分最好在胖節(jié)點上運行,按照定義好的生成步驟,并行逐一匯總。該部分主要有兩大方面:一是作業(yè)日志管理,二是輸出報表顯示,可作多線程處理。技術(shù)效果:該
發(fā)明內(nèi)容能夠?qū)⒉⑿袌?zhí)行算法的輸出結(jié)果并行輸出顯示,相比傳統(tǒng)串行結(jié)果展示處理方法,能夠大大提高數(shù)據(jù)處理效率。當(dāng)前第1頁12