LoginSignup
9

More than 5 years have passed since last update.

EmbulkとDigdagでJVM最適化オプションを効かせる際のメモ

Last updated at Posted at 2017-03-10

JVMの最適化オプションを効かせるためのメモ。

Embulk

$ embulk run -b embulk_bundle config.yml
$ embulk -J-Xmx30g run -b embulk_bundle config.yml

$ embulk -b embulk_bundle run config.yml
  • これでも動くが最適化オプションが効かない。

最適化オプションが効いているかどうかの確認方法

$ pgrep -fl embulk
6337 java -XX:+AggressiveOpts -XX:+UseConcMarkSweepGC 〜

$ pgrep -fl embulk
6338 java -XX:+AggressiveOpts -XX:+TieredCompilation -XX:TieredStopAtLevel=1 -Xverify:none 〜
  • UseConcMarkSweepGCがあれば最適化オプションが効いており(実行中のスループットが高い)、TieredCompilationとTieredStopAtLevelがある場合は最適化オプションが効いていない。
    • 後者は起動時間短縮する開発向け。
    • embulk preview 〜の場合も後者となる。

Digdag

$ digdag -J+O run --project workflow my_workflow.dig

$ digdag run --project workflow my_workflow.dig
  • digdagの後ろに「-J+O」を付けないとDigdag自体の最適化オプションが動かない。
  • DigdagからEmbulkを動かしている場合のEmbulkは無関係。

最適化オプションが効いているかどうかの確認方法

$ pgrep -fl digdag
8796 java -Dio.digdag.cli.launcher=selfrun -XX:+AggressiveOpts -XX:+UseConcMarkSweepGC 〜

$ pgrep -fl digdag
8797 java -Dio.digdag.cli.launcher=selfrun -XX:+AggressiveOpts -XX:TieredStopAtLevel=1 -Xverify:none 〜
  • Embulkと確認方法は同じ

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9