Someday support IBM XL compilers

Issue #251 new
Paul Hargrove created an issue

This issue is being reported as a place to keep records.
It is NOT currently a project priority to support the IBM XL compilers.

With the merge of PR#96 for PGI support on PPC64, I find we are just one minor issue (#248) away from being able to compile UPC++ with the IBM XL compilers on Summit.

I have now attempted a full CI run on Summit. Below are my notes recording the status.
The short version is that we appear to be far from seeing this as a supported compiler family.


UPC++ at b5dfa82a
Summit compiler environment module xl/16.1.1-3

At compile time I see numerous warnings. Some are obviously harmless, such as unknown Pragmas and unused variable warnings (for ones used only in assertions). At lease one is just a straight-forward "cleanup" (issue #247).

All the tests in CI (excluding known issue234) compile except for the Open MP tests with -g. However, that appears to be a GASNet issue (bug 3998) in which an --enable-debug build is incompatible with -fopenmp.

There a numerous failures at runtime including timeouts, SEGVs, GASNet error messages regarding out-of-range ranks in AM injections, and UPC++ assertion failures. I am not making any attempt to record them here/now.
It is worth noting that there were NO failures from the GASNet tests in the same CI run.

Comments (2)

  1. Paul Hargrove reporter

    The blog post linked above has no links to join the beta program, even after I authenticate with my IBM Community ID. So, I suspect that specific beta program may have ended.

    The only download link from there is for the Apr 2019 Community Edition compilers we are already using on our OpenPower-8 VM.

    However, based on Bug 3741 (Mar 2018) in which we found GASNet to identify the IBM compilers in SummitDev as Clang, I am pretty sure we've been using "IBM XL based on LLVM" for roughly 3 years now.

    I also cannot agree fully with "no release to their production XL compiler in over 2 years", since Summit's newest version is 16.1.1.10 released 11 Mar 2021 (3 weeks old). However, it is true that that is "Fix 10" to a 16.1.1 compiler released in Nov 2019. So, I guess it depends what you count as a release.

  2. Log in to comment