Spack in Shared Environment 2018 Scalable Tools Workshop LANL - - PowerPoint PPT Presentation

spack in shared environment
SMART_READER_LITE
LIVE PREVIEW

Spack in Shared Environment 2018 Scalable Tools Workshop LANL - - PowerPoint PPT Presentation

Slide 1 Spack in Shared Environment 2018 Scalable Tools Workshop LANL Programming and Runtime Environments Team Paul Ferrell (LA-UR-18-26078) Operated by Los Alamos National Security, LLC for the U.S. Department of Energy's NNSA Slide 2 The


slide-1
SLIDE 1

Slide 1

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy's NNSA

(LA-UR-18-26078)

Spack in Shared Environment

2018 Scalable Tools Workshop LANL Programming and Runtime Environments Team Paul Ferrell

slide-2
SLIDE 2

Slide 2

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy's NNSA

(LA-UR-18-26078)

The Program Runtime Env. Team

We support:

  • 4 Compilers (GCC, Intel, PGI, cray)
  • 4 MPI libraries (openmpi, mvapich2, intel-mpi, cray-mpich)
  • ~64 packages total in production
  • Continuous release schedule
  • Package Life = System Life

No root access Multiple Customers, Shared Environment

slide-3
SLIDE 3

Slide 3

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy's NNSA

(LA-UR-18-26078)

About our Environment

  • > 12 systems
  • 25000 Compute Nodes
  • 3 OS’s
  • 5 Interconnects
  • Many CPU architectures
  • GPU clusters
  • Lmod and Env Mod module systems
slide-4
SLIDE 4

Slide 4

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy's NNSA

(LA-UR-18-26078)

It’s all under control

  • Solid, readable build scripts for everything
  • Smart modules

– Hide and manage the dep chain automatically, even under Env. Mod

  • Shared builds (when it’s easy)
slide-5
SLIDE 5

Slide 5

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy's NNSA

(LA-UR-18-26078)

What Do We Lack?

  • No automated inventory
  • Each project is an island.
  • Many (mostly) identical builds
  • No definition of what ‘should be’
slide-6
SLIDE 6

Slide 6

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy's NNSA

(LA-UR-18-26078)

What Should be in our Environment?

Environment Definition Build System

Programming Environment Q3 2018

slide-7
SLIDE 7

Slide 7

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy's NNSA

(LA-UR-18-26078)

Spack Package Manager

  • Automated building

– Multiple configurations of the same thing

  • Dependency management
  • Module management/auto-generation
  • Comes with a large library of packages.
slide-8
SLIDE 8

Slide 8

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy's NNSA

(LA-UR-18-26078)

Does Spack Actually Help?

✓ Automated inventory → Awareness ✓ Each project is an island → Uniformity ✓ Many (mostly) identical builds → Efficiency ✗ No definition of what ‘should be’ →

slide-9
SLIDE 9

Slide 9

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy's NNSA

(LA-UR-18-26078)

The Problem with Spack...

Mvapich2 v2.2 GCC v6.4.0 ... Mvapich2 v2.2 Intel v17.0.4 ... Mvapich2* v2.2 Intel v17.0.4 ...

slide-10
SLIDE 10

Slide 10

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy's NNSA

(LA-UR-18-26078)

Non-Conflicting Environments?

It’s Multiplicative:

12 systems * 3 compilers * 3 MPI’s * (assorted versions) * (other oddities) = Just too much

slide-11
SLIDE 11

Slide 11

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy's NNSA

(LA-UR-18-26078)

Spack, as the Foundation

Spack is good at what it does. Build everything else around it.

slide-12
SLIDE 12

Slide 12

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy's NNSA

(LA-UR-18-26078)

Wrapping Spack, Requirements

  • Per (Environment Version) environment definitions
  • Automated building of each environment

– Host awareness – Scheduler awareness

  • Separation of User Modules from Spack Modules
slide-13
SLIDE 13

Slide 13

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy's NNSA

(LA-UR-18-26078)

Spack Environment Wrapper

Environment Definition Spack

(shared)

Programming Environment Q3 2018

Spack Wrapper

slide-14
SLIDE 14

Slide 14

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy's NNSA

(LA-UR-18-26078)

Module Separation

bash $ module load mvapich2 Generic Loader

  • Which environment?
  • What dependencies?
  • Dependency defaults?
  • Module default?

Spack Wrapper

Mvapich2.tcl Module System (The Real) mvapich2_(hash).tcl

slide-15
SLIDE 15

Slide 15

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy's NNSA

(LA-UR-18-26078)

Famous Last Words

  • This should be easy!
slide-16
SLIDE 16

Slide 16

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy's NNSA

(LA-UR-18-26078)

Questions