5-th Feel++ User Days

Feel++ from machine to code

Feel++ on clusters

Tier-0 system PRACE

Mesocenters

IRMA infrastructure

irmainfra

IRMA : Atlas

  • Computing cluster

  • Frontal: 64 cores (AMD) atlas.math.unistra.fr

  • 4 Nodes: atlas[1-4].math.unistra.fr

    • 24 cores (Intel) per node (2 threads/core)

    • 1 GPU node: atlas4

    • Accessible via job scheduler only (SLURM)!

Cluster job scheduler: SLURM

  • SLURM is commonly used

    • atlas

    • mesostra

    • FT2

    • Curie

    • …​

Usual SLURM commands

  • sinfo partition info

  • squeue view all jobs

  • salloc allocate interactively resources

  • sbatch send a bash script to queue

  • scancel cancel an existing job

Example on atlas:

salloc -t "03:00:00" -p public -J "fud5" --exclusive -N 1 srun --pty bash
squeue
sinfo
htop # display process
slurm atlas1
slurm atlas2

Cluster documentation

cluster feelpp doc

Container solutions

What is a container ?

  • Operating-system-level virtualization (Containerization)

  • Isolated (chroot similar)

  • Shared resources with host

  • Flexible

  • Perfect to embbed applications with complex dependencies

VM vs Container

containersvsvm

Container software

Feel++ Docker deployment

dockerhub

Feel++ Singularity deployment

gitlab singularity

Continuous Integration (CI)

Why do we want (CI) ?

  • Automatic tool to audit code

  • Check application are compiling

  • Check application are working

    • Run tests (minimal/full)

  • Avoid breakable merge from Pull Request (PR)

  • Generate Docker and Singularity images

Travis CI

travis

BuildKite

buildkite

Communication tools

Chat

Chat

No perfect tool yet
  • Markdown based

  • only real-time chat, no good thread support except for Twist.

  • No math support except for Gitter

  • May be Stride will do it

Code management

Announcement/news

Documentation:

Feel++ book

feelpp book

Reproducibility ?

Benchmarking

Everyone’s problem:
  • Machine hardwares impact (availability, upgrade)

  • Sofware environment impact

  • Storage: result not backed up (data size)

  • Incomplete simulation informations

Feel++ benchmark workflow

scheme benchtools1
Future: Feel++ event sytem to retrieve data any time, from any object

The end