Linked by Thom Holwerda on Wed 7th Nov 2012 23:50 UTC, submitted by Joel Dahl
Thread beginning with comment 541401
To view parent comment, click here.
To read all comments associated with this story, please click here.
To view parent comment, click here.
To read all comments associated with this story, please click here.
But the lack of support for OpenMP is a severe impediment for those like me that do HPC (I am working in a large astrophysical project, and our codes run on machines with 12 cores at least and take hours/days to complete!).
I don't know if this helps: http://root.cern.ch/drupal/content/cling
CERN does something with cling and clang and they do HPC stuff.
Thanks for the link. The site says that cling is an "interactive interpreter" for the C++ language, thus I figure it is something like "ipython" is for Python?
The concept is interesting, I've never heard of anything like it. But it's not clear to me how this could be used to compile some code that uses OpenMP.
CERN surely does HPC, but I bet their parallel codes were developed using MPI, which is a completely different technique and is supported by clang. Our codes rely both on MPI and OpenMP, and changing them to remove the dependency from the latter would be a huge (and useless) pain.
Edited 2012-11-08 13:33 UTC
By the way, this is the reason why I removed Mac OS X from my Macbook and replaced it with Ubuntu: to have a reasonably updated version of gcc instead of the very old one bundled with Lion.
I don't have much experience with OS X Lion, but couldn't you simply have installed a newer version of GCC? I've not used a Mac as my main work machine for a while, but it used to be possible on Snow Leopard using MacPorts with some tweaking. I certainly had GCC 4.5.x running with OpenMP 3.0 support on my Snow Leopard based machine (like you, I needed it for modelling).
Edited 2012-11-08 16:56 UTC
I don't have much experience with OS X Lion, but couldn't you simply have installed a newer version of GCC? I've not used a Mac as my main work machine for a while, but it used to be possible on Snow Leopard using MacPorts with some tweaking. I certainly had GCC 4.5.x running with OpenMP 3.0 support on my Snow Leopard based machine (like you, I needed it for modelling).
You're right, and in fact I know a few people that have gone through that path. However, for me installing GCC has proven to be extremely difficult. I used MacPorts for years, but I was dissatisfied because of a number of reasons and switched to Homebrew. Although Homebrew works like a charm, it does not provide the ability to install a new GCC. So I relied on the binaries that can be downloaded from this site:
http://hpc.sourceforge.net/
They provide precompiled binaries for the latest GCC. There are however several problems with these binaries as well (for instance, only C/C++/Fortran are included, while Gnat/Ada is left out; and in order to install them you have to run "tar -C / ...", so it is tricky if you want to keep different versions on your hard disk at the same time)
Compiling GCC from source produced a number of problems on my system. Don't know what went wrong, but I began to get a number of conflicts between the stdlibc++ provided by Apple's GCC 4.2.1 and the version I installed every time I tried to compile something.
So I switched to Ubuntu, and now I am extremely happy. GCC 4.7 is bundled with Quantal, and using apt-get I was able to install both gfortran and gnat in a few minutes.





Member since:
2008-04-10
I agree. Clang provides fantastically clear error messages, expecially when you use templates. But the lack of support for OpenMP is a severe impediment for those like me that do HPC (I am working in a large astrophysical project, and our codes run on machines with 12 cores at least and take hours/days to complete!).
By the way, this is the reason why I removed Mac OS X from my Macbook and replaced it with Ubuntu: to have a reasonably updated version of gcc instead of the very old one bundled with Lion.