brainstorming
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or planning anything new, in software or out of it (a talk, a business, a renovation).
pytorchOperate transformer_engine.pytorch for PyTorch layers, precision control, distributed overlap, and debug workflows.
Independent GitHub snapshot · Automated classification · Original documentation governs
Use this sub-skill when the task is to apply Transformer Engine's PyTorch surface inside a model, training loop, export path, or debugging session.
torch.nn layers with transformer_engine.pytorch.Linear, GroupedLinear, LayerNorm, RMSNorm, LayerNormLinear, LayerNormMLP, DotProductAttention, MultiheadAttention, or TransformerLayer.params_dtype and torch.autocast.te.autocast(...).Read these bundled references before changing code or explaining usage:
references/api-reference.md for constructors, helpers, tensor classes, and op-fuser surfaces.references/workflows.md for minimal BF16/FP16 flows and guarded low-precision recipes.references/distributed-and-advanced.md for FSDP, checkpointing, userbuffers, CPU offload, export, and advanced fusion.references/troubleshooting.md for import order, runtime mismatches, and precision failures.Run the bundled smoke script to validate a small BF16 te.Linear path without depending on the source repository:
python scripts/pytorch_bf16_smoke.py --help
python scripts/pytorch_bf16_smoke.py --device cuda --in-features 16 --out-features 32 --batch-size 4
The helper prints version, device, and precision-availability facts, then runs a tiny BF16 forward/backward pass. It is intentionally narrower than the full TransformerLayer examples.
torch.autocast for BF16/FP16 compute control; use te.autocast for FP8/MXFP8/NVFP4 quantized compute. They are not interchangeable.quantized_model_init(enabled=True) is used with master-weight optimizers, preserve or copy high-precision init values before clearing them if you need FP32 seeding.