Outils pour utilisateurs

Outils du site


logiciels:sparta

SPARTA

SPARTA is an acronym for Stochastic PArallel Rarefied-gas Time-accurate Analyzer.

SPARTA is a parallel DSMC code for performing simulations of low-density gases in 2d or 3d. Particles advect through a hierarchical Cartesian grid that overlays the simulation box. The grid is used to group particles by grid cell for purposes of performing collisions and chemistry. Physical objects with triangulated surfaces can be embedded in the grid, creating cut and split grid cells. The grid is also used to efficiently find particle/surface collisions.

  • Versions installées :
    • 2016-07-11 : avec librairie Intel MPI et support du format d'images PNG. L'exécutable s'appelle spa_icc+intel_mpi
    • 2017-03-16 : avec librairie MPI, support des images PNG et JPEG. Deux versions sont disponibles :
      • spa_icc+intel_mpi → compilé avec le compilateur Intel et librairie Intel MPI
      • spa_gcc+intel_mpi → compilé avec le compilateur GNU et librairie Intel MPI
    • 2017-12-17 :
      • spa_icc+intel_mpi → compilé avec le compilateur Intel et librairie Intel MPI
      • spa_kokkos_cuda → compilé avec GNU GCC + OpenMPI 1.8.2 + Cuda 7.5
      • spa_kokkos_cuda_ompi1107 → compilé avec GNU GCC + OpenMPI 1.10.7 + Cuda 7.5

Citer SPARTA

Si vous utilisez Sparta pour des travaux faisant l'objet de publications, vous êtes invité à porter attention au manuel de Sparta, qui précise la chose suivante :

1.5 Acknowledgments and citations

SPARTA development has been funded by the US Department of Energy (DOE).

If you use SPARTA results in your published work, please cite the paper(s) listed under 
the Citing SPARTA link of the SPARTA WWW page, and include a pointer to the SPARTA WWW 
Site (http://sparta.sandia.gov):

The Publications link on the SPARTA WWW page lists papers that have cited SPARTA. If your 
paper is not listed there, feel free to send us the info. If the simulations in your paper 
produced cool pictures or animations, we'll be pleased to add them to the Pictures or Movies 
pages of the SPARTA WWW site.

The core group of SPARTA developers is at Sandia National Labs:

    Steve Plimpton, sjplimp at sandia.gov
    Michael Gallis, magalli at sandia.gov 

Utilisation

Sélection de la version

Pour sélectionner la version voulue : utiliser les modules

Par exemple :

module load sparta/2016-07-11

Exemple de fichier batch

Dans l'exemple suivant, nous lançons sparta sur 4 processeurs :

#!/bin/bash
#
#SBATCH --partition=normal
#SBATCH --tasks=4
#SBATCH --cpus-per-task=1
#SBATCH --mem=2g

module load sparta
srun spa_icc+intel_mpi -sc none < in.free

Notes sur les différentes versions, avec support GPU / MPI

  • Sparta 23Dec2017 avec Kokkos (GPU) + OpenMPI 1.8.2
    #SBATCH --tasks=1
    #SBATCH --gres=gpu:2
    
    module unload configuration
    module load sparta/2017-12-23
    module load mpi/openmpi/1.8.2-gcc64
    
    # Uniquement en mono-tâche :
    mpirun spa_kokkos_cuda -sc none -sf kk -k on g 2 -pk kokkos reduction atomic comm threaded -v x 16 -v y 10 -v z 20 -v t 100 -in in.sphere -log "log.sparta.$SLURM_JOBID"
    # On comme ça avec plusieurs processus :
    srun --mpi=pmi2 spa_kokkos_cuda -sc none -sf kk -k on g 2 -pk kokkos reduction atomic comm threaded -v x 16 -v y 10 -v z 20 -v t 100 -in in.sphere -log "log.sparta.$SLURM_JOBID"
  • Sparta 23Dec2017 avec Kokkos (GPU) + OpenMPI 1.10.7 : arrive à fonctionner en parallèle
    #SBATCH --tasks=2
    #SBATCH --gres=gpu:4
    
    module load sparta/2017-12-23
    module load mpi/openmpi/1.10.7-gcc64
    module load gcc/4.9.4
    
    srun --mpi=pmi2 spa_kokkos_cuda_ompi1107 -sc none -sf kk -k on g 2 -pk kokkos reduction atomic comm threaded -v x 16 -v y 10 -v z 20 -v t 100 -in in.sphere -log "log.sparta.$SLURM_JOBID"
logiciels/sparta.txt · Dernière modification: 2018/04/10 20:18 de montap01