Can We Run in Parallel?

  • TornadoVM を使ってJavaの static + JIT loop parallelizerを作った

  • 生成された制約は、(Soot と統合した) z3 定理証明に供給され、@Parallel 構成を用いて並列化可能なループの正準に注釈をつける

  • ループ並列化のために静的解析結果を使用するよう TornadoVM にランタイムサポートを追加した

    • 評価では, AutoTornado は手動で並列化可能なループの 61.3% を, 効率的な静的解析とゼロに近い実行時オーバーヘッドで正しく並列化することが示されました
    • 我々の知る限り、AutoTornadoは実世界のJVMに対してプログラム解析に基づく並列化を実行する最初のツールであるだけでなく、ループ並列化のためにZ3とSootを統合した最初のツールである