面向多核向量處理器BLAS庫(kù)的設(shè)計(jì)與實(shí)現(xiàn)
發(fā)布時(shí)間:2017-04-22 23:01
本文關(guān)鍵詞:面向多核向量處理器BLAS庫(kù)的設(shè)計(jì)與實(shí)現(xiàn),由筆耕文化傳播整理發(fā)布。
【摘要】:基本線性代數(shù)子程序BLAS(Basic Linear Algebra Subprograms)庫(kù)是科學(xué)計(jì)算中引用最廣泛的數(shù)學(xué)函數(shù)庫(kù)之一,也是評(píng)測(cè)計(jì)算機(jī)性能的核心算法程序。X-DSP是我校自主研發(fā)的高性能多核向量處理器,主要用于數(shù)字通信、圖像處理和雷達(dá)信號(hào)處理等領(lǐng)域,為充分發(fā)揮X-DSP的高性能,針對(duì)其特定體系結(jié)構(gòu)特點(diǎn)開(kāi)發(fā)高度優(yōu)化的BLAS庫(kù)函數(shù)具有重要的理論意義和應(yīng)用價(jià)值。本文深入研究和分析了X-DSP的多核向量處理器的體系結(jié)構(gòu)特點(diǎn)以及BLAS1、BLAS2中子函數(shù)的算法特點(diǎn),針對(duì)X-DSP體系結(jié)構(gòu)的多級(jí)并行性,詳細(xì)設(shè)計(jì)了高效的算法映射,并基于手工匯編實(shí)現(xiàn)了高性能的BLAS1和BLAS2算法庫(kù)。主要工作包括以下幾個(gè)方面:1、設(shè)計(jì)和實(shí)現(xiàn)了基于X-DSP單核的BLAS1函數(shù)庫(kù),以向量范數(shù)、矩陣范數(shù)和DDOT算法為例,詳細(xì)分析和設(shè)計(jì)了針對(duì)該DSP體系結(jié)構(gòu)特點(diǎn)的算法映射,采用軟件流水方法和手工匯編進(jìn)行優(yōu)化實(shí)現(xiàn),充分挖掘了該處理器的指令并行性、向量并行性和數(shù)據(jù)并行性,取得了較高的計(jì)算性能。在RTL級(jí)平臺(tái)上的測(cè)試結(jié)果表明,向量范數(shù)的平均性能達(dá)64.49GFLOPS,矩陣范數(shù)的平均性能達(dá)49.34GFLOPS,DDOT的平均性能達(dá)47.50GFLOPS。2、設(shè)計(jì)和實(shí)現(xiàn)了基于X-DSP單核的BLAS2函數(shù)庫(kù)。以GEMV、SUM_MV、GER、TRMV和TRSV五個(gè)子函數(shù)為例進(jìn)行了詳細(xì)算法分析與研究;對(duì)GEMV的計(jì)算方式進(jìn)行了改進(jìn);對(duì)SUM_MV內(nèi)核中存在的多周期寫沖突進(jìn)行優(yōu)化設(shè)計(jì);對(duì)GER、GER2、SYR、SYR2進(jìn)行了對(duì)比分析;對(duì)TRMV中的三角矩陣進(jìn)行了分塊,以減少0值參與運(yùn)算;對(duì)TRSV中三角逆矩陣的更新方式進(jìn)行了分析,根據(jù)向量處理器的特點(diǎn)進(jìn)行了優(yōu)化設(shè)計(jì);結(jié)合X-DSP的硬件機(jī)制分別將GEMV、SUM_MV、GER、TRMV和TRSV五個(gè)例程高效地映射至X-DSP單核結(jié)構(gòu)中,性能分別為93.67GFLOPS、53.06 GFLOPS、63.85 GFLOPS、92.85 GFLOPS、62.78 GFLOPS。3、設(shè)計(jì)和實(shí)現(xiàn)了基于X-DSP多核并行BLAS2。深入研究了BLAS2中主要子函數(shù)的并行性,根據(jù)X-DSP的結(jié)構(gòu)特點(diǎn),找出了適合該體系結(jié)構(gòu)的并行方案,采用分塊的方式進(jìn)行并行分解,使塊之間的運(yùn)算相互獨(dú)立,優(yōu)化了多核的負(fù)載均衡,結(jié)合X-DSP的多核通信及同步機(jī)制,將并行的BLAS2子例程高效地映射至多核中,12核的平均加速比達(dá)5.63。
【關(guān)鍵詞】:多核向量處理器 矩陣向量乘 范數(shù) 優(yōu)化 并行 分塊算法 BLAS
【學(xué)位授予單位】:國(guó)防科學(xué)技術(shù)大學(xué)
【學(xué)位級(jí)別】:碩士
【學(xué)位授予年份】:2014
【分類號(hào)】:TP332
【目錄】:
- 摘要10-11
- ABSTRACT11-12
- 第一章 緒論12-20
- 1.1 課題研究背景及意義12-13
- 1.2 BLAS函數(shù)庫(kù)的研究現(xiàn)狀13-15
- 1.3 多核DSP研究現(xiàn)狀與發(fā)展趨勢(shì)15-17
- 1.4 匯編程序優(yōu)化技術(shù)介紹17-18
- 1.4.1 軟件流水17
- 1.4.2 填充延時(shí)槽17
- 1.4.3 指令級(jí)優(yōu)化17-18
- 1.5 算法測(cè)試流程18-19
- 1.6 論文的組織結(jié)構(gòu)19-20
- 第二章 X-DSP的體系結(jié)構(gòu)和BLAS庫(kù)簡(jiǎn)介20-26
- 2.1 X-DSP的體系結(jié)構(gòu)20-22
- 2.1.1 X-DSP的多核體系結(jié)構(gòu)20
- 2.1.2 X-DSP的單核體系結(jié)構(gòu)20-21
- 2.1.3 X-DSP的DMA基本功能21-22
- 2.1.4 X-DSP的存儲(chǔ)結(jié)構(gòu)22
- 2.2 BLAS庫(kù)22-25
- 2.2.1 BLAS庫(kù)的構(gòu)成22-23
- 2.2.2 BLAS函數(shù)庫(kù)子函數(shù)23-25
- 2.3 本章小結(jié)25-26
- 第三章 BLAS1匯編程序設(shè)計(jì)與實(shí)現(xiàn)26-50
- 3.1 BLAS1算法概述26-27
- 3.2 向量范數(shù)設(shè)計(jì)與實(shí)現(xiàn)27-38
- 3.2.1 實(shí)向量范數(shù)的算法分析27-29
- 3.2.2 實(shí)向量范數(shù)的算法設(shè)計(jì)與優(yōu)化29-32
- 3.2.3 復(fù)向量范數(shù)的算法分析32-33
- 3.2.4 復(fù)向量范數(shù)的算法設(shè)計(jì)與優(yōu)化33-38
- 3.3 矩陣范數(shù)設(shè)計(jì)與實(shí)現(xiàn)38-45
- 3.3.1 實(shí)矩陣范數(shù)的算法分析38-39
- 3.3.2 實(shí)矩陣范數(shù)的算法設(shè)計(jì)與優(yōu)化39-41
- 3.3.3 復(fù)矩陣范數(shù)的算法分析41-42
- 3.3.4 復(fù)矩陣范數(shù)的算法設(shè)計(jì)與優(yōu)化42-45
- 3.4 DDOT的設(shè)計(jì)與實(shí)現(xiàn)45-47
- 3.4.1 DDOT的算法分析45
- 3.4.2 DDOT的算法設(shè)計(jì)與優(yōu)化45-47
- 3.5 性能測(cè)試與分析47-49
- 3.6 本章小結(jié)49-50
- 第四章 BLAS2匯編程序設(shè)計(jì)與實(shí)現(xiàn)50-79
- 4.1 BLAS2算法概述50
- 4.2 GEMV的實(shí)現(xiàn)50-59
- 4.2.1 GEMV的算法分析50-52
- 4.2.2 GEMV的算法設(shè)計(jì)與實(shí)現(xiàn)52-59
- 4.3 SUM_MV的實(shí)現(xiàn)59-63
- 4.3.1 SUM_MV的算法分析59
- 4.3.2 SUM_MV的算法設(shè)計(jì)與實(shí)現(xiàn)59-63
- 4.4 GER的實(shí)現(xiàn)63-67
- 4.4.1 GER的算法分析63-65
- 4.4.2 GER的算法設(shè)計(jì)與實(shí)現(xiàn)65-67
- 4.5 TRMV的實(shí)現(xiàn)67-72
- 4.5.1 TRMV的算法分析67-69
- 4.5.2 TRMV的算法設(shè)計(jì)與實(shí)現(xiàn)69-72
- 4.6 TRSV的實(shí)現(xiàn)72-75
- 4.6.1 TRSV的算法分析72-73
- 4.6.2 TRSV的算法設(shè)計(jì)與實(shí)現(xiàn)73-75
- 4.7 性能測(cè)試與分析75-78
- 4.8 本章小結(jié)78-79
- 第五章 BLAS2的多核設(shè)計(jì)與實(shí)現(xiàn)79-90
- 5.1 GEMV的并行性分析79-80
- 5.2 GEMV的多核設(shè)計(jì)與實(shí)現(xiàn)80-82
- 5.3 SUM_MV的多核設(shè)計(jì)與實(shí)現(xiàn)82-83
- 5.4 GER的多核設(shè)計(jì)與實(shí)現(xiàn)83-85
- 5.5 TRMV的多核設(shè)計(jì)與實(shí)現(xiàn)85-86
- 5.6 TRSV的多核設(shè)計(jì)與實(shí)現(xiàn)86-88
- 5.7 性能測(cè)試與分析88-89
- 5.7.1 GEMV的多核性能測(cè)試與分析88
- 5.7.2 BLAS2的多核性能測(cè)試與分析88-89
- 5.8 本章小結(jié)89-90
- 第六章 結(jié)束語(yǔ)90-92
- 6.1 論文工作總結(jié)90-91
- 6.2 后續(xù)工作與展望91-92
- 致謝92-94
- 參考文獻(xiàn)94-97
- 作者在學(xué)期間取得的學(xué)術(shù)成果97
【相似文獻(xiàn)】
中國(guó)期刊全文數(shù)據(jù)庫(kù) 前3條
1 羅茜文;;CEVA推出業(yè)界首款面向軟件無(wú)線電的向量處理器 DSP內(nèi)核進(jìn)軍4G市場(chǎng)[J];移動(dòng)通信;2010年23期
2 韓霜;;CEVA向量處理器DSP內(nèi)核大幅提升無(wú)線基站性能[J];世界電子元器件;2010年12期
3 ;[J];;年期
中國(guó)碩士學(xué)位論文全文數(shù)據(jù)庫(kù) 前1條
1 張軍陽(yáng);面向多核向量處理器BLAS庫(kù)的設(shè)計(jì)與實(shí)現(xiàn)[D];國(guó)防科學(xué)技術(shù)大學(xué);2014年
本文關(guān)鍵詞:面向多核向量處理器BLAS庫(kù)的設(shè)計(jì)與實(shí)現(xiàn),由筆耕文化傳播整理發(fā)布。
,本文編號(hào):321401
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/321401.html
最近更新
教材專著