文献
J-GLOBAL ID:201702248256721446   整理番号:17A0903217

アプリに特化したSIMD最適化のためのOpenMP仕様拡張の提案とARM SVEを用いた評価

著者 (4件):
資料名:
巻: 2017  号: HPC-160  ページ: Vol.2017-HPC-160,No.10,1-8 (WEB ONLY)  発行年: 2017年07月19日 
JST資料番号: U0451A  資料種別: 会議録 (C)
記事区分: 原著論文  発行国: 日本 (JPN)  言語: 日本語 (JA)
抄録/ポイント:
抄録/ポイント
文献の概要を数百字程度の日本語でまとめたものです。
部分表示の続きは、JDreamⅢ(有料)でご覧頂けます。
J-GLOBALでは書誌(タイトル、著者名等)登載から半年以上経過後に表示されますが、医療系文献の場合はMyJ-GLOBALでのログインが必要です。
近年の高性能計算向けプロセッサアーキテクチャにおいてSIMD命令による並列性が増加していく傾向があり,SIMD命令を用いることが対象アーキテクチャの性能を引き出すために必要不可欠になっている。最新のOpenMP言語仕様に導入されたSIMD指示文を用いることによってループ文のベクトル化を助ける情報をコンパイラに与えることができる。しかし,SIMD命令の生成はコンパイラの実装に依存するため,プログラマが命令生成を制御し,最適化を行うことは困難である。本研究では対象アーキテクチャに特化して関数のSIMD命令レベル最適化を行い,OpenMPのSIMDプログラミングモデルで利用するための拡張構文を提案する。プログラマはintrinsic関数などを用いて対象アーキテクチャに特化した最適化を行う。コンパイラがベクトル化するループ文の中で関数呼び出しを見つけた時にそれを自動ベクトル化するのではなく,プログラマが用意したSIMD命令実装に置き換えることによってプログラマが最適と考えるSIMD並列化を実現する。提案手法によってループ文のイテレーションの変換はスレッド並列化と同様,コンパイラによって行われるが,SIMD命令の生成はプログラマが制御することが可能になる。画像処理のコードを用いた性能評価ではコンパイラによる自動ベクトル化コードと比べてプログラマが明示的に与えたSIMD命令実装を用いることで実行命令数を最大70%削減していることで提案手法の有効性を示した。(著者抄録)
シソーラス用語:
シソーラス用語/準シソーラス用語
文献のテーマを表すキーワードです。
部分表示の続きはJDreamⅢ(有料)でご覧いただけます。
J-GLOBALでは書誌(タイトル、著者名等)登載から半年以上経過後に表示されますが、医療系文献の場合はMyJ-GLOBALでのログインが必要です。

準シソーラス用語:
シソーラス用語/準シソーラス用語
文献のテーマを表すキーワードです。
部分表示の続きはJDreamⅢ(有料)でご覧いただけます。
J-GLOBALでは書誌(タイトル、著者名等)登載から半年以上経過後に表示されますが、医療系文献の場合はMyJ-GLOBALでのログインが必要です。

分類 (2件):
分類
JSTが定めた文献の分類名称とコードです
ディジタル計算機方式一般  ,  制御方式 
引用文献 (11件):
  • ARM Scalable Vector Extension: https://developer.arm.com/products/architecture/a-profile/docs.
  • Pohl, A., Cosenza, B., Mesa, M. A., Chi, C. C. and Juurlink, B.: An Evaluation of Current SIMD Programming Models for C++, Proceedings of the 3rd Workshop on Programming Models for SIMD/Vector Processing, WPMVP ’16, New York, NY, USA, ACM, pp. 3:1-3:8 (online), DOI: 10.1145/2870650.2870653 (2016).
  • ARM C Language Extensions for SVE: https://developer.arm.com/docs/100987/lat est/arm-c-language-extensions-for-sve.
  • Pharr, M. and Mark, W. R.: ispc: A SPMD compiler for high-performance CPU programming, 2012 Innovative Parallel Computing (InPar), pp. 1-13 (online), DOI: 10.1109/InPar.2012.6339601 (2012).
  • Krzikalla, O. and Zitzlsberger, G.: Code Vectorization Using Intel Array Notation, Proceedings of the 3rd Workshop on Programming Models for SIMD/Vector Processing, WPMVP ’16, New York, NY, USA, ACM, pp. 6:1-6:8 (online), DOI: 10.1145/2870650.2870655 (2016).
もっと見る

前のページに戻る