Skip to content

Commit

Permalink
UPD: update Alps info
Browse files Browse the repository at this point in the history
  • Loading branch information
leclairm committed Sep 6, 2024
1 parent e6b3b4b commit 3b37627
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 20 deletions.
20 changes: 13 additions & 7 deletions docs/alps/uenvs.md
Original file line number Diff line number Diff line change
Expand Up @@ -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
25 changes: 12 additions & 13 deletions docs/alps/vclusters.md
Original file line number Diff line number Diff line change
Expand Up @@ -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 @@ -20,30 +20,29 @@ Host ela
User cscsusername
IdentityFile ~/.ssh/cscs-key
Host balfrin* daint.alps* santis* todi*
Host balfrin* daint* santis* todi*
Hostname %h.cscs.ch
User cscsusername
IdentityFile ~/.ssh/cscs-key
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.
Replace `cscsusername` with your actual user name.
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 (Alps) 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.
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 |
| netcdf-tools/2024:v1-rc1 | 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 @@ -55,14 +54,14 @@ List of currently supported Uenvs on Daint:

!!! warning "Santis has not been deployed yet."

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.
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 |
| netcdf-tools/tag:version | pre- and post-processing tools |

### Storage

Expand All @@ -73,7 +72,7 @@ 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

Expand Down

0 comments on commit 3b37627

Please sign in to comment.