-
Notifications
You must be signed in to change notification settings - Fork 574
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
[Compiler] Rename compiler ROCM target to HIP #18477
base: main
Are you sure you want to change the base?
Conversation
Signed-off-by: nithinsubbiah <nithinsubbiah@gmail.com>
IIRC we didn't want to do this? (I think Lei told me ROCM and HIP were independent? did someone change their mind? :) |
They are indeed independent. We wanted to be consistent with the backend names and thus I started working on it. But happy to hear thoughts on moving forward |
Mostly just thinking about HSA: it will be using the same codegen pipeline but not targeting HIP, so if there's a better name for what it is that'd be ideal ("ROCDL" may have been what Lei mentioned before). There will be a HIP |
I'm not sure there's a better answer. Both rocm and hip names refer to software stacked above. If we were naming from scratch, we would name like llvm: "amdgpu". From that perspective, I would rename the runtime driver "amdgpu-hip". That's what I call it in shortfin fwiw. |
Ok you all type too fast. +1 to amdgpu-hip, or maybe amdgpu-llvm. Either way it would be nice to switch away from "rocm." |
FWIW, the bespoke clang is called hipcc too |
AMDGPU may work, but ROCm as the umbrella also makes sense (HIP and ROCr/HSA are both under the ROCm umbrella) and is equivalent to CUDA. |
(basically, I don't want inconsistency and I don't want the compiler side that targets multiple runtime implementations named after a particular runtime implementation) |
AMDGPU alone is also the ultimate backend for spirv/vulkan with amdvlk. If they ever implement offline shader compilation, we will have a name collision with that. |
IIUC So maybe |
amdgpu is the name of the backend, the two targets are |
IMO hip and |
reminder: hip != hsa, and we'll be using the same thing for hsa - in my dreams we end up deleting our hip HAL - hip is problematic :) (the name here is for us - it doesn't have to match LLVM or anyone else - it's just what we call our target) |
OK, I give up, naming proves hard again 🙃 |
yeah, we're in the ROC* name playground that is certifiably inscrutable - there's no good names :P |
What if we go with Unless someone has a strong reason to not have |
Also tangential question, could we have aliased names for target backends? e.g. if I put in |
My only problem with |
rocm == cuda (effectively) - an umbrella term for the entire suite of libraries/tools/languages/etc |
I think the stem can defensively be amdgpu or rocm. I prefer the first as it is more descriptive of a physical thing that will always be that thing. |
the llvm command line flag library supports aliases |
As a follow-up to #17710, this patch renames the compiler target backend from
ROCM
toHIP
to be consistent with driver.User-facing changes:
IREE_TARGET_BACKEND_ROCM
toIREE_TARGET_BACKEND_HIP
iree-hal-target-backends=rocm
toiree-hal-target-backends=hip