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

Updates for Alps #196

Merged
merged 7 commits into from
Sep 6, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 11 additions & 3 deletions docs/alps/index.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
!!! construction "Page under construction"
!!! construction "Page under construction - last update: 2024-09-06"

Information in this page is not yet complete nor final. It will be updated following the progress of

Expand All @@ -11,7 +11,7 @@ Alps is a distributed HPC infrastructure managed by CSCS. Contrary to traditiona

## vClusters

The following vClusters are hosted at CSCS:
The following table shows the current plan for the final vClusters distribution on Alps at CSCS (not the current situation).

| vCluster | Activity | Share |
|----------|-------------------|------------------|
Expand All @@ -23,6 +23,14 @@ The following vClusters are hosted at CSCS:

*GH = Grace Hopper*

## Early Access

For getting access to the vCluster dedicated to testing ([Tödi](vclusters.md/#tödi){:target="_blank"}), CSCS offers [Preparatory Projects :material-open-in-new:](https://www.cscs.ch/user-lab/allocation-schemes/preparatory-projects){:target="_blank"}.

## Support by CSCS

To contact CSCS staff directly, users can join their dedicated [Slack channel :material-open-in-new:](https://cscs-users.slack.com){:target="_blank"}.

## File Systems

!!! note "TODO"
Expand All @@ -33,7 +41,7 @@ The following vClusters are hosted at CSCS:

## Introductory Workshop Material

As an introduction to the Alps infrastructure, the material of our [C2SM workshop "Switching to Alps"](../blog/posts/2024-07-02_switching_to_Alps.md) is available:
As an introduction to the Alps infrastructure, the material of our [C2SM workshop "Switching to Alps"](../blog/posts/2024-07-02_switching_to_Alps.md) from August 12, 2024 is available:

- [Recording :material-download:](https://polybox.ethz.ch/index.php/s/oSxyJgTjyvJKX8B){:target="_blank"}<br>
- [Slides presenting Alps, vClusters and Uenvs :material-download:](https://polybox.ethz.ch/index.php/s/jvtIYkBvHUSGZYD){:target="_blank"}<br>
Expand Down
22 changes: 14 additions & 8 deletions docs/alps/uenvs.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
!!! construction "Page under construction"
!!! construction "Page under construction - last update: 2024-09-06"

Information in this page is not yet complete nor final. It will be updated following the progress of

Expand All @@ -25,7 +25,11 @@ A description of user environments and the `uenv` tool can be found in the [CSCS

## Uenvs central Registry and C2SM uenvs

The user environments provided by CSCS are registered in a central database. In the long run we should be able to operate only with those but, at least for the initial period, there is also the need for uenvs provided by C2SM. These are accessed by their absolute path. All supported uenvs are documented in the corresponding vClsuter section of the [dedicated page](vclusters.md).
The user environments provided by CSCS are registered in a central database. In the long run we should be able to operate only with those but, at least for the initial period, there might also be the need for uenvs provided by C2SM. These are accessed by their absolute path. All supported uenvs are documented in the corresponding vClsuter section of the [dedicated page](vclusters.md).

!!! warning

Old software stack images didn't have a mount point in the metadata which is now required for the new versions of the `uenv` tool and its `--uenv` slurm plugin counterpart. If you have images in your local repository that are older than roughly September 5th, please pull them again. It will only update the metadata

## The `uenv` command line tool

Expand All @@ -45,7 +49,9 @@ git clone https://github.com/eth-cscs/uenv.git && ./uenv/install --local

### Quickstart

In the following, using `name/version:tag` as metadata to target a uenv can be replaced by the absolute path to the image if necessary.
In the following
- using `name/version:tag` as metadata to target a uenv can be replaced by the absolute path to the image if necessary.
- when a mount point can be passed to a command it defaults to a path stored in the uenv metadata, most often `/user-environment`


#### Create a local images repository
Expand All @@ -65,7 +71,7 @@ uenv image pull name/version:tag
```

#### Start a uenv for interactive use
This will spawn a new shell with the uenv mounted at `/mount-point` (defaulting to `/user-environment`)
This will spawn a new shell with the uenv mounted at `/mount-point`
```shell
uenv start name/version:tag [/mount-point]
```
Expand All @@ -80,9 +86,9 @@ A usual `module avail` command would then show you the different modules added b

#### launch a subprocess with a uenv mounted
```shell
uenv run name/version:tag -- my_command
uenv run name/version:tag[:mount-point] -- my_command
```
will run `my_command` (can be executing a script) with the uenv mounted. This is particularly useful when inside scripts.
will run `my_command` (can be executing a script) with the uenv mounted. This is particularly useful inside scripts.

## The `--uenv` SLURM plugin

Expand All @@ -93,7 +99,7 @@ sbatch --uenv name/version:tag[:/mount/point]
sbatch --uenv /image/path[:/mount/point]
```

`:mount/point` can always be omitted and defaults to `:/user-environment`.
as for the `uenv` CLI, `:/mount/point` can always be omitted and defaults to what is found in the uenv metadata.

On Balfrin, the installed plugin version doesn't allow access via uenv names but `uenv image inspect` can be used to query the corresponding absolute path:

Expand All @@ -104,7 +110,7 @@ uenv image inspect prgenv-gnu --format="{sqfs}"

## Mount points

Uenvs cannot be mounted *anywhere*. They are generated with a predefined installation path contained in it, where the user is supposed to mount them, at least if they are used as a spack instance (don't know for other usage). By default, it is `/user-environment` and another `/user-tools` also exists for *side* environments that would potentially need to be mounted simultaneously to a *main* one.
Uenvs cannot be mounted *anywhere*. They are generated with a predefined installation path contained in it, where the user is supposed to mount them. By default the `uenv` tool and slurm plugin will use the path found in the metadata, ususally `/user-environment` and sometimes `/user-tools`. The later path exists for *side* environments that would potentially need to be mounted simultaneously to a *main* one.

## `spack-c2sm` integration

Expand Down
44 changes: 21 additions & 23 deletions docs/alps/vclusters.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
!!! construction "Page under construction"
!!! construction "Page under construction - last update: 2024-09-06"

Information in this page is not yet complete nor final. It will be updated following the progress of

Expand All @@ -7,7 +7,7 @@

# Supported vClusters

This page is hosting information about C2SM supported vClusters.
This page is hosting information about C2SM supported vClusters (not all CSCS vClusters).

## Access

Expand All @@ -27,26 +27,22 @@ Host balfrin* daint* santis* todi*
ProxyJump ela
```

This would allow standard connections like `ssh santis.cscs.ch` but also specifying the login node like `ssh santis-ln002.cscs.ch` if needed.
This would allow standard connections like `ssh santis` but also specifying the login node like `ssh santis-ln002` if needed. Replace `cscsusername` with your actual user name.

## Daint

Daint is the vCluster dedicated to the User Lab. It is deployed on ~800 Grace-Hopper nodes.
Daint (Alps) is the vCluster dedicated to the User Lab. It is currently accessible at `daint.alps.cscs.ch` (until the current Piz Daint gets decommissioned), so connect with `ssh daint.alps` with the `ssh` settings above.

Even though Weather and Climate also has the dedicated vCluster Santis (see [below](#santis)), traditional projects will be running on Daint.

!!! warning "Hostname conflict"

For the duration of the overlap between the current expiring Piz Daint and its reincarnation as a vCluster, there will be two different host names. Most probably the current Piz Daint will continue being accessible at `daint.cscs.ch` while the vCluster hostname is not known yet.
Even though Weather and Climate also has the dedicated vCluster Santis (see [below](#santis)), traditional projects might also land on Daint.

### Uenvs

List of currently supported Uenvs on Daint:

| uenv | activity |
|-------------|-------------------------------|
| icon-vx:rcy | build and run icon |
| prepost-vx | pre and post processing tools |
| uenv | activity | Remark |
|--------------------------|--------------------------------|---------------------|
| icon-vx:rcy | build and run ICON | Not deployed (yet?) |
| netcdf-tools/2024:v1-rc1 | pre- and post-processing tools | |

### Storage

Expand All @@ -56,14 +52,16 @@ List of currently supported Uenvs on Daint:

## Santis

Santis is dedicated to Weather and Climate and is deployed on ~400 Grace-Hopper nodes. At least at the beginning, it will be hosting only [EXCLAIM :material-open-in-new:](https://c2sm.ethz.ch/research/exclaim.html){:target="_blank"} and related projects.
!!! warning "Santis has not been deployed yet."

Santis is dedicated to Weather and Climate. It might, at the beginning, only host [EXCLAIM :material-open-in-new:](https://c2sm.ethz.ch/research/exclaim.html){:target="_blank"} and related projects.

### Uenvs

| uenv | activity |
|-------------|-------------------------------|
| icon-vx:rcy | build and run icon |
| prepost-vx | pre and post processing tools |
| uenv | activity |
|--------------------------|--------------------------------|
| icon-vx:rcy | build and run ICON |
| netcdf-tools/tag:version | pre- and post-processing tools |

### Storage

Expand All @@ -74,11 +72,11 @@ Santis is dedicated to Weather and Climate and is deployed on ~400 Grace-Hopper

## Tödi

Tödi is the testing vCluster and is currently deployed on the entire machine.
Tödi is the testing vCluster and is currently deployed on the most of the Alps system.

### Uenvs

| uenv | activity |
|--------------------------|-------------------------------|
| icon-wcp/v1:rc4 | build and run icon |
| netcdf-tools/2024:v1-rc1 | pre and post processing tools |
| uenv | activity |
|--------------------------|--------------------------------|
| icon-wcp/v1:rc4 | build and run ICON |
| netcdf-tools/2024:v1-rc1 | pre- and post-processing tools |
Loading