Hello, I am a beginner and I met some problems when running test case.
I’m trying to set up a configuration with GYRE_PISCES (TOP wasn’t compiled for speed).
I encounter this problem. I think it is related with the initialization of the NEMO.
Does anyone know how to fix it?
Program received signal SIGSEGV: Segmentation fault - invalid memory reference.
Backtrace for this error:
#0 0x7f7efb9e3d21 in ???
#1 0x7f7efb9e2ef5 in ???
#2 0x7f7efb68820f in ???
#3 0x7f7efbcf732b in ???
#4 0x55c4fcacb1ff in ???
#5 0x55c4fc6c0736 in ???
#6 0x55c4fc88830e in ???
#7 0x55c4fc48a7ac in ???
#8 0x55c4fbe2fa0c in __nemogcm_MOD_nemo_init
at /media/cmlws/Data1/[user]/NEMO/r4.0.6/cfgs/GYRE_testing/BLD/ppsrc/nemo/nemogcm.f90:269
#9 0x55c4fbe329fd in __nemogcm_MOD_nemo_gcm
at /media/cmlws/Data1/[user]/NEMO/r4.0.6/cfgs/GYRE_testing/BLD/ppsrc/nemo/nemogcm.f90:165
#10 0x55c4fbe2df61 in nemo
at /media/cmlws/Data1/[user]/NEMO/r4.0.6/cfgs/GYRE_testing/WORK/nemo.f90:18
#11 0x55c4fbe2df9a in main
at /media/cmlws/Data1/[user]/NEMO/r4.0.6/cfgs/GYRE_testing/WORK/nemo.f90:11
===================================================================================
= BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
= PID 1671418 RUNNING AT cmlws
= EXIT CODE: 139
= CLEANING UP REMAINING PROCESSES
= YOU CAN IGNORE THE BELOW CLEANUP MESSAGES
===================================================================================
YOUR APPLICATION TERMINATED WITH THE EXIT STRING: Segmentation fault (signal 11)
This typically refers to a problem with your application.
Please see the FAQ page for debugging suggestions
Did you have a look at ocean.output? Do you see the E R R O R flag?
What is the contents of the line 269 of …/r4.0.6/cfgs/GYRE_testing/BLD/ppsrc/nemo/nemogcm.f90 ?
Very strange…
The error appears at the early beginning at the simulation. almost nothing has been done. It looks like the code was not properly compiled. lk_oasis should be defined and initialized to .false. in …/r4.0.6/cfgs/GYRE_testing/BLD/ppsrc/nemo/sbc_oce.f90. Do you see this line:
Thanks to your comment, I rechecked the compiled code.
I was suspicious of installation of xios, so I reinstalled xios, the segment fault error was passed.
I think the xios and NEMO weren’t configured to be consistent with the compilers.
Thanks for your help
I think your code was not properly compiled.
As I mentioned above, I reinstalled XIOS, the error was passed.
If the code stops before running, I check that XIOS is installed properly, the library paths of NEMO is set correctly. It is also necessary to compile the netcdf and hdf libraries with the same version of the MPI implementation that both NEMO and XIOS have been compiled and linked with.
Thank you for your answer. All parts of puzzle with nemo segmentation fault should be accomplished soon)
Btw, the reinstallation of XIOS required full nemo reinstallation (recompilation) or it’s a separate process that does not affect the other structure?
Greetings all.
I ran successfully the ORCA2_SAS_ICE configuration (followed by ARC36 config manual).
However, I have a segmentation fault every time when I run ./nemo from a new configuration directory.
What I’ve done:
I’ve chosen the ORCA2_ICE_PISCES, because i need ocean and ice dynamics together
Tried to compile with different CPP KEYS: key_oce, key_mpi2 etc
Copied all necessary files in EXP00 folder (domain_cfg.nc, forcing, initial etc.)
Ran ./nemo with command
$ mpirun -n '26' ./nemo
Segmentation fault
The screenshots are attached here for better understanding. Hoping for your help to newbie in NEMO modelling.
Please suggest the ways to find an error, is it in CPP KEYS issue? Or it’s a gfortran compiler issue, maybe there are some special ways - how to compile ICE_PISCES to run nemo successfully?
Kind regards!
Thank you for reply. Unfortunately, I used 26 processors in previous experiment (ORCA_SAS_ICE) - everything worked smooth and I had some output at least. However, when i decide to build ocean+ice config (ORCA_ICE_PISCES) - i got this issue.
I started to think that it might be a structure problem, for example in namelists. What about namelist_cfg and namelist_ref, should they be similar (i mean all inputs)?
namelist_cfg modifies namelist_ref basically, so the purpose is that they are not the same: one uses ref for 95% of inputs let’s say, and then 5% is modified by cfg.
It might be that SAS_ICE uses a lot less memory than ICE_PISCES. Can you try to run ORCA_ICE without PISCES to check ?
Sure, it will be more productive. Appreciate your help. Here is my email: civilseagull@gmail.com, type me smth there and ill share a link for zoom if you have time
There is a problem still exists. Even when I recompiled ORCA2_ICE_PISCES. However, test case of this ref. config is also crushing with segmentation fault.
Possibly, it’s a problem related to MPI settings, will be grateful for any instruments for MPI diagnostics or some steps to examine the ./nemo run.