Skip to content

Forward Convolution Kernel#195

Description

@m9ssah

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:

  1. 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 master conv op
  2. 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
  3. bf16/fp16 inputs with FP32 accumulation. FP32 inputs via TF32 on tensor cores to match matmul.py
  4. NCHW layout
  5. Benchmark against F.convNd (cuDNN)

Questions:

  1. Are there any internal blockers or overlapping work not yet reflected in the repository that I should be aware of?
  2. Is an NHCW eventually needed or is NCHW sufficient?
  3. 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

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions