NVIDIA / NVIDIA/TileGym

Why cutile's rmsnorm required full register

Open
#169 5 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
811
Forks
87
Avg merge
6d 4h
Merged PRs (30d)
9

Description

I just test 16384x512 bf16 dtype rmsnorm, Nsight compute report says rms_norm_kernel_static_persistent use 255 registers, and I wonder how to control register num to increase occupancy.

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 locating the implementation of rms_norm_kernel_static_persistent and reproduce the 16384x512 bf16 rmsnorm case. Use Nsight Compute to inspect its 255-register usage and occupancy. Done means identifying why the kernel uses the full register allocation and documenting or demonstrating how register usage can be controlled.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.