摘要:本發明公開了一種GPU上基于內存統一管理的MapReduce實現方法,包括:初始化GPU的塊大小為Bs,每個塊中的線程數目N,輸入數據量大小M;在全局內存上為GPU的每個塊分配一個中間數據緩沖區,同時分配一個全局結果緩沖區;對p%的輸入數據進行預處理,在中間數據緩沖區中收集map任務計算結果和歸約頻率信息;根據鍵值對的歸約頻率,對中間結果進行排序,保存鍵值對索引信息到排序結果緩沖區sort_index[]中;初始化GPU每個塊對應的中間數據緩沖區為零,在共享內存中建立內存分配區sm_pool[];設置內存分配標記數組mem_flag[]。本發明在每個GPU塊的中間數據緩沖區中,對全局內存和共享內存資源進行統一管理,減少了內存資源開銷,避免了分開管理導致的鍵值對對重復查找和map任務重復計算開銷。
- 專利類型發明專利
- 申請人華中科技大學;
- 發明人金海;鄭然;劉凱;章勤;馮曉文;
- 地址430074 湖北省武漢市洪山區珞喻路1037號
- 申請號CN201310710435.0
- 申請時間2013年12月20日
- 申請公布號CN103714009B
- 申請公布時間2016年07月27日
- 分類號G06F12/02(2006.01)I;G06F17/30(2006.01)I;