Closed dmcdougall closed 9 months ago
@dmcdougall will this fix the warnings regarding header location, and thus allow us to switch the ROCm CI target to use STRICT
builds?
It'll likely fix the warnings regarding header location. Switching to STRICT
would need that there are no other warnings. I don't remember if we do or do not trigger compiler warnings in other parts of the codebase.
@dmcdougall there is a warning from a ROCm header, which is unexpected:
/opt/rocm-5.5.0/include/rocrand/rocrand_common.h:75:6: warning: "Disabled inline asm, because the build target does not support it." [-W#warnings]
#warning "Disabled inline asm, because the build target does not support it."
Are ROCm headers not included as system headers, which should suppress such warnings?
I don't know why we're warning there at all, to be honest. It's not like we can expect the user to do anything meaningful if we don't generate inline assembly somewhere inside of rocrand for a specific hardware architecture.
Fortunately, it looks like the warning got taken away in 5.6: https://github.com/ROCmSoftwarePlatform/rocRAND/blob/release/rocm-rel-5.6/library/include/rocrand/rocrand_common.h#L69-L72
That preprocessor logic looks strange to me for other reasons, though. I'll reach out to the rocrand folks to follow up on that.
These header files are going to move in a future ROCm release, so we're just preparing for that change here. These new locations have been available for several ROCm releases already, so this shouldn't be a disruptive change.