This is an archive of the discontinued LLVM Phabricator instance.

[OpenMP] Define named constants for interop's foreign runtime ID
ClosedPublic

Authored by hbae on May 20 2021, 4:09 PM.

Details

Summary

Also added missing Fortran definitions for interop support.

Diff Detail

Event Timeline

hbae created this revision.May 20 2021, 4:09 PM
hbae requested review of this revision.May 20 2021, 4:09 PM
openmp/runtime/src/include/omp.h.var
224

Should the first parameter type be omp_interop_t?

hbae updated this revision to Diff 348978.Jun 1 2021, 8:13 AM

Fixed incorrect parameter type.

hbae marked an inline comment as done.Jun 1 2021, 8:14 AM

Does anyone have a reference for what we're supposed to do with one of these things?

Amdgpu openmp isn't implemented in terms of any of those (it is a layer on HSA), but it's possible we can cobble together enough of a HIP or opencl 'instance' on the fly to satisfy the interface. I can't find any information on what that interface is meant to be though.

Does anyone have a reference for what we're supposed to do with one of these things?

Amdgpu openmp isn't implemented in terms of any of those (it is a layer on HSA), but it's possible we can cobble together enough of a HIP or opencl 'instance' on the fly to satisfy the interface. I can't find any information on what that interface is meant to be though.

It's pretty much up to the impl what this means. The extra document lists what the user should expect for those foreign runtimes. You can ask them to add HSA without problems, defining what the results of various calls should be (in terms of type).

Also @sriharikrishna is working on getting the early prototype for interop up and running. We'll get some patches hopefully soon. The plugins can then implement their own getters eventually.

This revision is now accepted and ready to land.Jun 1 2021, 10:13 AM