COStream語言的矩陣計算庫設計與實現(xiàn)
發(fā)布時間:2024-04-19 05:10
矩陣庫名為COSmatrix,出于讓實驗室研發(fā)的數(shù)據(jù)流編程語言COStream便于進行矩陣操作的目的而對其進行設計與開發(fā),由于宿主語言COStream是基于靜態(tài)數(shù)據(jù)流調度的數(shù)據(jù)流編程語言,因此矩陣庫中包含的矩陣操作必須要是COStream可以對其進行工作量估計的,而目前現(xiàn)有的矩陣庫無法滿足該條件,因此選擇開發(fā)此庫,而不使用其他矩陣庫。COS matrix庫實現(xiàn)了較多常用的矩陣運算,如矩陣乘,矩陣逆等,還由于COStream一般使用在多核環(huán)境下,因此為了充分利用多核的性能以及保證矩陣庫的高性能,COSmatrix庫使用C++配合OpenMP進行庫的開發(fā),對適合并行的庫函數(shù)進行了并行化處理,并根據(jù)對矩陣分塊方法的不同總結了使用到的三大類并行算法,即棋盤劃分的并行算法,按列劃分的并行算法和按行劃分的并行算法。并且針對COStream語言編譯時檢查機制還很不健全的問題,在COStream前端額外加了一個編譯時檢查模塊,用以檢查庫函數(shù)名拼寫,函數(shù)參數(shù)個數(shù)和函數(shù)參數(shù)類型,以及變量未定義就使用和變量重復定義的錯誤,并在發(fā)現(xiàn)錯誤后,輸出詳細的錯誤信息以讓用戶...
【文章頁數(shù)】:47 頁
【學位級別】:碩士
【部分圖文】:
本文編號:3958271
【文章頁數(shù)】:47 頁
【學位級別】:碩士
【部分圖文】:
圖3陣挨卷簾存儲為式分配各行的高斯消元i去流程圖
圖3.6矩陣逆并行化算法流程圖
中科技大學碩士學位硨乘法三個矩陣運:算。矩陣逆有很多種求法,:角分解的方法進行求解^?一個方陣A的前n方陣進行宣撟三角分解,此時該方陣可以用A?=?LU.陣不滿足這個條件時,但滿足方陣可逆時,PA?=?LU.逆,有如■下公式3.7:??A ̄x?=?L_1f/_1P.P是一個單位矩....
圖41簡單表達式抽象語法掃圖
時檢查塊嵌入在COStream前,所有操作都歷前端象語法樹,.因此先介紹抽象語法樹的概念,再具體介紹編譯時檢語法樹介紹??源程序經過編譯器處理轉換為一個可執(zhí)行程序,一般要經歷預處分析,語義分析,中間代碼生成,代碼優(yōu)化,代碼生成階段和最終個過程中,語法分析階段會產生一個抽象語法樹,....
圖4逸叔〕瑟廿吧母落恤蓬由象篇馴緩械圖
編譯時檢衰模塊遂要對operator體這部分進行遍歷,周為矩陣庫生要使用在這??雖。抽象語法樹中包含很多種節(jié)點,對于編譯時檢窘模塊,需要的節(jié)點包括IdNode??節(jié)點>?declareNode節(jié)點、和callNode節(jié).點以及運算?點這四種節(jié)點》??IdNode節(jié)點,即變董節(jié)點,....
本文編號:3958271
本文鏈接:http://www.sikaile.net/kejilunwen/ruanjiangongchenglunwen/3958271.html