nimrod_2022
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
nimrod_2022 [2022/09/14 06:53] – simonw7 | nimrod_2022 [2022/09/14 08:29] (current) – simonw7 | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== NIMROD 2022 ====== | ====== NIMROD 2022 ====== | ||
- | The method for getting NIMROD running at NERSC has changed slightly as the default version of some modules on NERSC have changed. This wiki will give instructions to help set up the most recent version of nimdevel and include some tips to help compile older versions of NIMROD. This page will run through the steps necessary to compile the code at NERSC. | + | The method for getting NIMROD running at NERSC has changed slightly as the default version of some modules on NERSC have changed. This wiki will give instructions to help set up the most recent version of nimdevel and include some tips to help compile older versions of NIMROD. This page will run through the steps necessary to compile the code at NERSC. |
+ | |||
===== Accessing the newest version of nimdevel | ===== Accessing the newest version of nimdevel | ||
Line 14: | Line 15: | ||
svn co --username < | svn co --username < | ||
- | |||
- | | ||
- | | ||
- | | ||
- | |||
- | |||
- | |||
===== Compiling the newest version of NIMDEVEL at NERSC ===== | ===== Compiling the newest version of NIMDEVEL at NERSC ===== | ||
Line 42: | Line 36: | ||
. <script name> | . <script name> | ||
- | Now that the necessary modules have been loaded the code can be compiled. There are two main methods of doing this at NERSC. The first is to use the mknimall.sh script provided if nimall is checked out. Alternatively, | + | Now that the necessary modules have been loaded the code can be compiled. There are two main methods of doing this at NERSC. The first is to use the mknimall.sh script provided if nimall is checked out. Alternatively, |
- | ==== mknimall | + | ==== Mknimall |
| | ||
Line 58: | Line 52: | ||
and check the executables are there. /par/bin will contain the executables for the parallel build and /ser/bin will contain the executables for the serial build of Nimrod. | and check the executables are there. /par/bin will contain the executables for the parallel build and /ser/bin will contain the executables for the serial build of Nimrod. | ||
- | ==== | + | ==== |
Alternatively, | Alternatively, | ||
Line 74: | Line 68: | ||
**Step 3:** Modify the config scripts. The config scripts will need modifying to correctly build the code. Two lines will need to be edited so that the source and install directories are changed to the correct locations in the user's directory. The lines to change should be modified to read : | **Step 3:** Modify the config scripts. The config scripts will need modifying to correctly build the code. Two lines will need to be edited so that the source and install directories are changed to the correct locations in the user's directory. The lines to change should be modified to read : | ||
- | DCMAKE_INSTALL_PREFIX: | + | < |
- | | + | -DCMAKE_INSTALL_PREFIX: |
+ | -DSUPRA_SEARCH_PATH: | ||
+ | </code> | ||
After this has been done, run the config scripts from the corresponding directory and then use the make install command. This should successfully make the serial and parallel versions of nimdevel. | After this has been done, run the config scripts from the corresponding directory and then use the make install command. This should successfully make the serial and parallel versions of nimdevel. | ||
| | ||
===== Compiling older versions at NERSC ===== | ===== Compiling older versions at NERSC ===== | ||
+ | |||
+ | Some older versions of Nimrod ( such as 3.2.4) may contain a README that instructs the user to compile the code slightly differently . When following these instructions the user may run into some errors when compiling. One common issue is getting a type mismatch error when calling the mpi_bcast routine. This is due to these version of nimrod being created and compiled using an older version of gcc. To fix this issue, add the fortran compile flag: | ||
+ | |||
+ | < | ||
+ | -fallow-argument-mismatch | ||
+ | </ | ||
+ | |||
+ | If using cmake to compile, this can be done by adding the following line into the CMakeLists.txt file: | ||
+ | |||
+ | set(CMAKE_Fortran_FLAGS " | ||
+ | |||
+ | |||
+ | ===== | ||
+ | |||
+ | One method of easily modifying the code one NERSC is to use Juypter notebook. Further instructions can be found here: https:// | ||
+ | If the source code is modified, the user does not need to repeat all of the steps listed above for compiling the code. Instead the user can move to the build directory and use the make/make install command again. This will save time instead of rebuilding the entire code again. | ||
+ | |||
+ | |||
+ | |
nimrod_2022.1663160019.txt.gz · Last modified: 2022/09/14 06:53 by simonw7