NERSCPowering Scientific Discovery Since 1974

Programming on Franklin

Compiling Codes on Franklin

Cray provides a convenient set of wrapper commands which should be used in almost all cases for compiling and linking parallel programs. Invoking the wrappers will automatically link codes with the MPI libraries and other Cray system software libraries. All the MPI and Cray system include directories are also transparently imported. This page shows examples on how to compile codes on Franklin and Hopper. Read More »

Combining OpenMP and MPI

Combining MPI and OpenMP is becoming a more common practice among NERSC users. While the performance of hybrid MPI/OpenMP codes may not be substantially different than pure MPI codes, using OpenMP can significantly reduce memory usage for some applications. This page describes how to combine MPI and OpenMP on the Hopper and Franklin systems. Read More »

CNL Programming Considerations on Franklin

Franklin programming considerations for: glibc functions, page size, IO and timing support. Shared libraries are not supported on Franklin. Read More »

Using Math Libraries LibSci and ACML

Cray's Scientific Library package LibSci includes BLAS, LAPACK, ScaLAPACK, BLACS and SuperLU. It is automatically linked to your application when the Cray compiler wrappers are used. The ACML library is also supported on Hopper and Franklin. Read More »