[FLASH-USERS] Problem about OpenMPI

Klaus Weide klaus at flash.uchicago.edu
Thu Jan 25 13:35:30 EST 2018


On Thu, 25 Jan 2018, you wrote:

> I am trying to solve a HEDP problem, but I got errors after I type "make" :
.....

> Then I tried to add "-lirc" after "LIB_HYPRE" line of "Makefile.h". It will "make" successfully, 

Not sure what exactly was going on there, but apparently FLASH needs to be 
compiled using some of the same flags or libraries that were used on to 
compile the Hypre library.

> but I get new errors when I run the simulation:
> 
> [u6a608 at octopus01 ConeCylinder]$ mpirun -np 20 ./flash4
>  RuntimeParameters_read:  ignoring unknown parameter "rt_useMGD"...
>  RuntimeParameters_read:  ignoring unknown parameter "rt_mgdNumGroups"...
>  RuntimeParameters_read:  ignoring unknown parameter "rt_mgdBounds_1"...
>  RuntimeParameters_read:  ignoring unknown parameter "rt_mgdBounds_2"...
>  RuntimeParameters_read:  ignoring unknown parameter "rt_mgdBounds_3"...
>  RuntimeParameters_read:  ignoring unknown parameter "rt_mgdBounds_4"...
>  RuntimeParameters_read:  ignoring unknown parameter "rt_mgdBounds_5"...
>  RuntimeParameters_read:  ignoring unknown parameter "rt_mgdBounds_6"...
>  RuntimeParameters_read:  ignoring unknown parameter "rt_mgdBounds_7"...
>  RuntimeParameters_read:  ignoring unknown parameter "rt_mgdFlMode"...
>  RuntimeParameters_read:  ignoring unknown parameter "rt_mgdFlCoef"...
>  RuntimeParameters_read:  ignoring unknown parameter "rt_mgdXlBoundaryType"...
>  RuntimeParameters_read:  ignoring unknown parameter "rt_mgdXrBoundaryType"...
>  RuntimeParameters_read:  ignoring unknown parameter "rt_mgdYlBoundaryType"...
>  RuntimeParameters_read:  ignoring unknown parameter "rt_mgdYrBoundaryType"...
>  RuntimeParameters_read:  ignoring unknown parameter "rt_mgdZlBoundaryType"...
>  RuntimeParameters_read:  ignoring unknown parameter "rt_mgdZrBoundaryType"...
>  set: Can not change name with constant attribute:useOpacity                                                                      
>   
>  Driver_abort called. See log file for details.
>  Error message is ERROR: unable to change constant name
>  Calling MPI_Abort() for immediate shutdown!
>  
>  Logfile_open:  Error: cannot open log file; io_status =           29
>  Logfile_open:  Error: cannot open log file; io_status =           29
> --------------------------------------------------------------------------
> MPI_ABORT was invoked on rank 0 in communicator MPI_COMM_WORLD
> with errorcode 1.
> 
> 
> NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes.
> You may or may not see output from other processes, depending on
> exactly when Open MPI kills them.
> --------------------------------------------------------------------------
> [u6a608 at octopus01 ConeCylinder]$ 
> 
> However their is no log file at all. Any suggestions?

This is FLASH helpfully refusing to run in the following situation:

 * You are explicitly requesting "useOpacity = .TRUE." in you parfile (flash.par)
 * However, FLASH has not been configured and compiled to actually include
   an implementation of the Opacity unit.
   In that case, the runtime parameter "useOpacity" is still recognized by
   FLASH, but it is marked as CONSTANT with value FALSE.  This is done
   exactly with the intention that requesting "useOpacity = .TRUE." should
   result in an error.

>From this, and from the other warning messages you quoted, it appears that
your configuration is missing at least the following:
   REQUIRES physics/materialProperties/Opacity
   REQUIRES physics/RadTrans

 * You can add them to your simulation's Config file, or add them to your 
   setup command line with -unit=... arguments.
 * You can, and probably need to, use more specific strings to request
   a specific implementation; like
   physics/materialProperties/Opacity/OpacityMain/Multispecies, etc.
 * You are probably missing some other arguments from the setup command
   that are normally used to configure FLASH for HEDP, which may
   include +mtmmmt, +uhd3t or +usm3t, +mgd, an d various setup variables;
   follow example setup command(s) in the User's Guide.


The messages about log files are a bit confusing; they are caused by FLASH 
trying to write error messages to a log file before the log file has been 
properly established. This comes about because in this case, errors are 
detected very early at program initialization when runtime parameters are 
first read. This does not result in the loss of any messages, since they 
are still shown on standard output.

Klaus



More information about the flash-users mailing list