Skip to content

Update default compiler installation to GCC 6.1.0

Compare
Choose a tag to compare
@rouson rouson released this 19 May 04:49
1.6.0
7724f51

Build Status

New in this release for the install.sh automatic installation script:

🚧 GCC 6.1.0 is the default minimum requirement to avoid an automatic gfortran download, build, & installation.

🔨 GCC 6.1.0 fixes an issue that required disabling optimization (with -O0) when compiling OpenCoarrays. (GCC 5.4.0 will also contain the fix when 5.4.0 is released.)

🚀 GCC 6.1.0 + OpenCoarrays 1.6.0 are the first releases supporting Fortran 2015 events (event_type, event_post, event_wait, and event_query). Much like Fortran 2008 coarrays offer one-sided data communication -- with concomitant performance enhancements when mapped onto interconnects with special hardware support such as Infiniband remote direct memory access (RDMA) -- Fortran 2015 events offer a one-sided image-ordering mechanism that likewise enhances the performance of synchronizing execution across images. (Note: GCC 5.4.0, which will release chronologically subsequent to 6.1.0, will also offer event support when used in conjunction with OpenCoarrays 1.6.0 or later.)

🔨 GCC 6.1.0 fixes issue #160. (GCC 5.4.0 will also contain the fix when 5.4.0 is released.)

🔫 Users can force the use of a given compiler (or compiler version) by using --with-* arguments:

   ./install.sh \
   --with-fortran <fortran-compiler-path> --with-c <c-compiler-path> --with-cxx <C++-compiler-path>

or by using the corresponding -f, -c, and -C arguments, respectively.

🐚 install.sh writes setup.csh for C-shell users to source in order to set up their environment for using OpenCoarrays.

🌱 Improved handling of individual prerequisite package installation:

   ./install.sh --package mpich --install-dir <desired-installation-path>

🐶 install.sh replaces wget and ftp with curl for fetching packages online in OS X.

Known issue:

Multi-threaded GCC builds fail (e.g., ./install.sh -p gcc -j 2). This is a known issue with GCC and can be resolved by restarting with "-j 1" or by omitting the -j argument. It might be required that also delete the prerequisites/builds/gcc directory, if it exists, before restarting.