基于GPU/CPU的流程序多粒度劃分與調度
大小:1.09 MB 人氣: 2017-11-23 需要積分:0
數據流編程語言簡化了相關領域的編程,很好地把任務計算和數據通信分開,從而使應用程序分別在任務級和數據級均具有可并行性。針對GPU/CPU混合架構中存在的大量數據并行、任務并行和流水線并行等問題,提出并實現了面向GPU/CPU混合架構的數據流程序任務劃分方法和多粒度調度策略,包括任務的分類處理、GPU端任務的水平分裂和CPU端離散任務的均衡化,構造了軟件流水調度,經過編譯優化生成OpenCI。的目標代碼。任務的分類處理根據數據流程序各個任務的計算特點和任務間的通信量大小,將各任務分配到合適的計算平臺上;GPU端任務的水平分裂利用GPU端任務的并行性將其均衡分裂到各個GPU,以避免GPU間高額的通信開銷影響程序整體的執行性能;CPU端離散任務的均衡化通過選擇合適CPU核,將CPU端各任務均衡分配給各CPU核,以保證負載均衡并提高各CPU核的利用率。實驗以多塊NVIDIA Tesla C2050、多核CPU為混合架構平臺,選取多媒體領域典型的算法作為測試程序,實驗結果表明了劃分方法和調度策略的有效性。
?
非常好我支持^.^
(0) 0%
不好我反對
(0) 0%