5 ms·
Use xlc once. I'm done thanks.
by alttab 7y ago
Use xlc once. I'm done thanks.
- pjmlp 7y agoLast time I checked it was one of the compilers mostly used in HPC. For example, https://hpc.mines.edu/using-xl-compilers/ https://hpc.mines.edu/using-xl-compilers/
- arghwhat 7y agoWhy in the world would you use xlC, unless you're masochistic enough to target IBM-AIX? PowerPC is a very well supported architecture, supported by common compilers and operating systems.
- StillBored 7y agoFor the same reason people use icc, it generates faster code. A couple of years ago I compiled part of the application I was building for power8. The perf was pretty bad, so I rebuilt parts of it with xlc, and it was literally over 2x faster. That made the machine competitive/faster than the x86's we were using. Now GCC/clang have bee getting better and the gap with icc is nearly closed. I'm not sure how much of that applies to xlc, but i'm betting there hasn't been nearly as much work optimizing for POWER as there has been for arm and x86.
- alttab 7y agoAt one point in my career I was masochistic enough to work at IBM in the AIX power division. We were working on sub-components of DB2 where speed was critical to the point where production configurations took advantage of uDAPL as well. Needless to say I quit...
- classichasclass 7y agoSo use gcc or clang.
- lsllc 7y agoIBM are switching away from xlC in their compiler development to Clang so they can focus on the LLVM backend for POWER and leverage the Clang frontend to support the newer C/C++ standards (for both AIX and POWER Linux).
- apaprocki 7y agoIBM is working on the beginnings to get LLVM working, but it will require lots of work and it only just began. xlC just added a second front-end (Clang's) in version 16, but it still uses their back-end.
- lsllc 7y agoLLVM has supported POWER for years, I believe most of what needs to be done is to make LLVM support XCOFF binaries for AIX.
- apaprocki 7y agoShould have said I was specifically responding to POWER/AIX. Yes, the critical missing piece is XCOFF support in the back-end, but both LLVM and Clang required patches to even build the front-end on AIX. (I submitted a few of them.)