NVIDIA / NVIDIA/TransformerEngine

FP8BlockQuantizer not work on TE

Open
#2,393 10 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Python
Stars
3.5k
Forks
831
Avg merge
3d 11h
Merged PRs (30d)
65

Description

Describe the bug

  1. Issues Caused by Enabling Tensor Parallelism (TP)
    Phenomenon: When enabling fp8_recipe == blockwise with TP:
  • Error: AssertionError: All-gather requires quantizable tensor for quantizer Float8BlockQuantizer
  • If this assertion is commented out and SP (Sequence Parallelism) is disabled:
    Error: ValueError: When using expert parallelism and tensor parallelism, sequence parallelism must be used
  • If this assertion is commented out and SP is enabled:
    Error: CUDA Error: an illegal memory access was encountered
    Temporary Solution: Disable TP for MOE training.
Image
  1. Issues Caused by Enabling CPU Offload
    If optimizer_cpu_offload is enabled, it requires:
  • Not enabling --fp8-param-gather
  • And args.fp8_recipe == "delayed"
    Problem: If --fp8-param-gather is not enabled, FP8 training ends up requiring higher GPU memory than BF16 training.

Environment details

If NVIDIA docker image is used you don't need to specify these.
Otherwise, please provide:

  • Pytorch version 2.8.0+cu129
  • Python version 3.12
  • Transformer Engine version 2.8.0
  • CUDA version 12.9

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the FP8 blockwise cases described with tensor parallelism, sequence parallelism, expert parallelism, and CPU offload using the stated PyTorch, Transformer Engine, and CUDA versions. Done means the affected configurations no longer produce the quantizer assertion, sequence-parallelism error, illegal memory access, or the reported CPU-offload limitations.

Written by the indexing model from the issue text.

Assessment

Tech stack
python, pytorch
Domain
distributed-systems, machine-learning, performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.