From 5a8cb8b4cd78f1c64e6321848d7e01bc3174a79b Mon Sep 17 00:00:00 2001 From: bcumming Date: Wed, 12 Feb 2025 11:45:47 +0100 Subject: [PATCH] refactor layout around alps and platforms --- docs/access/ump.md | 52 +++++++++++++++++++++++++++++++++--- docs/alps/hardware.md | 22 +++++++++++++-- docs/alps/index.md | 38 +++++++++++++------------- docs/alps/platforms.md | 28 +++++++++++++++++++ docs/alps/tenants.md | 7 ----- docs/alps/vclusters.md | 36 ++++++++++++++++++++----- docs/images/access/ump.png | Bin 0 -> 61870 bytes docs/index.md | 2 +- docs/platforms/index.md | 26 ------------------ docs/platforms/mlp/index.md | 13 +++++++-- docs/tools/slurm.md | 2 +- docs/vclusters/bristen.md | 6 +++++ mkdocs.yml | 32 ++++++++++------------ 13 files changed, 177 insertions(+), 87 deletions(-) create mode 100644 docs/alps/platforms.md delete mode 100644 docs/alps/tenants.md create mode 100644 docs/images/access/ump.png delete mode 100644 docs/platforms/index.md create mode 100644 docs/vclusters/bristen.md diff --git a/docs/access/ump.md b/docs/access/ump.md index 8b2b97b6..403cffbc 100644 --- a/docs/access/ump.md +++ b/docs/access/ump.md @@ -1,6 +1,50 @@ -# User Management Portal +[](){#ump} +# Account and Resources Management Tool -!!! todo - copy over docs from [confluence](https://confluence.cscs.ch/display/KB/Account+and+Resources+Management+Tool) +The Swiss National Supercomputing Centre (CSCS) offers a web-based tool for users to manage their accounts and projects at [account.cscs.ch](https://account.cscs.ch). - 15 minute job +With this tool, users can: + +- Access their profile, manage institutional details, or reset their password. +- List the projects they belong to, including closed ones. +- Check details on each project, quotas, and current utilization. +- Get an overview of where their files are stored at CSCS (including home directories, scratch, etc.). + +For group leaders (or PIs), the tool allows: + +- Managing user membership and access control. +- Inviting users to their projects via email. Existing users can accept immediately, while new users will receive instructions to create an account and join the project. +- Removing users from their projects. +- Selecting which users can access a system (and submit jobs) and which ones can only access project data. +- Defining one or more deputies to perform such tasks. + **Note:** The responsibility of what happens within the project still belongs to the group leader or PI. + +A short guideline on how to perform these tasks is provided below. + +## Usage + +The tool is designed to be intuitive and comprises the following main areas: + +- **A) Account selector**: For users with multiple accounts (e.g., service accounts). +- **B) Profile management**: To view and edit the account's institutional details and change the password. +- **C) Project membership**: To show the selected project in detail. +- **D) Storage**: Where users can see where they have stored their files (home, scratch, and project areas). +- **E) Main view** + +![Screenshot](../images/access/ump.png) + +### Membership Management (for Group Leaders and Deputies Only) + +To invite users to a selected project, group leaders or their deputies need to: + +1. Select the project on the left menu. +2. Click the "Members" tab. +3. Scroll down to the "Users" (or "Deputies" to manage deputies) section. +4. Use the "+" (plus) button on the right of the section and enter the given and family names and email address of the invitee. + The invitee will receive instructions on how to join the project. The group leader will get a confirmation on whether the invitee has accepted or rejected the invitation. + If the invitee does not have an account, they will also receive instructions on how to create one, which needs to be verified by CSCS administration staff. + +To remove users from a selected project, group leaders or their deputies need to: + +1. Repeat steps 1 to 3 above. +2. Use the icon with the three horizontal lines (see screenshot below) that is on the right of the user and select "Remove user." diff --git a/docs/alps/hardware.md b/docs/alps/hardware.md index ec2d431d..df6d8b77 100644 --- a/docs/alps/hardware.md +++ b/docs/alps/hardware.md @@ -1,3 +1,4 @@ +[](){#alps-hardware} # Alps Hardware Alps is a HPE Cray EX3000 system, a liquid cooled blade-based, high-density system. @@ -20,7 +21,19 @@ This approach to cooling provides greater efficiency for the rack-level cooling, * Maximum of 64 quad-blade compute blades * Maximum of 64 Slingshot switch blades -## Alps Blades +## Alps High Speed Network + +!!! todo + information about the network. + + * Details about SlingShot 11. + * how many NICS per node + * raw feeds and speeds + * Some OSU benchmark results. + * GPU-aware communication + * **slingshot is not infiniband - there is no NVSwitch** + +## Alps Nodes Alps was installed in phases, starting with the installation of 1024 AMD Rome dual socket CPU nodes in 2020, through to the main installation of 2,688 Grace-Hopper nodes in 2024. @@ -34,26 +47,31 @@ There are currently four node types in Alps, with another becoming available in | AMD MI250x | 12 | 24 | 24 | 96 | | AMD MI300A | 64 | 128 | 512 | 512 | +[](){#gh200-node} ### NVIDIA GH200 GPU Nodes -[](){#gh200-hardware-description} Perry Peak +[](){#zen2-node} ### AMD Rome CPU Nodes EX425 +[](){#a100-node} ### NVIDIA A100 GPU Nodes Grizzly Peak +[](){#mi200-node} ### AMD MI250x GPU Nodes Bard Peak +[](){#mi300-node} ### AMD MI300A GPU Nodes Parry Peak !!! info "coming soon" H1 2025 + diff --git a/docs/alps/index.md b/docs/alps/index.md index 30a0262c..13049a31 100644 --- a/docs/alps/index.md +++ b/docs/alps/index.md @@ -1,22 +1,32 @@ # Alps Infrastructure -Alps is a general-purpose compute and data Research Infrastructure (RI) open to the broad community of researchers in Switzerland and the rest of the world. Alps will provide a high impact, challenging and innovative RI that will allow Switzerland to advance science and impact society. +Alps is a general-purpose compute and data Research Infrastructure (RI) open to the broad community of researchers in Switzerland and the rest of the world. +Alps provides a high impact, challenging and innovative RI that will allows Switzerland to advance science and impact society. -Alps enables the creation of versatile clusters (vClusters) that can be tailored to the specific needs of users while maintaining confidentiality. For example, a vCluster will be dedicated to MeteoSwiss’ numerical weather forecasts, another one to the User Lab and another one to Machine Learning and Artificial Intelligence. +Alps enables the creation of versatile clusters (vClusters) that can be tailored to the specific needs of users while maintaining confidentiality. +For example, a vCluster will be dedicated to MeteoSwiss’ numerical weather forecasts, another one to the User Lab and another one to Machine Learning and Artificial Intelligence. + +A key feature of Alps is multi-tenancy, where tenants are organizations, typically a research institution, that deploys, operates, or manages its platform on the Alps infrastructure. +Tenants have privileged access to resource nodes, enabling them to deploy their own services and resource configurations. +Additionally, network segregation ensures secure and isolated communication, with the option to connect to the tenant's private network.
-- :fontawesome-solid-signs-post: __Hardware__ +- :fontawesome-solid-signs-post: __Platforms__ - Learn about the node types and networking infrastructure in Alps. + [:octicons-arrow-right-24: Alps Platforms][platforms] - [:octicons-arrow-right-24: Alps Hardware](hardware.md) +- :fontawesome-solid-signs-post: __Clusters__ -- :fontawesome-solid-signs-post: __Network__ + The resources on Alps are partitioned and configured into versatile software defined clusters (vClusters). - Learn about the Slingshot 11 network on Alps. + [:octicons-arrow-right-24: Alps vClusters][clusters] - [:octicons-arrow-right-24: Alps Network](network.md) +- :fontawesome-solid-signs-post: __Hardware__ + + Learn about the node types and networking infrastructure in Alps. + + [:octicons-arrow-right-24: Alps Hardware](hardware.md) - :fontawesome-solid-signs-post: __Storage__ @@ -24,16 +34,4 @@ Alps enables the creation of versatile clusters (vClusters) that can be tailored [:octicons-arrow-right-24: Alps Storage](storage.md) -- :fontawesome-solid-signs-post: __vClusters__ - - The resources on Alps are partitioned and configured into versatile software defined clusters (vClusters). - - [:octicons-arrow-right-24: Alps vClusters](vclusters.md) - -- :fontawesome-solid-signs-post: __Tenants__ - - Alps is a multi-tenant system. - - [:octicons-arrow-right-24: Alps Tenants](tenants.md) -
diff --git a/docs/alps/platforms.md b/docs/alps/platforms.md new file mode 100644 index 00000000..e0a9337a --- /dev/null +++ b/docs/alps/platforms.md @@ -0,0 +1,28 @@ +[](){#platforms} +# Platforms on Alps + +A platform represents a set of scientific services along with compute and data resources hosted on the Alps research infrastructure, provided to a specific scientific community. +Each platform addresses particular research needs and domains, such as climate and weather modeling, machine learning, or high-performance computing applications. +A platform can consist of one or multiple [clusters][clusters], and its services can be managed either by CSCS or by the scientific community itself, including access control, usage policies, and support. + +
+ +- :fontawesome-solid-mountain: __Machine Learning Platform__ + + The Machine Learning Platform (MLp) hosts ML and AI researchers. + + [:octicons-arrow-right-24: MLp][mlp] + +- :fontawesome-solid-mountain: __HPC Platform__ + + !!! todo + + [:octicons-arrow-right-24: HPCp][hpcp] + +- :fontawesome-solid-mountain: __Climate and Weather Platform__ + + !!! todo + + [:octicons-arrow-right-24: CWp][cwp] + +
diff --git a/docs/alps/tenants.md b/docs/alps/tenants.md deleted file mode 100644 index c81b4044..00000000 --- a/docs/alps/tenants.md +++ /dev/null @@ -1,7 +0,0 @@ -# Alps Tenants - -!!! todo - This page answeres the question "what is a tenant" - - * why/how is Alps multi tenant - * who are the tenants diff --git a/docs/alps/vclusters.md b/docs/alps/vclusters.md index 6b4d920b..09418659 100644 --- a/docs/alps/vclusters.md +++ b/docs/alps/vclusters.md @@ -1,10 +1,34 @@ -# Alps vClusters +[](){#clusters} +# Alps Clusters -!!! todo - this page answers the question "what is a vCluster"? +A vCluster (versatile software-defined cluster) is a logical partition of the supercomputing resources where platform services are deployed. It serves as a dedicated environment supporting a specific platform. The composition of resources and services for each vCluster is defined in a configuration file used by an automated pipeline for deployment. Once deployed by CSCS, the vCluster becomes immutable. - * What is a vCluster? - * Examples of vClusters +## Clusters on Alps + +Clusters on Alps are provided as part of different [platforms][platforms]. + +
+- :fontawesome-solid-mountain: __Machine Learning Platform__ + + Clariden is the main Grace-Hopper cluster + + [:octicons-arrow-right-24: Clariden][clariden] + + Bristen is a small system with a100 nodes, used for **todo** + + [:octicons-arrow-right-24: Bristen][bristen] +
+ +
+- :fontawesome-solid-mountain: __HPC Platform__ { .col-span-12 } + + !!! todo +
+ +
+- :fontawesome-solid-mountain: __Climate and Weather Platform__ + + !!! todo +
- We don't document individual vClusters here - these are documented under each platform. diff --git a/docs/images/access/ump.png b/docs/images/access/ump.png new file mode 100644 index 0000000000000000000000000000000000000000..7fd5ab0f51b2e0972aae3c8454944ecd033c262d GIT binary patch literal 61870 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 KmGZkb&;A49#&84x literal 0 HcmV?d00001 diff --git a/docs/index.md b/docs/index.md index e724dbec..a3cb328d 100644 --- a/docs/index.md +++ b/docs/index.md @@ -8,7 +8,7 @@ Welcome to the techincal documentation for Alps. Once you have a project at CSCS, start here to find your platform: - [:octicons-arrow-right-24: Platforms overview](platforms/index.md) + [:octicons-arrow-right-24: Platforms overview][platforms] Go straight to the documentation for the platform that hosts your project: diff --git a/docs/platforms/index.md b/docs/platforms/index.md deleted file mode 100644 index 2573e24b..00000000 --- a/docs/platforms/index.md +++ /dev/null @@ -1,26 +0,0 @@ -# Platforms on Alps - -!!! todo - A high level paragraph that describes what platforms are - -

- -- :fontawesome-solid-mountain: __Machine Learning Platform__ - - The Machine Learning Platform (MLp) hosts ML and AI researchers - - [:octicons-arrow-right-24: MLp][mlp] - -- :fontawesome-solid-mountain: __HPC Platform__ - - !!! todo - - [:octicons-arrow-right-24: HPCp][hpcp] - -- :fontawesome-solid-mountain: __Climate and Weather Platform__ - - !!! todo - - [:octicons-arrow-right-24: CWp][cwp] - -
diff --git a/docs/platforms/mlp/index.md b/docs/platforms/mlp/index.md index f2174f76..47217876 100644 --- a/docs/platforms/mlp/index.md +++ b/docs/platforms/mlp/index.md @@ -21,8 +21,17 @@ Once invited to a project, you will receive an email, which you can need to crea The main cluster provided by the MLp is Clariden, a large Grace-Hopper GPU system on Alps. -!!! todo - introduction paragraph and cards that link to Clariden and Bristen +
+- :fontawesome-solid-mountain: [__Clariden__][clariden] + + Clariden is the main [Grace-Hopper][gh200-node] cluster used for **todo** +
+ +
+- :fontawesome-solid-mountain: [__Bristen__][bristen] + + Bristen is a smaller system with [A100 GPU nodes][a100-node] for **todo** +
## Guides and Tutorials diff --git a/docs/tools/slurm.md b/docs/tools/slurm.md index acd82b5f..757cfe8c 100644 --- a/docs/tools/slurm.md +++ b/docs/tools/slurm.md @@ -29,7 +29,7 @@ The following sections will provide detailed guidance on how to use SLURM to req [using slurm on Grace-Hopper][gh200-slurm] ``` -Link to the [Grace-Hopper overview][gh200-hardware-description]. +Link to the [Grace-Hopper overview][gh200-node]. An example of using tabs to show srun and sbatch useage to get one GPU per MPI rank: diff --git a/docs/vclusters/bristen.md b/docs/vclusters/bristen.md new file mode 100644 index 00000000..3a7f2e36 --- /dev/null +++ b/docs/vclusters/bristen.md @@ -0,0 +1,6 @@ +[](){bristen} +# Bristen + +!!! todo + use the [clariden][clariden] as template. + diff --git a/mkdocs.yml b/mkdocs.yml index c77e9611..3b659487 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -15,24 +15,6 @@ plugins: - autorefs nav: - Welcome: index.md - - 'Alps': - - alps/index.md - - 'Hardware': alps/hardware.md - - 'Network': alps/network.md - - 'Storage': alps/storage.md - - 'vClusters': alps/vclusters.md - - 'Tenants': alps/tenants.md - - 'Platforms': - - platforms/index.md - - 'HPC Platform': - - platforms/hpcp/index.md - - 'Machine Learning Platform': - - platforms/mlp/index.md - # we could move all vcluster descriptions to a vcluster/name.md - # then link them into the respective platform - - 'clariden': vclusters/clariden.md - - 'Climate and Weather Platform': - - platforms/cwp/index.md - 'Access': - access/index.md - 'MFA': @@ -40,6 +22,20 @@ nav: - 'using windows': access/mfa/windows.md - 'UMP': access/ump.md - 'Waldur': access/waldur.md + - 'Alps': + - alps/index.md + - 'Platforms': alps/platforms.md + - 'Clusters': alps/vclusters.md + - 'Hardware': alps/hardware.md + - 'Storage': alps/storage.md + - 'Machine Learning Platform': + - platforms/mlp/index.md + - 'clariden': vclusters/clariden.md + - 'bristen': vclusters/bristen.md + - 'HPC Platform': + - platforms/hpcp/index.md + - 'Climate and Weather Platform': + - platforms/cwp/index.md - 'Tools': - tools/index.md - 'slurm': tools/slurm.md