基于GPU的數(shù)字信號論文_第1頁
基于GPU的數(shù)字信號論文_第2頁
基于GPU的數(shù)字信號論文_第3頁
基于GPU的數(shù)字信號論文_第4頁
基于GPU的數(shù)字信號論文_第5頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、基于GPU的數(shù)字信號論文 1信號處理中的相關函數(shù) 信號處理中許多信號都要進行相關性分析,牽涉到信號相關的問題往往都會涉及大型的數(shù)據(jù)集?;ハ嚓P,也稱為“互協(xié)方差”。在智能信號處理相關領域中,是用來表示兩個信號之間相似性的一個度量?;ハ嚓P性可以通過與確定信號比較,來尋找不確定信號的特性,它是確定信號與不確定信號之間相對于時間的一個函數(shù),也可以稱為滑動點積。在模式識別以及密碼分析學等很多領域,信號的互相關性都有廣泛的應用5。 11相關函數(shù)的定義互相關是統(tǒng)計學中用來表示兩個隨機矢量X和Y之間的協(xié)方差cov(X,Y),與矢量X的“協(xié)方差”概念相區(qū)分,矢量X的“協(xié)方差”是X的各標量成分之間的協(xié)方差矩陣。自

2、相關是對信號相關程度的一種度量,也就是說自相關可以看作是信號與自身的延遲信號相乘后的乘積進行積分運算,隨機信號的自相關函數(shù)與其功率譜是傅氏變換對(隨機信號無法得到具體的函數(shù)表達式,只有其統(tǒng)計信息),通過對接受信號的自相關運算可以進行頻譜分析。同時,自相關在信號檢測中也有很重要的作用,是在誤碼最小原則下的最佳接收準則6。 12信號處理中矩陣的相關性分析一個自適應系統(tǒng)輸入的有用信號可以是確定信號或隨機信號,而輸入信號中不可避免的混有噪聲或干擾,在頻域考慮可能是窄帶的也可能是寬帶的7。一個自適應系統(tǒng)的輸入信號和信號特性,通常對該系統(tǒng)的結構和性能起重要作用,輸入信號用向量的形式表示,隱去時間函數(shù),則信

3、號向量X可以表示為。矩陣分析作為一種重要的數(shù)學工具,在信號與信息處理領域起著不可替代的作用。由于在現(xiàn)代信號處理、圖像處理,以及通信相關領域中的操作和運算中,為了滿足性能需要,所以對數(shù)據(jù)的吞吐量有極高的要求,其中很多操作都必須實時完成,所以對相關算法的實現(xiàn)速度就有了很高的要求。在數(shù)字信號處理中,大部分處理信號和圖像的算法具有局部化、計算數(shù)據(jù)密集以及海量的矩陣運算等特點,所以為了提高算法的實現(xiàn)速度,尋找一種高速矩陣運算和高速密集型數(shù)據(jù)運算的方法對很多在數(shù)字信號處理中應用的復雜算法是十分有意義的8。 2GPU上大型矩陣快速運算的具體實現(xiàn) 在GPU中實現(xiàn)矩陣的快速乘法時,不僅要保證運算的精度問題,同時

4、,也要保證運算的效率,提高運算的速度。所以,根據(jù)GPU的硬件結構,應該設計一種矩陣分塊和內(nèi)存分配方法9,以便減少內(nèi)存的訪問次數(shù)。 21運算精度目前對于很多GPU來說,其只支持32b浮點數(shù)運算,所以在大量數(shù)據(jù)累加時,后面的數(shù)字位數(shù)一定被舍去過多,從而導致了運算結果的精度下降。而CUDA的浮點數(shù)運算是符合IEEE754運算精度標準的,因此,可以利用Kahan求和公式來提高運算的精度,具體流程偽代碼如下。雖然Kahan求和公式在優(yōu)化運算結果精度的同時增加了每個線程的運算量,但對于GPU來說,并沒有內(nèi)存存取的動作,所以對整體的運算效率影響很小,并且精度問題是整體運算結果的前提保證,所以這一步驟是十分必

5、要的。 22矩陣分塊由于CUDA平臺一個線程塊只同時支持512個線程并行工作,所以只有當內(nèi)存控制器從某個固定倍數(shù)地址開始讀取時,工作效率最高。解決這個問題最好的辦法就是將大矩陣分解為1616的小矩陣,這樣每一個線程塊就同時使用256個線程并行計算。所以小矩陣就可以完全加載到高速共享內(nèi)存中,同時小矩陣自身乘法也不需要再存取外部內(nèi)存。為了方便進行線程塊的計算,對于兩個矩陣A和B,可以分別為每個線程塊分配1616個線程,再建立(m/16)(n/16)個線程塊。但是,由于參加運算的矩陣階不一定是16的倍數(shù),所以對于最后一次分塊,程序可以利用判斷語句來控制。即:如果本線程的矩陣塊沒有超出A、B的階數(shù),就

6、進行分塊;如果超出,則只運算原始矩陣剩下的部分。 23內(nèi)存分配為了使GPU高效率工作,在矩陣A和B的分塊矩陣初始內(nèi)存空間時,直接把內(nèi)存大小配置成16的倍數(shù),并在復制矩陣到顯卡內(nèi)存之前,將其清零。這種處理方法充分利用了GPU的硬件結構特點,滿足GPU高效率讀取內(nèi)存的原則10。并且,CUDA提供的cudaMallocPitch()函數(shù)就可以滿足該要求,它是一種節(jié)距分配,可以使分配的內(nèi)存在硬件中的節(jié)距對齊,以提高共享內(nèi)存的訪問速度,并返回指向已分配內(nèi)存的指針。 3實驗結果與分析 在進行信號相關性分析的時候,往往計算量比較大,隨著信號處理中矩陣的階數(shù)不斷增加,如果僅僅基于CPU的傳統(tǒng)的串行算法,大大增

7、加了計算所耗費的時間。在進行矩陣的相關性分析計算的過程中,實驗環(huán)境配置見表1。分別對不同大小的一維矩陣進行相關性分析計算,矩陣的大小見表2。通過對矩陣A的列兩兩進行交叉相關性計算,產(chǎn)生一個一個大型矩陣輸出,然后分別得出計算不同矩陣大小情況下相關性計算CPU和GPU所耗費的時間,分析計算出加速比。對不同大小的二維矩陣進行相關性分析計算,矩陣的大小見表3。對其中一個矩陣固定其大小,另外一個矩陣不斷增大,對兩個矩陣做二維的相關性計算,分別得出其基于CPU和GPU的相關性計算所耗費的時間,分析計算出加速比。由實驗結果圖3、圖4可以得出,單一矩陣基于CPU和GPU進行相關性計算的的加速比最高達到了14.

8、5倍,二維矩陣基于CPU和GPU進行相關性計算的加速比最高達到了5.3倍,二維矩陣的相關性計算涉及的數(shù)據(jù)量和計算量較大,通過計算時間可以看出基于GPU的相關性計算所耗費時間明顯少于基于CPU下的相關性計算。通過實驗對比可以得到隨著矩陣的不斷增大,進行相關性計算所用的時間不斷增加,基于CPU的傳統(tǒng)計算方式所耗費的時間增大幅度遠遠大于基于GPU的并行計算方式。因此基于GPU的并行加速數(shù)字信號處理中相關性算法效率明顯高于傳統(tǒng)的基于CPU的串行算法。 4結論 在進行信號相關性分析的時候,往往計算量比較大,隨著信號處理中矩陣的階數(shù)不斷增加,如果僅僅基于CPU的傳統(tǒng)的串行算法,大大增加了計算所耗費的時間。由實驗結果可以得出,隨著向量矩陣的不斷增加,GPU的計算優(yōu)勢越來越明顯,大大提高了計算的效率,產(chǎn)生更高的加速比,并且隨著矩陣的不斷增加,GPU計算所產(chǎn)生的加速比越來越明顯。在智能信號處理、數(shù)字通信、地質(zhì)、土地資源管理以及其他科學和工程領域中,都很廣泛的應用到了信號的相關性分析技術。特別是在通信技術相關領域中,隨著無線信號頻率不斷的提高,對于信號處理的復雜性和計算密集性,傳統(tǒng)的DSP技術已經(jīng)不能滿足信號處理的實時性要求,隨著圖形處理器(GPU

溫馨提示

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

評論

0/150

提交評論