LBM算法在Cell處理器上的實(shí)現(xiàn)與優(yōu)化
發(fā)布時(shí)間:2023-07-01 11:08
異構(gòu)多核處理器是當(dāng)前產(chǎn)業(yè)界和學(xué)術(shù)界的研究熱點(diǎn)。Cell作為現(xiàn)代異構(gòu)多核處理器的典型代表,其主處理器與協(xié)處理器各司其職的獨(dú)特設(shè)計(jì)思想受到了業(yè)界的廣泛關(guān)注。它優(yōu)良的工作性能也在PS3游戲機(jī)和一些富媒體消費(fèi)電子設(shè)備上得到了充分的體現(xiàn)。然而如何將這種體系結(jié)構(gòu)應(yīng)用到科學(xué)計(jì)算程序上來為科研服務(wù),目前還處于研究探索階段。本文選取SPECfp2006中的浮點(diǎn)基準(zhǔn)測(cè)試程序LBM,研究科學(xué)計(jì)算程序在Cell異構(gòu)多核處理器上的移植和性能優(yōu)化方法,同時(shí)評(píng)估Cell處理器的科學(xué)計(jì)算處理能力。 本文的主要工作有五個(gè)方面:一是研究了Cell處理器的硬件結(jié)構(gòu)特點(diǎn)和編程環(huán)境。二是對(duì)LBM基準(zhǔn)程序的數(shù)據(jù)布局與實(shí)現(xiàn)原理進(jìn)行了分析研究,并根據(jù)Cell處理器的特點(diǎn)對(duì)LBM移植后在PPE和SPE上的任務(wù)進(jìn)行了劃分。三是為實(shí)現(xiàn)LBM程序的移植設(shè)計(jì)了一種新的編程模式,并在這個(gè)模式的基礎(chǔ)上分別對(duì)PPE和SPE上的代碼進(jìn)行了移植。四是通過對(duì)SPE上的代碼使用SIMD向量構(gòu)造技術(shù)和雙緩沖技術(shù)進(jìn)行優(yōu)化,來實(shí)現(xiàn)Cell處理器最佳處理性能。五是對(duì)移植后的LBM程序的性能進(jìn)行了測(cè)試,并與在X86處理器上運(yùn)行時(shí)的性能進(jìn)行了對(duì)比分析。 經(jīng)過我們對(duì)測(cè)試...
【文章頁數(shù)】:76 頁
【學(xué)位級(jí)別】:碩士
【文章目錄】:
摘要
ABSTRACT
第一章 緒論
1.1 課題背景
1.1.1 異構(gòu)多核處理器的發(fā)展
1.1.2 CELL處理器的影響
1.2 研究現(xiàn)狀
1.2.1 Cell處理器的編程支持
1.2.2 Cell處理器的應(yīng)用開發(fā)
1.3 主要工作和創(chuàng)新
1.4 本文結(jié)構(gòu)
第二章 Cell處理器與編程環(huán)境
2.1 概述
2.1.1 Cell在處理器性能上的三大突破
2.2 Cell處理器的結(jié)構(gòu)
2.2.1 PPE處理器
2.2.2 SPE處理器
2.2.3 EIB環(huán)狀總線
2.3 Cell處理器的編程環(huán)境
2.3.1 PPE指令集
2.3.2 SPU指令集
2.3.3 存儲(chǔ)域
2.3.4 SIMD向量化
2.3.5 DMA傳輸和處理器之間的通訊
第三章 LBM的原理和算法
3.1 LBM 的原理
3.1.1 格子—玻爾茲曼方法簡(jiǎn)介
3.1.2 LBM的數(shù)學(xué)原理
3.1.3 LBM方法的物理模型
3.2 LBM算法的C語言實(shí)現(xiàn)
3.2.1 數(shù)據(jù)布局
3.2.2 數(shù)據(jù)初始化
3.2.3 LBM程序主要函數(shù)及功能說明
3.2.4 LBM程序執(zhí)行流程圖
第四章 LBM算法在Cell處理器上的實(shí)現(xiàn)和優(yōu)化
4.1 程序任務(wù)的劃分
4.1.1 主要依據(jù)和原則
4.1.2 LBM的函數(shù)執(zhí)行性能分析
4.1.3 LBM在Cell處理器上的任務(wù)劃分
4.2 LBM在Cell上的編程模式
4.2.1 Cell上的幾種主要的程序設(shè)計(jì)模型介紹
4.2.2 雙并行編程模式在LBM程序中的應(yīng)用
4.3 PPE上代碼的移植
4.3.1 計(jì)算任務(wù)分配
4.3.2 SPE線程的創(chuàng)建
4.3.3 郵箱指令的發(fā)送與接收
4.3.4 多線程同步的控制與實(shí)現(xiàn)
4.4 SPE上代碼的移植
4.4.1 模塊主體結(jié)構(gòu)設(shè)計(jì)
4.4.2 數(shù)據(jù)緩沖區(qū)設(shè)置
4.4.3 指令控制模塊的實(shí)現(xiàn)
4.4.4 DMA傳輸功能的實(shí)現(xiàn)
4.5 SPE上代碼的優(yōu)化
4.5.1 SIMD向量?jī)?yōu)化
4.5.2 雙緩沖優(yōu)化
第五章 測(cè)試結(jié)果及性能評(píng)測(cè)
5.1 測(cè)試環(huán)境
5.2 測(cè)試結(jié)果及分析
5.2.1 程序移植的正確性驗(yàn)證
5.2.2 SPE代碼的優(yōu)化效果驗(yàn)證
5.2.3 與X86處理器的執(zhí)行性能對(duì)比
5.2.4 歸納和總結(jié)
第六章 結(jié)束語
6.1 工作總結(jié)
6.2 展望
致謝
參考文獻(xiàn)
作者在學(xué)期間取得的學(xué)術(shù)成果
本文編號(hào):3836141
【文章頁數(shù)】:76 頁
【學(xué)位級(jí)別】:碩士
【文章目錄】:
摘要
ABSTRACT
第一章 緒論
1.1 課題背景
1.1.1 異構(gòu)多核處理器的發(fā)展
1.1.2 CELL處理器的影響
1.2 研究現(xiàn)狀
1.2.1 Cell處理器的編程支持
1.2.2 Cell處理器的應(yīng)用開發(fā)
1.3 主要工作和創(chuàng)新
1.4 本文結(jié)構(gòu)
第二章 Cell處理器與編程環(huán)境
2.1 概述
2.1.1 Cell在處理器性能上的三大突破
2.2 Cell處理器的結(jié)構(gòu)
2.2.1 PPE處理器
2.2.2 SPE處理器
2.2.3 EIB環(huán)狀總線
2.3 Cell處理器的編程環(huán)境
2.3.1 PPE指令集
2.3.2 SPU指令集
2.3.3 存儲(chǔ)域
2.3.4 SIMD向量化
2.3.5 DMA傳輸和處理器之間的通訊
第三章 LBM的原理和算法
3.1 LBM 的原理
3.1.1 格子—玻爾茲曼方法簡(jiǎn)介
3.1.2 LBM的數(shù)學(xué)原理
3.1.3 LBM方法的物理模型
3.2 LBM算法的C語言實(shí)現(xiàn)
3.2.1 數(shù)據(jù)布局
3.2.2 數(shù)據(jù)初始化
3.2.3 LBM程序主要函數(shù)及功能說明
3.2.4 LBM程序執(zhí)行流程圖
第四章 LBM算法在Cell處理器上的實(shí)現(xiàn)和優(yōu)化
4.1 程序任務(wù)的劃分
4.1.1 主要依據(jù)和原則
4.1.2 LBM的函數(shù)執(zhí)行性能分析
4.1.3 LBM在Cell處理器上的任務(wù)劃分
4.2 LBM在Cell上的編程模式
4.2.1 Cell上的幾種主要的程序設(shè)計(jì)模型介紹
4.2.2 雙并行編程模式在LBM程序中的應(yīng)用
4.3 PPE上代碼的移植
4.3.1 計(jì)算任務(wù)分配
4.3.2 SPE線程的創(chuàng)建
4.3.3 郵箱指令的發(fā)送與接收
4.3.4 多線程同步的控制與實(shí)現(xiàn)
4.4 SPE上代碼的移植
4.4.1 模塊主體結(jié)構(gòu)設(shè)計(jì)
4.4.2 數(shù)據(jù)緩沖區(qū)設(shè)置
4.4.3 指令控制模塊的實(shí)現(xiàn)
4.4.4 DMA傳輸功能的實(shí)現(xiàn)
4.5 SPE上代碼的優(yōu)化
4.5.1 SIMD向量?jī)?yōu)化
4.5.2 雙緩沖優(yōu)化
第五章 測(cè)試結(jié)果及性能評(píng)測(cè)
5.1 測(cè)試環(huán)境
5.2 測(cè)試結(jié)果及分析
5.2.1 程序移植的正確性驗(yàn)證
5.2.2 SPE代碼的優(yōu)化效果驗(yàn)證
5.2.3 與X86處理器的執(zhí)行性能對(duì)比
5.2.4 歸納和總結(jié)
第六章 結(jié)束語
6.1 工作總結(jié)
6.2 展望
致謝
參考文獻(xiàn)
作者在學(xué)期間取得的學(xué)術(shù)成果
本文編號(hào):3836141
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/3836141.html
最近更新
教材專著