firemodels / fds

Fire Dynamics Simulator
https://pages.nist.gov/fds-smv/
Other
651 stars 618 forks source link

Issue with FDS 6.8 linux binaries #11764

Closed johodges closed 1 year ago

johodges commented 1 year ago

Tried to install the new release on a linux cluster and ran into an issue. The shell file shows up as having windows line endings even though I copied it directly from the repo with wget. I am able to run dos2unix on the file to change the line endings but then the script does not install all the files, probably due to dos2unix replacing some of the binary data. Running the same process within WSL on my local machine has the same result.

I am able to compile the packaged source files and run on our cluster, so it looks like it is an issue with the bash wrapper. Are others having the same issue?

marcosvanella commented 1 year ago

Hi Jon. So, did you copy the installer FDS-6.8.0_SMV-6.8.0_lnx.sh and run

bash FDS-6.8.0_SMV-6.8.0_lnx.sh

? This is what I did in our cluster and installed without issues.

mnv@blaze mnv $ bash FDS-6.8.0_SMV-6.8.0_lnx.sh 

Installing FDS-6.8.0 and SMV-6.8.0 on Linux

Options:
  1) Press <Enter> to begin installation [default]
  2) Type "extract" to copy the installation files to:
     FDS-6.8.0_SMV-6.8.0_lnx.tar.gz

Options:
  Press 1 to install in /home/mnv/FDS/FDS6 [default]
  Press 2 to install in /opt/FDS/FDS6
  Press 3 to install in /usr/local/bin/FDS/FDS6
  Press 4 to install in /home/mnv/FDS/FDS-6.8.0_SMV-6.8.0
  Enter a directory path to install somewhere else
1

Installation directory: /home/mnv/FDS/FDS6
Proceed? (yes/no) yes

Installation beginning
The directory, /home/mnv/FDS/FDS6, already exists.
Do you wish to overwrite it? (yes/no) yes
The installation directory, /home/mnv/FDS/FDS6, has been created.

Copying FDS installation files to /home/mnv/FDS/FDS6
Copy complete.
Creating directory /home/mnv/FDS/FDS6/bin/modules
The installation directory, /home/mnv/FDS/FDS6/bin/modules, has been created.

-----------------------------------------------
*** To complete the installation:

1. Add the following lines to your startup file
   (usually /home/mnv/.bashrc).

source /home/mnv/FDS/FDS6/bin/FDS6VARS.sh 
source /home/mnv/FDS/FDS6/bin/SMV6VARS.sh 

or if you are using modules, add:

export MODULEPATH=/home/mnv/FDS/FDS6/bin/modules:$MODULEPATH
module load FDS6
module load SMV6

2. Log out and log back in so that the changes will take effect.
johodges commented 1 year ago

That's correct, I used that same process. Tried to install to the shared location as root as well as to my home directory. The script says that it runs to completion in both cases, but when I look at the installation directory not all files are there. Are you able to run from your installation?

gforney commented 1 year ago

Ill take a look.

On Tue, Apr 18, 2023, 5:31 PM johodges @.***> wrote:

That's correct, I used that same process. Tried to install to the shared location as root as well as to my home directory. The script says that it runs to completion in both cases, but when I look at the installation directory not all files are there. Are you able to run from your installation?

— Reply to this email directly, view it on GitHub https://github.com/firemodels/fds/issues/11764#issuecomment-1513817562, or unsubscribe https://github.com/notifications/unsubscribe-auth/AC6UCRQUPFTW6EB7EHX3CDDXB4BZ3ANCNFSM6AAAAAAXDF6G6Y . You are receiving this because you were assigned.Message ID: @.***>

marcosvanella commented 1 year ago

So, I added the source of FDSVARS.sh, SMVVARS.sh:

mnv@blaze mnv $ source /home/mnv/FDS/FDS6/bin/FDS6VARS.sh
mnv@blaze mnv $ source /home/mnv/FDS/FDS6/bin/SMV6VARS.sh

The go to the ~/FDS/FDS6/Examples/Pressure_Solver dir:

mnv@blaze Pressure_Solver $ which fds
~/FDS/FDS6/bin/fds
mnv@blaze Pressure_Solver $ which mpirun
~/FDS/FDS6/bin/INTEL/bin/mpirun
mnv@blaze Pressure_Solver $ mpirun -n 4 fds dancing_eddies_default.fds 
MPI startup(): Warning: I_MPI_PMI_LIBRARY will be ignored since the hydra process manager was found
MPI startup(): Warning: I_MPI_PMI_LIBRARY will be ignored since the hydra process manager was found
MPI startup(): Warning: I_MPI_PMI_LIBRARY will be ignored since the hydra process manager was found
MPI startup(): Warning: I_MPI_PMI_LIBRARY will be ignored since the hydra process manager was found

 Starting FDS ...

 MPI Process      0 started on blaze.el.nist.gov
 MPI Process      2 started on blaze.el.nist.gov
 MPI Process      1 started on blaze.el.nist.gov
 MPI Process      3 started on blaze.el.nist.gov

 Reading FDS input file ...

 Fire Dynamics Simulator

 Current Date     : April 18, 2023  17:35:07
 Revision         : FDS-6.8.0-0-g886e009-release
 Revision Date    : Tue Apr 18 07:06:40 2023 -0400
 Compiler         : ifort version 2021.7.1
 Compilation Date : Apr 18, 2023 15:20:17

 MPI Enabled;    Number of MPI Processes:       4
 OpenMP Disabled

 MPI version: 3.1
 MPI library version: Intel(R) MPI Library 2021.6 for Linux* OS

 Job TITLE        : Simple 2D Tunnel
 Job ID string    : dancing_eddies_default

 Time Step:      1, Simulation Time:     0.004 s
 Time Step:      2, Simulation Time:     0.008 s
 Time Step:      3, Simulation Time:      0.01 s
 Time Step:      4, Simulation Time:      0.02 s
 Time Step:      5, Simulation Time:      0.02 s

What files are you missing?

johodges commented 1 year ago

Here is what I am seeing. The root cause of the issue is having to change the line endings which is affecting the binary data as well. I can probably work around it by just replacing the line endings in the first N lines, but it is odd that I don't see this behavior on other releases. 00_wget_permissions 01_initial_bash_run 02_lineending_replace_second_bash_run 03_allsavedfiles

marcosvanella commented 1 year ago

It is interesting I don't pick it up on our Linux distribution. We are using Centos 7. We'll let Glenn have a look at the script.

gforney commented 1 year ago

I was seeing the dos line endings too.

try again. I was tranferring the bundles from one github release to another. I downloaded to the PC then uploaded from the PC. I think pscp (PC equivalent of the ssh program scp) was fooled and thought the .sh files were text files and added the dos line endings. anyway, I uploaded the buundles directly from blaze - PC was not in the picture. I'm now not seeing the dos line endings.

johodges commented 1 year ago

Thanks for re-uploading. The linux binaries are working as expected now.

marcosvanella commented 1 year ago

Thank you Jon.