Skip to content

WIP update steps for container tutorial #850

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

Open
wants to merge 25 commits into
base: develop
Choose a base branch
from

Conversation

slabasan
Copy link
Collaborator

Description

  • Replace with: A short description of the change, including motivation and context.
  • Replace with: A list of any dependencies.
  • Replace with: Link(s) to relevant issue(s)
  • Complete the checklist for a relevant section(s) below
  • Delete sections below that are not relevant to this PR

Adding/modifying a system (docs: Adding a System)

  • Add/modify systems/system_name/system.py file
  • Add/modify a dry run unit test for system_name in .github/workflows/run.yml
  • Add/modify systems/all_hardware_descriptions/hardware_name/hardware_description.yaml which will appear in the docs catalogue

Adding/modifying a benchmark (docs: Adding a Benchmark)

  • If modifying the source code of a benchmark: create, self-assign, and link here a follow up issue with a link to the PR in the benchmark repo.
  • If package.py upstreamed to Spack is insufficient, add/modify repo/benchmark_name/package.py plus: create, self-assign, and link here a follow up issue with a link to the PR in the Spack repo.
  • If application.py upstreamed to Ramble is insufficient, add/modify repo/benchmark_name/application.py plus: create, self-assign, and link here a follow up issue with a link to the PR in the Ramble repo.
  • Tags in Ramble's application.py or in repo/benchmark_name/application.py will appear in the docs catalogue
  • Add/modify an experiments/benchmark_name/experiment.py to define a single node and multi-node experiments
  • Add/modify a dry run unit test in .github/workflows/run.yml

Adding/modifying core functionality, CI, or documentation:

  • Update docs
  • Update .github/workflows and .gitlab/tests unit tests (if needed)

@slabasan slabasan added docs Improvements or additions to documentation WIP A work-in-progress not yet ready to commit labels Jun 24, 2025
@slabasan slabasan changed the title WIP start populating for container tutorial WIP update steps for container tutorial Jun 24, 2025
@slabasan
Copy link
Collaborator Author

@stephanielam3211 Once you have the container running, these are the steps we'll want our attendees to work through.

This command does 2 main things. First, it builds all necessary software using Spack. This process may take some time (2-3 minutes).
Second, this command configures files (e.g. Flux submission script) needed to perform the runs that make up the current experiment.
For each run, a directory will be created under ``benchpark/wkp/kripke-benchmark/tutorial/workspace/experiments/kripke/kripke``.
If the setup is successfull, you will see something like this after the setup command::
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

typo here successfull

Copy link
Collaborator

Choose a reason for hiding this comment

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

fixed


benchpark --version

You should receive ``0.1.0`` on the terminal
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

"This should return" instead of "You should receive"

Copy link
Collaborator

Choose a reason for hiding this comment

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

fixed

@slabasan
Copy link
Collaborator Author

@michaelmckinsey1 Can you please take another look at the docs page with the additional descriptions?

Copy link
Collaborator

@michaelmckinsey1 michaelmckinsey1 left a comment

Choose a reason for hiding this comment

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

Took a full pass

ideally)
**Prerequisites:**

* Access to a terminal with Benchpark installed (provided automatically by the infrastructure in our `Benchpark Tutorial repository <https://github.com/llnl/benchpark-tutorial>`_)
Copy link
Collaborator

Choose a reason for hiding this comment

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

Should this be more specific like - You need Docker, etc?

Comment on lines +104 to +106
For Kripke, the default experiment is ``kripke+single_node``. Since single node runs are enabled by default, the ``+single_node``
variant will be excluded from the commands below. Instead, the instructions below that use experiment specs will
simply use ``kripke`` instead of ``kripke+single_node``.
Copy link
Collaborator

Choose a reason for hiding this comment

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

+single_node is mutually exclusive with +strong, so the below experiment is actually +strong not single node

Copy link
Collaborator

Choose a reason for hiding this comment

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

For Kripke, we specify the strong scaling experiment on the command line using kripke scaling=strong.

Copy link
Collaborator

@ilumsden ilumsden Jul 15, 2025

Choose a reason for hiding this comment

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

Then why does Benchpark print kripke+single_node as an experiment if the actual experiment is kripke scaling=strong? Something's not adding up between what you're saying and what Benchpark produces, @michaelmckinsey1. I can try rewriting if I understand what the mismatch is.

Comment on lines 188 to 189
This command does two things. First, it builds all necessary software using Spack. Building the software may take a while to complete, depending
on how many external packages are contained in the system definition from :ref:`Step 3 <step3_label>`. For this tutorial, it should take roughly 5 minutes.
Copy link
Collaborator

Choose a reason for hiding this comment

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

Not sure if it's necessary to mention externals here, or maybe rephrase. Almost sounds like more externals makes it take longer.

Suggested change
This command does two things. First, it builds all necessary software using Spack. Building the software may take a while to complete, depending
on how many external packages are contained in the system definition from :ref:`Step 3 <step3_label>`. For this tutorial, it should take roughly 5 minutes.
This command does two things. First, it builds all necessary software using Spack. Building the software may take a while to complete. For this tutorial, it should take roughly 5 minutes.

@slabasan slabasan force-pushed the docs-benchpark-container branch from 2e43f03 to 8049169 Compare July 16, 2025 05:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
docs Improvements or additions to documentation WIP A work-in-progress not yet ready to commit
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants