AMReX-Combustion / PeleLMeX

An adaptive mesh hydrodynamics simulation code for low Mach number reacting flows without level sub-cycling.
https://amrex-combustion.github.io/PeleLMeX/
BSD 3-Clause "New" or "Revised" License
24 stars 32 forks source link

Compiling SUNDIALS Library on New Cluster without GitHub Access #335

Closed bazharz closed 5 months ago

bazharz commented 5 months ago

Hello,

I am reaching out to you because I have just switched to another cluster to run my PeleLMeX calculations. I have gathered all the files and made sure I have everything needed for compilation. To do this, I started by running 'make TPLrealclean' and then 'make TPL.'

After executing 'make TPL,' the intention is to create the SUNDIALS library from GitHub. The issue I am encountering with the new cluster is that GitHub is not accessible! As a result, the compilation of 'make TPL' fails, and I receive the following message:

$ make TPL Loading /ccc/work/cont003/gen7456/bazharza/PeleLMeX/Submodules/amrex/Tools/GNUMake/comps/gnu.mak... Loading /ccc/work/cont003/gen7456/bazharza/PeleLMeX/Submodules/amrex/Tools/GNUMake/sites/Make.unknown... Loading /ccc/work/cont003/gen7456/bazharza/PeleLMeX/Submodules/amrex/Tools/GNUMake/packages/Make.sundials... GNUmakefile:265: warning: overriding recipe for target '/' GNUmakefile:240: warning: ignoring old recipe for target '/' ==> Building SUNDIALS library make[1]: Entering directory '/ccc/work/cont003/gen7456/bazharza/PeleLMeX/Submodules/PelePhysics/ThirdParty' Loading /ccc/work/cont003/gen7456/bazharza/PeleLMeX/Submodules/amrex/Tools/GNUMake/comps/gnu.mak... Loading /ccc/work/cont003/gen7456/bazharza/PeleLMeX/Submodules/amrex/Tools/GNUMake/sites/Make.unknown... GNUmakefile:265: warning: overriding recipe for target '/' GNUmakefile:240: warning: ignoring old recipe for target '/' cp: cannot stat '/cmb138/software/v6.5.0.tar.gz': No such file or directory --2024-01-17 17:22:36-- https://github.com/LLNL/sundials/archive/refs/tags/v6.5.0.tar.gz Resolving github.com (github.com)... 140.82.121.3 Connecting to github.com (github.com)|140.82.121.3|:443... failed: Connection timed out. Retrying.

Could you please advise on how to overcome this compilation step and create the SUNDIALS library without using GitHub?

Thank you in advance.

drummerdoc commented 5 months ago

This has come up other times with machine that require indirect access. We should probably instructions for where to place distributions in this case. In this case, one approach is to manually copy the sundials distribution file from https://github.com/LLNL/sundials/archive/refs/tags/v6.5.0.tar.gz to the PeleLMeX/Submodules/PelePhysics/ThirdParty/BUILD/SUNDIALS folder in your local repo of LMeX. Let me know if after doing that, the "make TPL" still fails.

bazharz commented 5 months ago

I have attempted this previously, and the issue persists. I believe the problem lies in the automatic attempt to connect to GitHub. Given that it is not accessible on this cluster, the connection times out, resulting in a compilation failure.

bazharz commented 5 months ago

I managed to overcome this step by modifying the following line in the GNUmakefile in the ThirdParty directory: @cd $(SUNDIALS_SOURCE_DIR)/..; cp $(SUNDIALS_DIST_FILE) . ; tar xf $(SUNDIALS_DIST_FILE) -C src

Thank you!

drummerdoc commented 5 months ago

Ha! yeah, that was my next suggestion. We should modify the make targets to allow that as an alternative - something like "make TPLlocal" or some such. Thanks for the feedback!

baperry2 commented 5 months ago

It appears you are using an older version of PeleLMeX. We now use Sundials as a git submodule (actually a submodule of the PelePhysics submodule), rather than downloading the tar during make TPL. With the present implementation, you can also manually download Sundials to whatever location you desire, and then specify SUNDIALS_HOME in your GNUmakefile or as an environment variable (https://github.com/AMReX-Combustion/PeleLMeX#download), and then still run make TPL to build it. See https://github.com/AMReX-Combustion/PeleLMeX/pull/235 and https://github.com/AMReX-Combustion/PelePhysics/pull/410

I would recommend moving to the latest version of PeleLMeX. We recently completed a fairly significant reorganization, but the code should be stable for the foreseeable future.

drummerdoc commented 5 months ago

Yeah...what he said! That's what I get for being a manager and one step removed from the smart people entrusted to keep this software current and useful! Definitely upgrade your Pele!

bazharz commented 5 months ago

Thank you for this clarification! I will proceed with that.

baperry2 commented 5 months ago

@bazharz can you confirm that the issue you were having is resolved by updating to the latest PeleLMeX?

bazharz commented 5 months ago

Yes i confirm, It's compiling now without any issue! Thank you!