Can We Run in Parallel?
-
TornadoVMを使ってJavaの static + JIT loop parallelizerを作った -
生成された制約は、(Soot と統合した) z3 定理証明に供給され、
@Parallel構成を用いて並列化可能なループの正準に注釈をつける -
ループ並列化のために静的解析結果を使用するよう TornadoVM にランタイムサポートを追加した
- 評価では, AutoTornado は手動で並列化可能なループの 61.3% を, 効率的な静的解析とゼロに近い実行時オーバーヘッドで正しく並列化することが示されました
- 我々の知る限り、AutoTornadoは実世界のJVMに対してプログラム解析に基づく並列化を実行する最初のツールであるだけでなく、ループ並列化のためにZ3とSootを統合した最初のツールである