線程透明的并行函數(shù)式編程模型研究與實現(xiàn)
發(fā)布時間:2022-12-04 01:59
近年來,信息科技領(lǐng)域進入了大數(shù)據(jù)時代,數(shù)據(jù)規(guī)模激增,這對信息處理能力提出了嚴(yán)峻的考驗,并行計算在高性能計算領(lǐng)域得到了廣泛的關(guān)注和應(yīng)用。函數(shù)式編程無狀態(tài)、無副作用的特性使其天然地適合應(yīng)用于并行計算,逐漸得到重視。但現(xiàn)有的并行計算框架普遍存在數(shù)據(jù)同步成本高、通用性不足等問題,而利用純函數(shù)式編程語言進行并行化移植的成本較高。另一方面,這些函數(shù)式編程語言往往需要顯式地管理線程,并且對數(shù)據(jù)級并行支持較差,沒有提供并行數(shù)據(jù)模型。本文嘗試建立一個具有高并行性和通用性的函數(shù)式編程模型,工作內(nèi)容主要包括以下幾個方面:(1)首先對函數(shù)式編程中的函數(shù)復(fù)合關(guān)系進行了樹狀模型表述,再依此構(gòu)建了樹狀任務(wù)依賴視圖,并在其上建立線程透明的隱式并行計算模型。針對樹狀任務(wù)結(jié)構(gòu)的任務(wù)依賴語義,提出任務(wù)優(yōu)先度模型,并在該模型的基礎(chǔ)上,提出了任務(wù)調(diào)度策略和基于任務(wù)竊取的負載均衡策略;(2)在上述編程模型的基礎(chǔ)上,提出了一種分布式共享內(nèi)存模型,對分布式內(nèi)存空間進行了上層抽象,提出了共享參數(shù)的函數(shù)參數(shù)傳遞方式,并利用函數(shù)式編程透明執(zhí)行和無狀態(tài)等特性為內(nèi)存模型設(shè)計了輸入預(yù)讀、無鎖讀寫,子集引用等優(yōu)化策略。(3)針對所設(shè)計的編程模型和...
【文章頁數(shù)】:75 頁
【學(xué)位級別】:碩士
【文章目錄】:
摘要
Abstract
第一章 緒論
1.1 研究背景及意義
1.2 國內(nèi)外研究現(xiàn)狀
1.2.1 函數(shù)式編程語言及框架研究現(xiàn)狀
1.2.2 并行計算編程模型研究現(xiàn)狀
1.3 論文的主要研究內(nèi)容
1.4 論文組織結(jié)構(gòu)
第二章 相關(guān)理論與技術(shù)基礎(chǔ)
2.1 函數(shù)式編程范式
2.1.1 函數(shù)式編程主要特性
2.1.2 函數(shù)式編程中的流程控制
2.2 多線程技術(shù)
2.2.1 軟硬件多線程技術(shù)
2.2.2 進程間通信
2.2.3 Linux多線程編程
2.3 分布式計算技術(shù)
2.3.1 負載均衡算法
2.3.2 分布式共享內(nèi)存
2.4 本章小結(jié)
第三章 線程透明的函數(shù)式編程模型設(shè)計
3.1 并行函數(shù)式編程模型原理
3.1.1 復(fù)合與嵌套
3.1.2 樹狀函數(shù)模型
3.1.3 嵌套調(diào)用
3.1.4 遞歸調(diào)用
3.2 任務(wù)調(diào)度模型
3.2.1 任務(wù)優(yōu)先度評估模型
3.2.2 基于任務(wù)竊取的負載均衡方案
3.3 分布式共享內(nèi)存模型
3.3.1 基于變量的分布式共享內(nèi)存結(jié)構(gòu)
3.3.2 內(nèi)存模型策略優(yōu)化
3.4 本章小結(jié)
第四章 模型實現(xiàn)
4.1 運行時平臺實現(xiàn)
4.1.1 運行時平臺總體架構(gòu)
4.1.2 通信管理線程
4.1.3 任務(wù)管理
4.1.4 負載均衡
4.1.5 內(nèi)存管理
4.2 編程接口實現(xiàn)
4.2.1 函數(shù)體定義接口
4.2.2 共享參數(shù)編程接口
4.3 接口示例
4.4 本章小結(jié)
第五章 模型測試與分析
5.1 實驗設(shè)計
5.1.1 實驗平臺搭建
5.1.2 參考對象選擇
5.1.3 測試用例設(shè)計
5.2 性能測試
5.2.1 執(zhí)行時間測試
5.2.2 擴展性測試
5.3 本章小結(jié)
結(jié)論和展望
參考文獻
攻讀碩士學(xué)位期間取得的研究成果
致謝
附件
【參考文獻】:
期刊論文
[1]How functional programming mattered[J]. Zhenjiang Hu,John Hughes,Meng Wang. National Science Review. 2015(03)
[2]淺析基于函數(shù)式的編程范式[J]. 胡志英. 數(shù)字技術(shù)與應(yīng)用. 2015(03)
[3]多核多線程技術(shù)綜述[J]. 眭俊華,劉慧娜,王建鑫,秦慶旺. 計算機應(yīng)用. 2013(S1)
[4]Lisp發(fā)展現(xiàn)狀及未來展望[J]. 解晨. 電腦知識與技術(shù). 2012(36)
碩士論文
[1]基于優(yōu)化負載均衡算法的任務(wù)調(diào)度系統(tǒng)的研究與實現(xiàn)[D]. 朱晨晨.電子科技大學(xué) 2014
[2]基于函數(shù)式編程語言的設(shè)計模式研究[D]. 劉德財.上海師范大學(xué) 2016
本文編號:3707394
【文章頁數(shù)】:75 頁
【學(xué)位級別】:碩士
【文章目錄】:
摘要
Abstract
第一章 緒論
1.1 研究背景及意義
1.2 國內(nèi)外研究現(xiàn)狀
1.2.1 函數(shù)式編程語言及框架研究現(xiàn)狀
1.2.2 并行計算編程模型研究現(xiàn)狀
1.3 論文的主要研究內(nèi)容
1.4 論文組織結(jié)構(gòu)
第二章 相關(guān)理論與技術(shù)基礎(chǔ)
2.1 函數(shù)式編程范式
2.1.1 函數(shù)式編程主要特性
2.1.2 函數(shù)式編程中的流程控制
2.2 多線程技術(shù)
2.2.1 軟硬件多線程技術(shù)
2.2.2 進程間通信
2.2.3 Linux多線程編程
2.3 分布式計算技術(shù)
2.3.1 負載均衡算法
2.3.2 分布式共享內(nèi)存
2.4 本章小結(jié)
第三章 線程透明的函數(shù)式編程模型設(shè)計
3.1 并行函數(shù)式編程模型原理
3.1.1 復(fù)合與嵌套
3.1.2 樹狀函數(shù)模型
3.1.3 嵌套調(diào)用
3.1.4 遞歸調(diào)用
3.2 任務(wù)調(diào)度模型
3.2.1 任務(wù)優(yōu)先度評估模型
3.2.2 基于任務(wù)竊取的負載均衡方案
3.3 分布式共享內(nèi)存模型
3.3.1 基于變量的分布式共享內(nèi)存結(jié)構(gòu)
3.3.2 內(nèi)存模型策略優(yōu)化
3.4 本章小結(jié)
第四章 模型實現(xiàn)
4.1 運行時平臺實現(xiàn)
4.1.1 運行時平臺總體架構(gòu)
4.1.2 通信管理線程
4.1.3 任務(wù)管理
4.1.4 負載均衡
4.1.5 內(nèi)存管理
4.2 編程接口實現(xiàn)
4.2.1 函數(shù)體定義接口
4.2.2 共享參數(shù)編程接口
4.3 接口示例
4.4 本章小結(jié)
第五章 模型測試與分析
5.1 實驗設(shè)計
5.1.1 實驗平臺搭建
5.1.2 參考對象選擇
5.1.3 測試用例設(shè)計
5.2 性能測試
5.2.1 執(zhí)行時間測試
5.2.2 擴展性測試
5.3 本章小結(jié)
結(jié)論和展望
參考文獻
攻讀碩士學(xué)位期間取得的研究成果
致謝
附件
【參考文獻】:
期刊論文
[1]How functional programming mattered[J]. Zhenjiang Hu,John Hughes,Meng Wang. National Science Review. 2015(03)
[2]淺析基于函數(shù)式的編程范式[J]. 胡志英. 數(shù)字技術(shù)與應(yīng)用. 2015(03)
[3]多核多線程技術(shù)綜述[J]. 眭俊華,劉慧娜,王建鑫,秦慶旺. 計算機應(yīng)用. 2013(S1)
[4]Lisp發(fā)展現(xiàn)狀及未來展望[J]. 解晨. 電腦知識與技術(shù). 2012(36)
碩士論文
[1]基于優(yōu)化負載均衡算法的任務(wù)調(diào)度系統(tǒng)的研究與實現(xiàn)[D]. 朱晨晨.電子科技大學(xué) 2014
[2]基于函數(shù)式編程語言的設(shè)計模式研究[D]. 劉德財.上海師范大學(xué) 2016
本文編號:3707394
本文鏈接:http://sikaile.net/kejilunwen/ruanjiangongchenglunwen/3707394.html
最近更新
教材專著