《CPU-GPU耦合架構下資料庫連線技術研究》是依託北京師範大學,由欒華擔任項目負責人的青年科學基金項目。
基本介紹
- 中文名:CPU-GPU耦合架構下資料庫連線技術研究
- 依託單位:北京師範大學
- 項目負責人:欒華
- 項目類別:青年科學基金項目
項目摘要,結題摘要,
項目摘要
GPU是為加速圖形處理而設計的、支持向量計算及SIMD技術的協處理器,具有大規模並行的特點,比較適合大規模數據處理和向量化執行,所以現在很多領域開始使用GPU作為通用目標處理器。在離散架構下,GPU和CPU之間通常使用PCI-e匯流排連線,基於GPU的資料庫查詢處理的大部分研究工作集中在這種架構下,PCI-e匯流排的低頻寬往往成為影響查詢處理性能的瓶頸。最近,硬體廠商開始將CPU和GPU集成到一個晶片上,形成耦合的CPU-GPU架構,在這種架構下,CPU和GPU可以共享快取和記憶體,減少數據拷貝帶來的開銷,易於向量化執行的實現。本項目希望在耦合CPU-GPU架構下進行資料庫連線技術的研究工作,對CPU和GPU的硬體行為進行分析,設計耦合架構下的連線行為模型,研究耦合架構下記憶體連線向量化執行方法,並在此基礎上構建外存連線方法和並行連線方法,希望本項目的研究工作能夠為資料庫領域的發展提供新思路。
結題摘要
計算機硬體技術一直在向前發展,在CPU方面,多核、集成GPU、SIMD已經被主流商業產品所支持,充分利用新硬體技術帶來的並行能力提高軟體性能是一種可行途徑,但這需要已有軟體系統重新進行設計與實現,本項目在此背景下研究資料庫領域關鍵技術的最佳化方法。主要研究內容包括在CPU-GPU耦合架構下進行連線等操作的行為評測與分析,從多個維度探索查詢和主要操作的表現特性;設計向量化的記憶體連線、聚集等並行方法,最大程度利用GPU和SIMD的計算能力;研究壓縮方法對連線等算法的影響,使用CPU和GPU直接對壓縮數據進行處理。在研究過程中,本項目採用向量化技術設計了連線、聚集等並行算法,利用OpenCL和C語言實現了一個支持CPU-GPU耦合架構的OLAP查詢原型系統,系統可在Intel和AMD的CPU和集成GPU上運行。採用SSBM數據集對系統進行評測和分析,研究發現對大多數分析查詢來說,連線和聚集是在集成GPU上主要的耗時操作,與CPU相比,連線算法在集成GPU上能夠取得較好效果;在CPU上,工作組和工作項數目等配置參數會對性能產生影響,當工作組數目與CPU核心數目相等時能夠取得較好性能,在GPU上,很多設定都能獲得較好性能;OpenCL實現能夠影響查詢性能,當前Intel SDK具有提升空間;與集成GPU和AMD CPU相比,Intel CPU對分析型工作負載具有很強優勢;CPU能從壓縮技術中獲取較大提升,在集成GPU上應該進行新的設計。本項目工作可對資料庫系統性能最佳化提出兩方面建議:為了更好的利用新硬體,OpenCL的具體實現需要進一步進行改善;在協同工作模式下,CPU和GPU之間工作負載的分配需要考慮CPU仍然具有很好性能這一因素。本項目的研究工作可為資料庫系統的發展提供新思路和依據。