Forward Convolution Kernel
Maintainers usually reply within 8 days
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
- Issue type
- Feature
- Clarity
- Needs clarification
- Activity status
- Active
- Domain
- backend, performance
Research direction
Start with ROADMAP.md to confirm the planned forward convolution scope, then read the existing matmul.py implementation and its conventions. Review the proposed conv1d, layout, dtype, and benchmarking questions with maintainers before coding; completion criteria are an agreed scope and implementation plan, followed by benchmarks against PyTorch F.convNd.
Written by the indexing model from the issue text.
Description
Hello, I'm interested in helping implement the forward convolution kernel, which is marked as 📅 Planned in ROADMAP.md.
After browsing through the repository, I've come up with a couple of questions/thoughts to shape the implementation direction
Design proposal:
- Following the existing convention that op signatures mirror PyTorch's, I plan on implementing separate variants, such as
conv1d,conv2d, etc., as opposed to one masterconvop - I think starting with conv1d first would be more effective. Perhaps I can create a draft PR so that I can receive feedback before expanding the scope for larger dimensions
- bf16/fp16 inputs with FP32 accumulation. FP32 inputs via TF32 on tensor cores to match
matmul.py - NCHW layout
- Benchmark against
F.convNd(cuDNN)
Questions:
- Are there any internal blockers or overlapping work not yet reflected in the repository that I should be aware of?
- Is an NHCW eventually needed or is NCHW sufficient?
- I am currently using an RTX 5060 Ti, meaning that if I conduct performance profiling before making a PR, my numbers likely won't be as decisive compared to a B200 card. Is that ok?
Any additional tips/help/feedback would be much appreciated. Thank you! :D
- Dominant language
- Python
- Stars
- 834
- Forks
- 92
- Avg merge
- 8d 11h
- Merged PRs (30d)
- 8
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from NVIDIA/TileGym
-
Difficulty 5/5 Over a week Newbie friendliness 12/100
Maintainers usually reply within 8 days
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
NVIDIA/TileGym#210 · 1 comment ·
Maintainers usually reply within 8 days
-
Difficulty 5/5 Over a week Newbie friendliness 25/100
NVIDIA/TileGym#191 · 1 comment ·
Maintainers usually reply within 8 days
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
NVIDIA/TileGym#190 · 2 comments ·
Maintainers usually reply within 8 days
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
NVIDIA/TileGym#169 · 5 comments · 1 reaction ·
Maintainers usually reply within 8 days
Similar issues
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 69/100
jejjohnson/gaussx#752 ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 85/100
521xueweihan/HelloGitHub#4270 ·
-
enhancement owner: den-haag
Difficulty 2/5 1-3 hours Newbie friendliness 67/100
Maintainers usually reply within 6 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
ok-oldking/ok-wuthering-waves#1828 ·
Maintainers usually reply within 1 day
-
lesson-submission pending-review
Difficulty 1/5 Under an hour Newbie friendliness 65/100
Ikalus1988/MisakaNet#4512 ·
Maintainers usually reply within 1 day