国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

HPC-paperweekly-01(3月)

2019-11-06 06:29:58
字體:
來源:轉載
供稿:網友

Merge Path - Parallel Merging Made Simple

來源:2014 ipDPS

解決的問題

Parallel merging two sorted arrays。解決這個問題,需要從以下幾個方面思考:

balancing the load among compute cores -minimizing the extra work brought about by parallelization -minimizing inter-thread synchronization -Efficient use of memory

主要創新點

提出了一種新的并行分割方式,雖然分割結果和計算復雜度和以前的并行算法相同,但是我們的分割方法是不同的,具有啟發性的。在此基礎上,提出了一種synchronization-free, cache-efficient merging算法(memory-efficient version)。

方法詳述

抽象出了merge matrix和merge path兩個輔助分割的數據結構。具體如下圖所示。 merge matrix and merge path 其中,矩陣是這樣構建的:若A[i] >= B[i], 則matrix[i][j] = 1, or matrix[i][j] =0; 其中,路徑就是1與0的交界線(線上有一些點組成,pair(x, y)的集合)。在上一步構造出merge path后,每個線程平均分配任務,如,第i個線程從第j個元素開始處理,則每個線程的起始pair是這樣獲得的:x+y = j。 algo: algo example:

實驗平臺及主要的實驗結果

它的實驗結果是多線程與單線程比的。(起始單線程效果是比串行差很多的,一方面計算對角線與mergepath交點需要開銷,另一方面omp開啟有開銷。)

n個線程,相比單線程,大約能獲得n倍的加速比。

test performance

實現代碼

在github上發現一份代碼:mergePathOMP我需要自己寫一份。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 塔城市| 溆浦县| 张北县| 共和县| 礼泉县| 东明县| 科技| 鹰潭市| 娱乐| 会理县| 眉山市| 昌宁县| 塔河县| 灯塔市| 泊头市| 古蔺县| 彭泽县| 弥渡县| 克什克腾旗| 巴林右旗| 广平县| 公安县| 元氏县| 新巴尔虎右旗| 阿拉善左旗| 大荔县| 多伦县| 视频| 武威市| 海阳市| 宁蒗| 章丘市| 龙井市| 武陟县| 恩施市| 古交市| 古交市| 罗城| 浑源县| 泽库县| 沙坪坝区|