Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ROCm backend for AMDGPU? #2443

Closed
masahi opened this issue Oct 15, 2017 · 2 comments
Closed

ROCm backend for AMDGPU? #2443

masahi opened this issue Oct 15, 2017 · 2 comments

Comments

@masahi
Copy link
Contributor

masahi commented Oct 15, 2017

Hi, do you have any plan to support ROCm backend for AMDGPU? (rocm is CUDA equivalent of AMD)
Or, are you interested in PR?

It can enable an assembly level optimizations that are not possible with OpenCL backend.

I've been involved with rocm backend development for TVM, which is basically Halide tailored for deep learning inference. Their rocm backend compiles how level IR in python to optimized gpu code using LLVM's AMDGPU backend.

Although their backend is still very much preliminary (the runtime was fixed just week and special math function support is still in progress), the performance of generated code is quite descent: Without AMD-specific optimization, their sgemm kernel already achieves 5200 GFLOPs for a 8 TFLOPs card (see here) and 7740 GFLOPs for a 12.5 TFLOPs card. Their HWCW layout convolution kernel already achieves performance on par with their OpenCL backend.

My real passion is in imaging, or visual computing in general (and not in deep learning per se), so I'd love to see rocm support in Halide as well. Please note that I don't work for AMD and have nothing to do with it. I just like rocm's open ecosystem over NV platform.

Thanks

@abadams
Copy link
Member

abadams commented Oct 15, 2017

We have no immediate plans to support it, but would welcome a PR. Seems like it would be very similar to our cuda backend.

@masahi
Copy link
Contributor Author

masahi commented Oct 15, 2017

Yes, Halide already has NVPTX backend and TVM has rocm backend. I think I can do this.
If I make it, I'll open a PR.

Thanks

@masahi masahi closed this as completed Oct 15, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants