| 講演抄録/キーワード |
| 講演名 |
2018-01-19 16:40
LLVMバックエンドの最適化性能テストのミュータント生成 ○田中健司・石浦菜岐佐(関西学院大)・西村啓成・福井昭也(ルネサス エレクトロニクス) VLD2017-88 CPSY2017-132 RECONF2017-76 |
| 抄録 |
(和) |
本稿では, 既存のテストプログラムから自動生成した機能等価なミュータントにより, コンパイラ基盤 LLVM のバックエンドの最適化性能をテストする手法を提案する. LLVM のバックエンドはコード生成のための変換に加えて, ターゲット依存の最適化や各種ピープホール最適化を行うため, 生成されているコードの正誤だけでなく, 意図通りの最適化が行われているかのテスト (性能テスト) が必要になる. 最適化の性能テストは, 主としてコンパイラ開発者が手動で作成したテストプログラムによって行われるため, テストプログラムのバリエーションが限られてしまう. 本稿の手法では, 開発者が特定の最適化機能を対象に作成したテストプログラムからミュータントを自動生成することによって, バックエンドの性能テストを強化する. 本手法のミューテーション操作は元プログラムの実行結果を変化させないものに限定するため, 意図通りの最適化ができているかどうかの判定はアセンブリコードの機械的な比較により行える. 提案手法に基づくツールを Perl 5 を用いて実装しテストを行った結果, LLVM 6.0.0 のx86_64 用バックエンドにおいて, バックエンドの性能向上の参考になると考えられるテストケースを 2件検出した. |
| (英) |
This article presents a method of testing optimization capability of LLVM back-ends by generating functionally equivalent test mutants from existing test programs. Since the LLVM back-ends perform various target dependent and peephole optimization as well as transformations for code generation, it is necessary to test if optimization is properly done as designed to enhance performance, not to mention if generated codes are correct. Test programs for the performance test are usually developed manually by compiler designers, which do not always provide enough variation to cover corner cases. The method in this article attempts to augment test cases by generating mutants from existing test programs. The mutation in our method is designed not to change the functionality of the original test programs, so that insufficient optimization is detected by mechanical comparison of assembly codes. In a preliminary experiment on the LLVM 6.0.0 back-end for x86_64, a tool based on the proposed method has found two interesting cases which might contribute toward performance improvement of the back-end. |
| キーワード |
(和) |
LLVM IR / バックエンド / ミューテーション / 最適化 / / / / |
| (英) |
LLVM IR / Back-Ends / Mutation / Optimization / / / / |
| 文献情報 |
信学技報, vol. 117, no. 377, VLD2017-88, pp. 169-174, 2018年1月. |
| 資料番号 |
VLD2017-88 |
| 発行日 |
2018-01-11 (VLD, CPSY, RECONF) |
| ISSN |
Print edition: ISSN 0913-5685 Online edition: ISSN 2432-6380 |
著作権に ついて |
技術研究報告に掲載された論文の著作権は電子情報通信学会に帰属します.(許諾番号:10GA0019/12GB0052/13GB0056/17GB0034/18GB0034) |
| PDFダウンロード |
VLD2017-88 CPSY2017-132 RECONF2017-76 |
| 研究会情報 |
| 研究会 |
IPSJ-ARC VLD CPSY RECONF IPSJ-SLDM |
| 開催期間 |
2018-01-18 - 2018-01-19 |
| 開催地(和) |
慶應義塾大学 日吉キャンパス 来往舎 |
| 開催地(英) |
Raiosha, Hiyoshi Campus, Keio University |
| テーマ(和) |
FPGA応用および一般 |
| テーマ(英) |
FPGA Applications, etc |
| 講演論文情報の詳細 |
| 申込み研究会 |
VLD |
| 会議コード |
2018-01-ARC-VLD-CPSY-RECONF-SLDM |
| 本文の言語 |
日本語 |
| タイトル(和) |
LLVMバックエンドの最適化性能テストのミュータント生成 |
| サブタイトル(和) |
|
| タイトル(英) |
Mutant Generation of Performance Tests for LLVM Back-Ends |
| サブタイトル(英) |
|
| キーワード(1)(和/英) |
LLVM IR / LLVM IR |
| キーワード(2)(和/英) |
バックエンド / Back-Ends |
| キーワード(3)(和/英) |
ミューテーション / Mutation |
| キーワード(4)(和/英) |
最適化 / Optimization |
| キーワード(5)(和/英) |
/ |
| キーワード(6)(和/英) |
/ |
| キーワード(7)(和/英) |
/ |
| キーワード(8)(和/英) |
/ |
| 第1著者 氏名(和/英/ヨミ) |
田中 健司 / Kenji Tanaka / タナカ ケンジ |
| 第1著者 所属(和/英) |
関西学院大学 (略称: 関西学院大)
Kwansei Gakuin University (略称: Kwansei Gakuin Univ.) |
| 第2著者 氏名(和/英/ヨミ) |
石浦 菜岐佐 / Nagisa Ishiura / イシウラ ナギサ |
| 第2著者 所属(和/英) |
関西学院大学 (略称: 関西学院大)
Kwansei Gakuin University (略称: Kwansei Gakuin Univ.) |
| 第3著者 氏名(和/英/ヨミ) |
西村 啓成 / Masanari Nishimura / ニシムラ マサナリ |
| 第3著者 所属(和/英) |
ルネサス エレクトロニクス株式会社 (略称: ルネサス エレクトロニクス)
Renesas Electronics Corporation (略称: Renesas) |
| 第4著者 氏名(和/英/ヨミ) |
福井 昭也 / Akiya Fukui / フクイ アキヤ |
| 第4著者 所属(和/英) |
ルネサス エレクトロニクス株式会社 (略称: ルネサス エレクトロニクス)
Renesas Electronics Corporation (略称: Renesas) |
| 第5著者 氏名(和/英/ヨミ) |
/ / |
| 第5著者 所属(和/英) |
(略称: )
(略称: ) |
| 第6著者 氏名(和/英/ヨミ) |
/ / |
| 第6著者 所属(和/英) |
(略称: )
(略称: ) |
| 第7著者 氏名(和/英/ヨミ) |
/ / |
| 第7著者 所属(和/英) |
(略称: )
(略称: ) |
| 第8著者 氏名(和/英/ヨミ) |
/ / |
| 第8著者 所属(和/英) |
(略称: )
(略称: ) |
| 第9著者 氏名(和/英/ヨミ) |
/ / |
| 第9著者 所属(和/英) |
(略称: )
(略称: ) |
| 第10著者 氏名(和/英/ヨミ) |
/ / |
| 第10著者 所属(和/英) |
(略称: )
(略称: ) |
| 第11著者 氏名(和/英/ヨミ) |
/ / |
| 第11著者 所属(和/英) |
(略称: )
(略称: ) |
| 第12著者 氏名(和/英/ヨミ) |
/ / |
| 第12著者 所属(和/英) |
(略称: )
(略称: ) |
| 第13著者 氏名(和/英/ヨミ) |
/ / |
| 第13著者 所属(和/英) |
(略称: )
(略称: ) |
| 第14著者 氏名(和/英/ヨミ) |
/ / |
| 第14著者 所属(和/英) |
(略称: )
(略称: ) |
| 第15著者 氏名(和/英/ヨミ) |
/ / |
| 第15著者 所属(和/英) |
(略称: )
(略称: ) |
| 第16著者 氏名(和/英/ヨミ) |
/ / |
| 第16著者 所属(和/英) |
(略称: )
(略称: ) |
| 第17著者 氏名(和/英/ヨミ) |
/ / |
| 第17著者 所属(和/英) |
(略称: )
(略称: ) |
| 第18著者 氏名(和/英/ヨミ) |
/ / |
| 第18著者 所属(和/英) |
(略称: )
(略称: ) |
| 第19著者 氏名(和/英/ヨミ) |
/ / |
| 第19著者 所属(和/英) |
(略称: )
(略称: ) |
| 第20著者 氏名(和/英/ヨミ) |
/ / |
| 第20著者 所属(和/英) |
(略称: )
(略称: ) |
| 第21著者 氏名(和/英/ヨミ) |
/ / |
| 第21著者 所属(和/英) |
(略称: )
(略称: ) |
| 第22著者 氏名(和/英/ヨミ) |
/ / |
| 第22著者 所属(和/英) |
(略称: )
(略称: ) |
| 第23著者 氏名(和/英/ヨミ) |
/ / |
| 第23著者 所属(和/英) |
(略称: )
(略称: ) |
| 第24著者 氏名(和/英/ヨミ) |
/ / |
| 第24著者 所属(和/英) |
(略称: )
(略称: ) |
| 第25著者 氏名(和/英/ヨミ) |
/ / |
| 第25著者 所属(和/英) |
(略称: )
(略称: ) |
| 第26著者 氏名(和/英/ヨミ) |
/ / |
| 第26著者 所属(和/英) |
(略称: )
(略称: ) |
| 第27著者 氏名(和/英/ヨミ) |
/ / |
| 第27著者 所属(和/英) |
(略称: )
(略称: ) |
| 第28著者 氏名(和/英/ヨミ) |
/ / |
| 第28著者 所属(和/英) |
(略称: )
(略称: ) |
| 第29著者 氏名(和/英/ヨミ) |
/ / |
| 第29著者 所属(和/英) |
(略称: )
(略称: ) |
| 第30著者 氏名(和/英/ヨミ) |
/ / |
| 第30著者 所属(和/英) |
(略称: )
(略称: ) |
| 第31著者 氏名(和/英/ヨミ) |
/ / |
| 第31著者 所属(和/英) |
(略称: )
(略称: ) |
| 第32著者 氏名(和/英/ヨミ) |
/ / |
| 第32著者 所属(和/英) |
(略称: )
(略称: ) |
| 第33著者 氏名(和/英/ヨミ) |
/ / |
| 第33著者 所属(和/英) |
(略称: )
(略称: ) |
| 第34著者 氏名(和/英/ヨミ) |
/ / |
| 第34著者 所属(和/英) |
(略称: )
(略称: ) |
| 第35著者 氏名(和/英/ヨミ) |
/ / |
| 第35著者 所属(和/英) |
(略称: )
(略称: ) |
| 第36著者 氏名(和/英/ヨミ) |
/ / |
| 第36著者 所属(和/英) |
(略称: )
(略称: ) |
| 講演者 |
第1著者 |
| 発表日時 |
2018-01-19 16:40:00 |
| 発表時間 |
25分 |
| 申込先研究会 |
VLD |
| 資料番号 |
VLD2017-88, CPSY2017-132, RECONF2017-76 |
| 巻番号(vol) |
vol.117 |
| 号番号(no) |
no.377(VLD), no.378(CPSY), no.379(RECONF) |
| ページ範囲 |
pp.169-174 |
| ページ数 |
6 |
| 発行日 |
2018-01-11 (VLD, CPSY, RECONF) |
|