Optimizaciones de compilación

Los nodos de computación de PROTEUS están compuestos por una variedad de arquitecturas de CPU. Hay compiladores para C, C++ y Fortran disponibles a través del sistema de módulos. Estos compiladores son los de Intel, The Portland Group, LLVM and GNU.  Due to the default behavior of some compilers, it is possible when using optimization options for compatibility issues to occur where programs compiled on the SCC login nodes cannot run on some of the available SCC compute nodes.  The documentation in this section provides recommendations for optimization flags, how to specialize program compilation for particular CPU architectures, compiling and optimization options to avoid compatibility issues, and descriptions of default compiler behavior.

The easiest way to avoid issues with compiler optimizations and compute node architectures is to take advantage of available libraries on the SCC for numerically intensive computations. The ones listed here are all capable of auto-detecting the CPU architecture in use at runtime and then selecting an optimized set of routines. Unless the software application requires a specific version it is recommended that the most recent module be selected.