Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Perlmutter: SW Install Updates #5648

Merged
merged 7 commits into from
Feb 18, 2025
Merged

Conversation

ax3l
Copy link
Member

@ax3l ax3l commented Feb 8, 2025

  • profile: avoid repetition, use SW_DIR variable as in install_... scripts
  • move from CFS to PSCRATCH (more stable, faster, where the binary lives); uses an undocumented, purge-exempt location for container images/software
  • build our own boost (SW stack consistency)
  • get our own CCache (prior one is gone)
  • RT tested

ax3l added 6 commits February 7, 2025 17:17
Avoid repeating ourselves.
Avoid CFS for shared library loads.
Use the (undocumented) container/software storage location on
PSCRACTH that is currently excluded from purge.
Instead of hacky taking one from an E4S install.
Old location we got it from did not work anymore.
@ax3l ax3l added component: documentation Docs, readme and manual machine / system Machine or system-specific issue labels Feb 8, 2025
@ax3l ax3l requested review from n01r, WeiqunZhang and EZoni February 8, 2025 02:17
@@ -31,7 +31,7 @@ fi

# Remove old dependencies #####################################################
#
SW_DIR="${CFS}/${proj}/${USER}/sw/perlmutter/cpu"
SW_DIR="${PSCRATCH}/storage/sw/perlmutter/cpu"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are two things that come to mind:

  • Should we add warpx to the path because we may want to do this for ImpactX and other BLAST codes as well and would accidentally remove the dependencies of the other codes when rerunning the install dependencies script?
  • Should we add ${proj} because different projects could require different dependencies? (Maybe this one is not necessary because a developer would know to adjust the install script or run with a temporary solution)

Could look like this SW_DIR="${PSCRATCH}/storage/sw/perlmutter/${proj}/warpx/cpu/"?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good point, using .../sw/warpx/perlmutter/... now 👍

Copy link
Member

@n01r n01r left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good :)

Since PSCRATCH does not distinguish between projects, I would put the project ID into the path for the SW_DIR so one can switch between projects/BLAST codes and update dependencies without deleting. But that could also be a follow-up.

Avoid collisions with ImpactX docs
@ax3l ax3l requested a review from n01r February 18, 2025 19:38
@ax3l
Copy link
Member Author

ax3l commented Feb 18, 2025

@n01r @EZoni ready now :)

Copy link
Member

@n01r n01r left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks a lot! :)

@EZoni EZoni merged commit 0659286 into ECP-WarpX:development Feb 18, 2025
37 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component: documentation Docs, readme and manual machine / system Machine or system-specific issue
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants