ログイン 新規登録
言語:

WEKO3

  • トップ
  • ランキング
To
lat lon distance
To

Field does not validate



インデックスリンク

インデックスツリー

メールアドレスを入力してください。

WEKO

One fine body…

WEKO

One fine body…

アイテム

  1. 論文誌(トランザクション)
  2. プログラミング(PRO)
  3. Vol.15
  4. No.1

Scalar Replacement Considering Branch Divergence

https://ipsj.ixsq.nii.ac.jp/records/214569
https://ipsj.ixsq.nii.ac.jp/records/214569
d0d52cb5-03e1-4555-8307-defd4118726f
名前 / ファイル ライセンス アクション
IPSJ-TPRO1501004.pdf IPSJ-TPRO1501004.pdf (937.4 kB)
Copyright (c) 2022 by the Information Processing Society of Japan
オープンアクセス
Item type Trans(1)
公開日 2022-01-05
タイトル
タイトル Scalar Replacement Considering Branch Divergence
タイトル
言語 en
タイトル Scalar Replacement Considering Branch Divergence
言語
言語 eng
キーワード
主題Scheme Other
主題 [通常論文] GPU, branch divergence, code optimization, scalar replacement, speculative code motion
資源タイプ
資源タイプ識別子 http://purl.org/coar/resource_type/c_6501
資源タイプ journal article
著者所属
Department of Information Sciences, Tokyo University of Science
著者所属
Department of Information Sciences, Tokyo University of Science
著者所属(英)
en
Department of Information Sciences, Tokyo University of Science
著者所属(英)
en
Department of Information Sciences, Tokyo University of Science
著者名 Junji, Fukuhara

× Junji, Fukuhara

Junji, Fukuhara

Search repository
Munehiro, Takimoto

× Munehiro, Takimoto

Munehiro, Takimoto

Search repository
著者名(英) Junji, Fukuhara

× Junji, Fukuhara

en Junji, Fukuhara

Search repository
Munehiro, Takimoto

× Munehiro, Takimoto

en Munehiro, Takimoto

Search repository
論文抄録
内容記述タイプ Other
内容記述 GPU with the Single Instruction Multiple Data (SIMD) execution model enables a program to work efficiently. However, the efficiency may decrease because of branch divergence that occurs when SIMD threads follow different paths in some branches. Once the divergence occurs, some threads must wait until completion of the execution of the others. Thus, it is important to reduce branch divergence to improve the efficiency of GPU programs. On the other hand, branch divergence may be increased by some traditional code optimizations based on code motion such as partial redundancy elimination (PRE) and scalar replacement (SR). These methods insert some expressions into some paths, on which insertion points may be included in divergent branches. That is, the insertion may increase branch divergence, which may result in the decrease of execution efficiency of GPU programs. In this paper, we propose a new SR approach, called Speculative SR based on Question Propagation (SSRQP), which not only removes redundant memory accesses but also reduces branch divergence. SSRQP achieves SR based on speculative code motion, which not only eliminates inter-iteration redundant memory accesses without increasing branch divergence but also decreases branch divergence that originally exists through hoisting memory accesses in true and false sides of a divergent branch out of it. To prove the effectiveness of our method, we have conducted experiments through applying it to some benchmarks with divergent branches. The experimental results show that it can improve the efficiency about 40% in the best case in comparison with traditional techniques.
------------------------------
This is a preprint of an article intended for publication Journal of
Information Processing(JIP). This preprint should not be cited. This
article should be cited as: Journal of Information Processing Vol.30(2022) (online)
------------------------------
論文抄録(英)
内容記述タイプ Other
内容記述 GPU with the Single Instruction Multiple Data (SIMD) execution model enables a program to work efficiently. However, the efficiency may decrease because of branch divergence that occurs when SIMD threads follow different paths in some branches. Once the divergence occurs, some threads must wait until completion of the execution of the others. Thus, it is important to reduce branch divergence to improve the efficiency of GPU programs. On the other hand, branch divergence may be increased by some traditional code optimizations based on code motion such as partial redundancy elimination (PRE) and scalar replacement (SR). These methods insert some expressions into some paths, on which insertion points may be included in divergent branches. That is, the insertion may increase branch divergence, which may result in the decrease of execution efficiency of GPU programs. In this paper, we propose a new SR approach, called Speculative SR based on Question Propagation (SSRQP), which not only removes redundant memory accesses but also reduces branch divergence. SSRQP achieves SR based on speculative code motion, which not only eliminates inter-iteration redundant memory accesses without increasing branch divergence but also decreases branch divergence that originally exists through hoisting memory accesses in true and false sides of a divergent branch out of it. To prove the effectiveness of our method, we have conducted experiments through applying it to some benchmarks with divergent branches. The experimental results show that it can improve the efficiency about 40% in the best case in comparison with traditional techniques.
------------------------------
This is a preprint of an article intended for publication Journal of
Information Processing(JIP). This preprint should not be cited. This
article should be cited as: Journal of Information Processing Vol.30(2022) (online)
------------------------------
書誌レコードID
収録物識別子タイプ NCID
収録物識別子 AA11464814
書誌情報 情報処理学会論文誌プログラミング(PRO)

巻 15, 号 1, 発行日 2022-01-05
ISSN
収録物識別子タイプ ISSN
収録物識別子 1882-7802
出版者
言語 ja
出版者 情報処理学会
戻る
0
views
See details
Views

Versions

Ver.1 2025-01-19 16:33:45.794247
Show All versions

Share

Mendeley Twitter Facebook Print Addthis

Cite as

エクスポート

OAI-PMH
  • OAI-PMH JPCOAR
  • OAI-PMH DublinCore
  • OAI-PMH DDI
Other Formats
  • JSON
  • BIBTEX

Confirm


Powered by WEKO3


Powered by WEKO3