Linked by Thom Holwerda on Wed 7th Nov 2012 23:50 UTC, submitted by Joel Dahl
FreeBSD "I've made clang the default on x86 systems. There will probably be a few bumps as we work out the last kinks including a ABI issue for i386 system libraries, but the transition is expected to be fairly smooth for most users."
Thread beginning with comment 541401
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE[2]: why?
by zio_tom78 on Thu 8th Nov 2012 09:10 UTC in reply to "RE: why?"
zio_tom78
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.

Reply Parent Score: 2

RE[3]: why?
by kwan_e on Thu 8th Nov 2012 09:26 in reply to "RE[2]: why?"
kwan_e Member since:
2007-02-18

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.

Reply Parent Score: 2

RE[4]: why?
by ideasman42 on Thu 8th Nov 2012 09:49 in reply to "RE[3]: why?"
ideasman42 Member since:
2007-07-20

While nifty, looks like a different tool - openmp is a standard that works across gcc/intel/ibm/oricle/msvc... compilers.

And can be integrated with existing c/c++/fortran codebases.

Reply Parent Score: 2

RE[4]: why?
by zio_tom78 on Thu 8th Nov 2012 13:31 in reply to "RE[3]: why?"
zio_tom78 Member since:
2008-04-10

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

Reply Parent Score: 2

RE[3]: why?
by oskeladden on Thu 8th Nov 2012 16:56 in reply to "RE[2]: why?"
oskeladden Member since:
2009-08-05

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

Reply Parent Score: 1

RE[4]: why?
by zio_tom78 on Thu 8th Nov 2012 17:30 in reply to "RE[3]: why?"
zio_tom78 Member since:
2008-04-10

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.

Reply Parent Score: 2