Changing default compiler for Atlas from gcc47 to clang-3.3 on AVX capable machines

Ryan Schmidt ryandesign at macports.org
Wed Mar 6 07:22:55 PST 2013


On Mar 6, 2013, at 09:03, Vincent Habchi wrote:

>> But atlas also uses fortran, right? Is it more important for atlas to have better performance by compiling with clang, or to use fortran by compiling with gcc?
> 
> Atlas uses Fortran only to build the BLAS/Lapack fortran API. The Fortran compiler performance is irrelevant to the whole performance, and Atlas can also be built without Fortran (but, of course, you only get the C API).
> 
> The new Portfile clamps the optimization flag of gfortran to -sse4.2 in order to avoid AVX instruction generation by gfortran47 or above.

I think you're going to have to use your best judgement. Performance is not a factor in the ports I maintain, so I'm perfectly happy to let MacPorts pick a compiler, and as long as it runs at all, that's good enough for me, and I wouldn't want to subject the user to downloading or especially compiling another compiler just to build a port if I can avoid it. However, atlas seems to be a special case, and if performance is the most important thing for atlas, and clang achieves best performance, and if your users won't mind having (to wait for MacPorts) to install another compiler to get it, then go ahead and make clang-3.3 the default variant.




More information about the macports-dev mailing list