diff --git a/examples/configs/recipes/llm/performance/dapo-deepseek-v3-64n8g.v2.yaml b/examples/configs/recipes/llm/performance/dapo-deepseek-v3-64n8g.v2.yaml index 5ef1591ecde..e0722c46740 100644 --- a/examples/configs/recipes/llm/performance/dapo-deepseek-v3-64n8g.v2.yaml +++ b/examples/configs/recipes/llm/performance/dapo-deepseek-v3-64n8g.v2.yaml @@ -62,6 +62,7 @@ policy: lr_warmup_init: 5.0e-08 sequence_packing: enabled: true + fuse_loss: true generation: max_new_tokens: 1536 vllm_cfg: diff --git a/examples/configs/recipes/llm/performance/grpo-deepseek-v3-32n8g.yaml b/examples/configs/recipes/llm/performance/grpo-deepseek-v3-32n8g.yaml index a3911db41a9..65da5d62297 100644 --- a/examples/configs/recipes/llm/performance/grpo-deepseek-v3-32n8g.yaml +++ b/examples/configs/recipes/llm/performance/grpo-deepseek-v3-32n8g.yaml @@ -7,6 +7,7 @@ grpo: max_val_samples: 16 loss_fn: use_importance_sampling_correction: true + force_on_policy_ratio: true checkpointing: checkpoint_dir: results/grpo-deepseek-v3-32n8g policy: diff --git a/examples/configs/recipes/llm/performance/grpo-qwen3-235b-16n8g.yaml b/examples/configs/recipes/llm/performance/grpo-qwen3-235b-16n8g.yaml index 1228db60bb2..f13fd27829d 100644 --- a/examples/configs/recipes/llm/performance/grpo-qwen3-235b-16n8g.yaml +++ b/examples/configs/recipes/llm/performance/grpo-qwen3-235b-16n8g.yaml @@ -7,6 +7,7 @@ grpo: max_val_samples: 16 loss_fn: use_importance_sampling_correction: true + force_on_policy_ratio: true checkpointing: checkpoint_dir: results/grpo-qwen3-235b-16n8g policy: @@ -17,6 +18,8 @@ policy: logprob_batch_size: 1 max_total_sequence_length: 8192 make_sequence_length_divisible_by: 8 + sequence_packing: + fuse_loss: true dtensor_cfg: enabled: false megatron_cfg: diff --git a/examples/configs/recipes/llm/performance/grpo-qwen3-30ba3b-4n4g.yaml b/examples/configs/recipes/llm/performance/grpo-qwen3-30ba3b-4n4g.yaml index 947b2d1b1c9..71b1ab6de1c 100644 --- a/examples/configs/recipes/llm/performance/grpo-qwen3-30ba3b-4n4g.yaml +++ b/examples/configs/recipes/llm/performance/grpo-qwen3-30ba3b-4n4g.yaml @@ -10,6 +10,8 @@ policy: train_micro_batch_size: 1 logprob_batch_size: 2 max_total_sequence_length: 4096 + sequence_packing: + fuse_loss: true dtensor_cfg: enabled: false optimizer: null diff --git a/examples/configs/recipes/llm/performance/grpo-qwen3-30ba3b-4n8g-40K.yaml b/examples/configs/recipes/llm/performance/grpo-qwen3-30ba3b-4n8g-40K.yaml index a8e130f8530..b8646bc1f76 100644 --- a/examples/configs/recipes/llm/performance/grpo-qwen3-30ba3b-4n8g-40K.yaml +++ b/examples/configs/recipes/llm/performance/grpo-qwen3-30ba3b-4n8g-40K.yaml @@ -10,6 +10,8 @@ policy: train_micro_batch_size: 1 logprob_batch_size: 4 max_total_sequence_length: 40960 + sequence_packing: + fuse_loss: true dtensor_cfg: enabled: false optimizer: null diff --git a/examples/configs/recipes/llm/performance/grpo-qwen3-30ba3b-4n8g.yaml b/examples/configs/recipes/llm/performance/grpo-qwen3-30ba3b-4n8g.yaml index 6eda477ba1b..6fbecbedd38 100644 --- a/examples/configs/recipes/llm/performance/grpo-qwen3-30ba3b-4n8g.yaml +++ b/examples/configs/recipes/llm/performance/grpo-qwen3-30ba3b-4n8g.yaml @@ -10,6 +10,8 @@ policy: train_micro_batch_size: 1 logprob_batch_size: 4 max_total_sequence_length: 4096 + sequence_packing: + fuse_loss: true dtensor_cfg: enabled: false optimizer: null diff --git a/tests/test_suites/llm/performance/grpo-deepseek-v3-64n8g-fp8-async-1off.sh b/tests/test_suites/llm/performance/grpo-deepseek-v3-64n8g-fp8-async-1off.sh index 362aa69204f..e32b88f936f 100755 --- a/tests/test_suites/llm/performance/grpo-deepseek-v3-64n8g-fp8-async-1off.sh +++ b/tests/test_suites/llm/performance/grpo-deepseek-v3-64n8g-fp8-async-1off.sh @@ -20,6 +20,12 @@ NUM_MINUTES=240 exit_if_max_steps_reached +# envvars for better fp8 inference performance +export VLLM_USE_FLASHINFER_MOE_FP8=1 +export VLLM_FLASHINFER_MOE_BACKEND=latency +export VLLM_FLASHINFER_ALLREDUCE_BACKEND=mnnvl +export VLLM_ALLREDUCE_USE_FLASHINFER=1 + # Run the experiment cd $PROJECT_ROOT uv run examples/run_grpo.py \