mlx icon indicating copy to clipboard operation
mlx copied to clipboard

[Feature Request] ConvTranspose2D

Open Viditagarwal7479 opened this issue 2 years ago • 3 comments

PyTorch Navie Implementation: https://github.com/pytorch/pytorch/blob/main/aten/src/ATen/native/NaiveConvolutionTranspose2d.cpp PyTorch Navie Cuda Implementation: https://github.com/pytorch/pytorch/blob/main/aten/src/ATen/native/cuda/NaiveConvolutionTranspose2d.cu I guess so this is the metal implementation of Conv Tranpose in PyTorch: https://github.com/pytorch/pytorch/blob/015bd0e0a189f929e469c6bc75fe1541c18a014d/aten/src/ATen/native/mps/operations/Convolution.mm#L709

Viditagarwal7479 avatar Dec 23 '23 17:12 Viditagarwal7479

I can take this up @awni. Let me know if I can go ahead with the implementation of this feature request

vishal-14069 avatar Jan 27 '24 18:01 vishal-14069

Wow that would be amazing! Are you comfortable writing Metal / kernels on the GPU?

Just to be sure, it's a pretty big task, if you haven't done GPU programming, I would start with something a bit simpler.

But if you are still interested, I will assign it to you, let me know!

awni avatar Jan 27 '24 18:01 awni

I am new to GPU programming and I'm skilling up on Metal, but I'd love to collaborate on this.

I actually thought about implementing ConvTranpose2D feature in python, but I just realized that it's better to implement it using Metal first and then python. Thanks for clarifying.

vishal-14069 avatar Jan 27 '24 18:01 vishal-14069