ROCm / aomp

AOMP is an open source Clang/LLVM based compiler with added support for the OpenMP® API on Radeon™ GPUs. Use this repository for releases, issues, documentation, packaging, and examples.
https://github.com/ROCm/aomp
Apache License 2.0
206 stars 47 forks source link

When will flang-new be brought in ? General roadmap question about aomp wrt Fortran. #971

Open fluidnumerics-joe opened 4 months ago

fluidnumerics-joe commented 4 months ago

The support for fortran codes in general within ROCm is quite embarrassing.

A number of projects I've worked on for folks at Pawsey, in addition to some of our own projects ( e.g. https://github.com/fluidnumerics/SELF) , that use derived types with type bound procedures, inheritance, and polymorphic types simply don't compile with aomp (separate issues will be open soon) when gpu offloading via openmp is enabled.

It'd be helpful to have some clarification on some rather vague comments (from this issue : https://github.com/ROCm/aomp/issues/576#issuecomment-1639353102 ). Specifically

A: The legacy flang based on the PGI compiler has limited offloading support. So it is not considered production even though it is and has been distributed with ROCm. The production fortran will be the new llvm flang. We cannot discuss schedule here.

What is meant by "limited offloading support" ? When will ROCm actually have a production fortran compiler via llvm flang-new ?

To extend on this, what Fortran language standard will be fully supported ?

gregrodgers commented 4 months ago

Hi Joe, we are working very hard on flang-new. It is hard to make statements about the future here. It is obvious from upstream LLVM activity that a lot of work for flang-new is upstream. But it is not ready to switch from flang-legacy to flang-new.