lumi-supercomputer

Configure Slurm and ROCm environments for PyTorch jobs on LUMI.

10|1|Updated Feb 21, 2026
One-click install
npx skills add https://github.com/dongzhuoyao/tao-research-skills --skill lumi-supercomputer
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: lumi-supercomputer
Source: https://github.com/dongzhuoyao/tao-research-skills/tree/main/lumi-supercomputer
Command: npx skills add https://github.com/dongzhuoyao/tao-research-skills --skill lumi-supercomputer

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Deploying and debugging GPU machine learning workloads on the LUMI supercomputer requires many system-specific adjustments that differ from typical NVIDIA clusters, including ROCm compatibility, Singularity container workflows, Lustre filesystem constraints, and network/CPU affinity tuning. This Skill collects the pragmatic defaults, environment variables, Slurm templates, and storage guidance needed to avoid hangs, poor performance, and failed jobs on LUMI.

Core Features & Use Cases

  • Slurm Job Templates: Ready single-node and multi-node sbatch templates with correct account, partition, GPU/GCD counts, CPU allocations, and safe flags like no-requeue and open-mode.
  • ROCm & Container Guidance: Clear instructions for using Singularity containers, recommended module loads, how to extend and squash user installs, and ROCm-specific considerations in place of CUDA.
  • Runtime Environment & Debugging: Explicit environment variables and mitigations for MIOpen cache on Lustre, NCCL/RCCL network settings for Slingshot, ROCR_VISIBLE_DEVICES mapping, and CPU-GPU affinity masks.
  • Storage and I/O Best Practices: Recommendations for using project/scratch/flash and SquashFS to avoid metadata storms on Lustre.
  • Use Case: Preparing a reproducible, high-performance PyTorch distributed training job on LUMI-G that avoids MIOpen hangs, ensures proper inter-node communication, and respects billing/accounting rules.

Quick Start

Use the lumi-supercomputer skill to generate a ready-to-run Slurm sbatch script and environment checklist for training a PyTorch model on LUMI with ROCm, Singularity, NCCL/RCCL settings, CPU affinity masks, and MIOpen cache redirection.

Frequently Asked Questions about lumi-supercomputer

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I submit a multi-node PyTorch training job on LUMI using Slurm?

To submit multi-node PyTorch training on LUMI, use a Slurm sbatch template with correct partition, GPU/GCD counts, CPU allocations, and safe flags. You must also configure NCCL/RCCL network variables for Slingshot and apply CPU-GPU affinity masks.

Why does my PyTorch job hang on the LUMI supercomputer when using ROCm?

PyTorch jobs hang on LUMI due to MIOpen cache conflicts on the Lustre filesystem. Redirecting the MIOpen cache directory to a local or flash storage path resolves this issue and prevents metadata storms.

Can I use standard CUDA containers for machine learning workloads on LUMI?

You cannot use standard CUDA containers on LUMI because it uses AMD MI250X GPUs. You must use Singularity containers configured for ROCm compatibility, applying specific module loads and container extension practices instead.

How do I map GPUs and set up ROCR_VISIBLE_DEVICES for distributed training on LUMI?

Mapping GPUs for distributed training on LUMI requires configuring ROCR_VISIBLE_DEVICES to expose the correct GCDs. You must also apply CPU-GPU affinity masks to ensure proper resource allocation and prevent performance degradation.

What is the best way to manage storage and I/O for ML jobs on the LUMI filesystem?

Managing storage and I/O for ML jobs on LUMI involves using project, scratch, and flash storage tiers alongside SquashFS. This approach avoids metadata storms on the Lustre filesystem and optimizes read performance for containers.