\exahype\ itself does not depend on Fortran but you may prefer to write parts of your \exahype\ code in Fortran. In this case, you obviously need an additional Fortran compiler. Typically, \texttt{gfortran} comes with \texttt{build-essential} package. If you want an Intel \texttt{ifort}, you need to install from source.
\exahype\ itself does not depend on Fortran but you may prefer to write parts of your \exahype\ code in Fortran. In this case, you obviously need an additional Fortran compiler. Typically, \texttt{gfortran} comes with \texttt{build-essential} package. If you want an Intel \texttt{ifort}, you need to install from source.
\exahype\ currently supports shared memory parallelisation through Intel’s Threading Building Blocks (TBB) or OpenMP. OpenMP support comes along with both Intel and GCC compilers. To check which version of OpenMP is supported by your GCC compiler you can type the following:
\exahype\ currently supports shared memory parallelisation through Intel’s Threading Building Blocks (TBB).
\begin{code}
TBB is open source and works both with GCC and Intel compilers. At least TBB 2017 is required. You can clone TBB from the official repository by typing the following into your terminal:
> echo |cpp -fopenmp -dM |grep -i open
\end{code}
You should get otuput similar to the one shown below:
\begin{code}
#define _OPENMP 201511
\end{code}
the numbers following \texttt{\_OPENMP} variable are in the following format \texttt{yyyymm}, where \texttt{yyyy} represents the year and \texttt{mm} the mont of the release. You can go to \url{https://www.openmp.org/specifications/} to discover the mapping between the date and the actual version of the standard.\\
\noindent
We recommend using the TBB variant, though. The reason for that is, that it is typically one step ahead of the OpenMP support. TBB is open source and works both with GCC and Intel compilers. At least TBB 2017 is required. You can clone TBB from the official repository by typing the following into your terminal:
\caption[Sketch (tikz): High-level overview of \exahype\ workflow]{High-level overview of \exahype\ workflow and files generated by the application. \label{fig:workflow}}
\caption[Sketch (tikz): High-level overview of \exahype\ workflow]{High-level overview of \exahype\ workflow and files generated by the application. \label{fig:workflow}}