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

[Draft] ScaleML-UNet3D benchmark #283

Draft
wants to merge 10 commits into
base: develop
Choose a base branch
from
Draft

Conversation

pearce8
Copy link
Collaborator

@pearce8 pearce8 commented Jun 13, 2024

Description

Current priorities:

  • package.py - test
  • application.py
  • cuda experiment - a single experiment
  • test the 3 above, add output here

In a future PR:

  • rocm experiment
  • expand experiments to a set
  • enable Caliper

Adding a note here for later (and possibly for a later PR). It will soon be possible to use both spack and pip to install dependencies, so lets leave the input generation library to deal with then as we shouldn't need a spack package for it.
Spack package manager: https://github.com/GoogleCloudPlatform/ramble/blob/develop/var/ramble/repos/builtin/package_managers/spack/package_manager.py
Pip package manager: https://github.com/GoogleCloudPlatform/ramble/blob/develop/var/ramble/repos/builtin/package_managers/pip/package_manager.py

Package definitions can have multiple specs that are specific to each package manager. As an example::

packages:
saxpy:
spack_pkg_spec: saxpy+openmp
pip_pkg_spec: "saxpy[openmp]"

Package managers can be parameterized: variants:package_manager:'{experiment_package_manager}'

@Thionazin We have merged the ability to use different package managers, its in benchpark develop now. First, you need to look at other packages in benchpark to update to use this capability. Second, here's an example of how to use pip to manage some of your packages:
https://github.com/GoogleCloudPlatform/ramble/blob/develop/var/ramble/repos/builtin/applications/pip-test/application.py
and you would use it from experiments like this::

ramble:
  variants:
    package_manager: pip
  applications:
    pip-test:
      workloads:
        import:
          experiments:
            test:
              variables:
                n_ranks: '1'
                mpi_command: ''
                batch_submit: '{execute_experiment}'
  software:
    packages: {}
    environments: {}

In order for this to work, you will need to use Ramble concretize:
https://ramble.readthedocs.io/en/latest/workspace.html#concretizing-a-workspace

Dependencies: FIXME:Add a list of any dependencies.

Fixes issue(s): FIXME:Add list of relevant issues.

Type of Change

  • { } Adding a system, benchmark, or experiment
  • { } Modifying an existing system, benchmark, or experiment
  • { } Documentation update
  • { } Build/CI update
  • { } Benchpark core functionality

Checklist:

If adding/modifying a system:

  • { } Create a new directory for the system and a new system.py file
  • { } Add a new dry run unit test in .github/workflows
  • { } System appears in System Specifications table in docs catalogue section

If adding/modifying a benchpark:

  • { } Add a new application.py and (maybe) package.py under a new directory
    for this benchmark
  • { } Configure an experiment
  • { } Benchmark appears in Benchmarks and Experiments table in docs catalogue
    section

If adding/modifying a experiment:

  • { } Extend experiment.py under existing directory for specific benchmark
  • { } Define a single node and multi-node experiments

If adding/modifying core functionality:

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

@github-actions github-actions bot added experiment New or modified experiment application New or modified application labels Jun 13, 2024
@pearce8 pearce8 added application New or modified application WIP A work-in-progress not yet ready to commit and removed application New or modified application labels Jun 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
application New or modified application experiment New or modified experiment WIP A work-in-progress not yet ready to commit
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants