龍芯平臺上高性能計(jì)算的性能優(yōu)化關(guān)鍵問題研究
本文關(guān)鍵詞:龍芯平臺上高性能計(jì)算的性能優(yōu)化關(guān)鍵問題研究 出處:《中國科學(xué)技術(shù)大學(xué)》2017年博士論文 論文類型:學(xué)位論文
更多相關(guān)文章: 高性能計(jì)算 程序性能優(yōu)化 龍芯3B1500 FFTW BLAS CC-NUMA 異構(gòu)計(jì)算
【摘要】:高性能計(jì)算廣泛運(yùn)用在科學(xué)計(jì)算、可視化處理、商業(yè)數(shù)據(jù)模型分析等領(lǐng)域。程序性能與平臺架構(gòu)息息相關(guān)。龍芯作為具有自主知識產(chǎn)權(quán)的國產(chǎn)芯片的代表,它的3B系列芯片被廣泛運(yùn)用在航天、生物信息、氣象等領(lǐng)域。但由于它的軟件生態(tài)環(huán)境不健全,許多軟件沒有針對它的架構(gòu)進(jìn)行優(yōu)化。龍芯普通訪存速度慢,加上軟件移植過程中龍芯編譯器無法充分發(fā)揮硬件計(jì)算與訪存分離的特性,軟件與平臺架構(gòu)耦合性低,容易導(dǎo)致部分科學(xué)計(jì)算軟件的運(yùn)行性能低,不能滿足用戶的計(jì)算需求,這制約著龍芯的市場化推廣。如何優(yōu)化龍芯平臺的軟件性能成為龍芯亟需解決的問題。因此,本文圍繞龍芯平臺上高性能計(jì)算的訪存和計(jì)算優(yōu)化關(guān)鍵問題展開研究。主要的研究內(nèi)容和貢獻(xiàn)如下:(1)針對基礎(chǔ)函數(shù)庫與龍芯硬件架構(gòu)耦合性低的問題,以BLAS庫中矩陣矩陣乘函數(shù)GEMM為研究對象,提出了一種加速計(jì)算密集型應(yīng)用的異步計(jì)算訪存優(yōu)化方法。該優(yōu)化方法根據(jù)龍芯計(jì)算與訪存分離的特性,通過對任務(wù)進(jìn)行分組和流水化處理;然后在計(jì)算過程中,利用多通道DMA訪存方法實(shí)現(xiàn)數(shù)據(jù)的預(yù)取或讀寫,從而將大量的訪存開銷隱藏到計(jì)算中;最后,使用SIMD指令向量化提升核心的計(jì)算性能。此外,通過分析計(jì)算與訪存分離的特征,給出了一種龍芯平臺上計(jì)算密集型應(yīng)用的性能評估方法。(2)針對普通訪存方法不能滿足龍芯平臺中應(yīng)用訪存速度需求的問題,以FFTW核心算法為研究對象,提出一種面向計(jì)算密集型應(yīng)用的多層數(shù)據(jù)劃分優(yōu)化方法。該優(yōu)化方法以龍芯3B1500處理器為研究平臺,根據(jù)FFT中數(shù)據(jù)的訪存規(guī)律,利用龍芯鎖cache機(jī)制保證緩存中數(shù)據(jù)不會被替換,進(jìn)而采用多層數(shù)據(jù)劃分以提升緩存中數(shù)據(jù)的利用率,通過增加迭代層數(shù)提升寄存器堆數(shù)據(jù)的重用率,并且使用特殊向量指令加速核心運(yùn)算;與此同時,通過使用CPU和DMA協(xié)同訪存方法來提高數(shù)據(jù)讀寫速度。(3)針對CC-NUMA架構(gòu)中易由數(shù)據(jù)部署不合理而導(dǎo)致計(jì)算密集型應(yīng)用并行效率低的問題,以KD-90為研究平臺,在PCAM并行框架的基礎(chǔ)上,提出了一個面向計(jì)算密集型應(yīng)用的并行框架HPFCA。根據(jù)應(yīng)用的數(shù)據(jù)訪存規(guī)律,對框架中的任務(wù)劃分、節(jié)點(diǎn)間任務(wù)并行、數(shù)據(jù)重新部署、節(jié)點(diǎn)內(nèi)多核并行和單核程序優(yōu)化五個部分進(jìn)行設(shè)計(jì),利用訪存數(shù)據(jù)局部性完成訪存的性能優(yōu)化。并且根據(jù)該框架,在KD-90上實(shí)現(xiàn)了GEMM和FFT的高效并行算法。(4)針對多核異構(gòu)平臺中應(yīng)用程序難以并發(fā)執(zhí)行的問題,以三維泊松方程求解算法為研究對象,提出了一種異構(gòu)平臺下多種計(jì)算資源負(fù)載均衡的高效算法。該算法通過使用多重網(wǎng)格法對三維泊松方程進(jìn)行離散,將三維泊松方程求解問題轉(zhuǎn)化成線性方程組求解問題,然后通過分析異構(gòu)平臺不同資源的計(jì)算能力決定任務(wù)負(fù)載比例,將任務(wù)按比例分配到不同的計(jì)算資源上,完成計(jì)算的負(fù)載均衡優(yōu)化,從而提升異構(gòu)平臺中程序的并行加速比。
【學(xué)位授予單位】:中國科學(xué)技術(shù)大學(xué)
【學(xué)位級別】:博士
【學(xué)位授予年份】:2017
【分類號】:TP38
【參考文獻(xiàn)】
相關(guān)期刊論文 前10條
1 張杰;顧乃杰;張明;;龍芯3B處理器上FFT算法向量化研究[J];小型微型計(jì)算機(jī)系統(tǒng);2015年07期
2 劉松;伍衛(wèi)國;趙博;蔣慶;;面向局部性和并行優(yōu)化的循環(huán)分塊技術(shù)[J];計(jì)算機(jī)研究與發(fā)展;2015年05期
3 劉穎;呂方;王蕾;陳莉;崔慧敏;馮曉兵;;異構(gòu)并行編程模型研究與進(jìn)展[J];軟件學(xué)報;2014年07期
4 汪清;顧乃杰;何頌頌;楊陽朝;;SCC上FFT的高效并行實(shí)現(xiàn)及其擴(kuò)展性研究[J];小型微型計(jì)算機(jī)系統(tǒng);2014年06期
5 岳小寧;肖炳甲;羅正平;;基于CUDA的二維泊松方程快速直接求解[J];計(jì)算機(jī)科學(xué);2013年10期
6 何頌頌;顧乃杰;任開新;;一種面向數(shù)據(jù)密集型應(yīng)用的并行程序執(zhí)行模型[J];小型微型計(jì)算機(jī)系統(tǒng);2013年07期
7 杜振龍;李曉麗;郭延文;楊小健;沈鋼綱;;大尺度圖像編輯的泊松方程并行多重網(wǎng)格求解算法[J];計(jì)算機(jī)科學(xué);2013年03期
8 郭利財;劉燕君;;龍芯3A處理器上FFT的高效實(shí)現(xiàn)[J];小型微型計(jì)算機(jī)系統(tǒng);2012年03期
9 何頌頌;顧乃杰;朱海濤;劉燕君;;面向龍芯3A體系結(jié)構(gòu)的BLAS庫優(yōu)化[J];小型微型計(jì)算機(jī)系統(tǒng);2012年03期
10 胡偉武;高燕萍;陳天石;肖俊華;;The Godson Processors:Its Research,Development,and Contributions[J];Journal of Computer Science & Technology;2011年03期
,本文編號:1322831
本文鏈接:http://sikaile.net/shoufeilunwen/xxkjbs/1322831.html