-
Notifications
You must be signed in to change notification settings - Fork 47
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
Additional backends #26
Comments
With the announcement that OLCF Frontier will be AMD CPU/GPU, we should try to get it into our workflow. We can use HIP (an open source CUDA-like model that can compile to CUDA and ROCm) which can be almost automatically produced from CUDA (using hipify-clang) or OpenMP-5 offload as on-node programming models. Note that HIP does not currently support run-time compilation. HIP nominally compiles to CUDA with negligible overhead, but the toolchain needs to be installed to do so. |
OCCA:HIP supports run-time compilation. |
Our OCCA backend is in serious need of a performance overhaul, so it would be great if we can also include OCCA:HIP. |
Yes, I don't think anything special needs to be done for /gpu/occa/hip versus /gpu/occa/cuda, though the OCCA backend needs attention. My comment on run-time compilation was with regard to @YohannDudouit's native CUDA implementation. I'm also curious about observed differences in performance characteristics between the Radeon Instinct and V100. |
You should follow up with Noel Chalmers. I believe he has run libP experiments with the Radeon Instinct. |
Thanks. @noelchalmers, can you share any experiments? |
Hi everyone. I'll try and chip in what I know for some of the points in this thread:
|
Thanks, @noelchalmers. Are there any public clouds with Radeon Instinct (for continuous integration, etc.). |
I just realized that you were referring to NVRTC when you mentioned runtime compilation. No, HIP currently doesn't support any nvrtc* API calls. I'm not aware of any plans to add these features, but I will ask around. What HIP does support is loading compiled binaries using hipModuleLoad, which is analogous to cuModuleLoad, and finding/launching kernels from that binary. I don't know of any public clouds I can point to using MI-25 or MI-60s yet. Maybe for some CI tests you could try compiling on some Vegas in a gpueater session? Not ideal, certainly. |
Thanks. It looks like GPU Eater doesn't support docker-machine or Kubernetes so CI integration would be custom and/or not autoscaling, but it's something, so thanks. |
Yet another C++ layer, this one providing single source for CPU, OpenCL, and HIP/CUDA. https://github.com/illuhad/hipSYCL |
While I still don't see it on the docs website, |
I'll close this open-ended issue. There is an improved occa backend coming in #1043. I think at this point we can make new issues for specific backend requests. |
The text was updated successfully, but these errors were encountered: