Gestionnaire de batch

Un gestionnaire de batch (ou Batch Scheduler) est un logiciel permettant d'allouer des ressources en fonction des utilisateurs, de leurs jobs et des priorités ( = jobs manager/scheduler + resources manager) sur un cluster.

SGE

Sun Grid Engine. C'est un gestionnaire de batch très utilisé/déployé. SGE fut créé (à partir de Codine/GRD) puis porté par Sun sur Solaris, en 2000, suite à l'acquisition de l'entreprise Gridware. Suite au rachat de Sun par Oracle, SGE devient Oracle Grid Engine. Racheté depuis par Univa. La version propriétaire de SGE est donc désormais Univa Grid Engine.

OGS

Open GridScheduler est l'un des deux forks (avec SoG) OpenSource du projet SGE OpenSource, fermé en 2010. Il n'a pas été mis à jour depuis 2012. C'est cette version qui est incluse dans Roll SGE de RocksClusters.

SoG

Son Of GridEngine est l'un des deux forks (avec OGS) OpenSource du projet SGE OpenSource, fermé en 2010. Il reste encore assez actif. Ce code représente certainement l'avenir (s'il y en a encore un) de SGE version OpenSource.

Univa GridEngine

Univa est une société qui a racheté le code propriétaire Oracle de SGE. Certains des principaux développeurs de SGE ont intégré Univa.

RocksCluster

RocksCLuster, développé par le "San Diego Supercomputer Center" à l'UCSD (Université de Californie, San Diego) est une distribution Linux dérivée de CentOS dont le but est de donner la possibilité d'installer un cluster de calcul clé en main, de manière simple. Les surcouches utilisées pour cette distribution clé en main sont une suite de codes en python "rocks", une base mysql, anaconda/kickstart, apache, 411, NFS et autofs. Des packages "rolls" sont proposés en standard pour compléter la distribution (ganglia, SGE, hpc, bio, perl, python, KVM, ZFS...).

Appliance RocksCluster

Une appliance RocksCluster permet un découpage du cluster en plusieurs groupes de machines. Ce découpage permet de lancer des commandes rocks juste sur un groupe de machines mais aussi et surtout permet d'avoir un schéma de (post-)installation KickStart différent que pour les autres machines (voir ici).

411

C'est un démon linux développé par les développeurs de RocksCluster pour déployer les utilisateurs et groupes du noeud maître.

Roll

La distribution RocksCluster est découpée en Rolls. Ainsi, cette distribution est modulable. Il est par exemple possible de rajouter un Roll SL afin de passer sur une distribution ScientificLinux et l'utiliser à la place du roll OS. D'autres Rolls permettent de déployer un ensemble de packages préconfigurés.

Modules

Modules ou plus exactement Environment Modules permet de gérer dynamiquement les variables d'environnement de vos utilisateurs. Ainsi, un utilisateur peut exécuter plusieurs versions d'un même logiciel en changeant simplement de contexte par module.

File Staging

Technique en mode diskfull qui permet à un utilisateur de copier ses données sur le noeud d'exécution localement afin d'accélérer les I/Os. De manière générale, il s'agit de rapprocher au maximum les données des processus.

Fair Sharing

Le but du Fair Sharing est d'avoir un partage des ressources équitables. Différentes techniques existent, toutefois, elles n'ont pas le même degré d'équité ou ont une définition différente d'équitable.

I/Os

Inputs/Outputs (entrées/sorties). Elles peuvent s'appliquer aux disques, au réseau, etc... Il est utile de mesurer ces valeurs pour connaître les performances de notre cluster, en compagnie du nombre de Flops.

Flops

Nombre d'opérations à virgule flottante par seconde.

FIFO

First In, First out. Pile à opposer aux piles LIFO (Last In, First Out).

Environnement parallèle

Un Environnement parallèle dans SGE permet de définir la manière dont les jobs vont être exécutés dans le cadre d'applications parallélisées (multithreads, MPI...).

Queue

Une queue permet à un gestionnaire de batch de découper un cluster en plusieurs sous-grappes fonctionnelles/matérielles. Elle peut être explicitement déclarée à la soumission du job ou non (le job sera lancé où il peut en fonction des droits des disponibilités...).

userset

Un userset permet de définir un groupe d'utilisateur SGE afin de définir des droits / des accès spécifiques.

checkpointing

Permet à un job qui s'est arrêté de reprendre où il en était. Nécessite de stocker ce qui est mémoire. Intégré au job scheduler HTCondor par défaut.

Backfilling

Dans SGE, ce procédé permet de remplir au mieux les ressources disponibles en démarrant des jobs courts, à faible priorité, alors que d'autres jobs - plus importants (en priorité/temps) - sont en attente (d'une Advance Reservation par exemple).

Advance Reservation

Ce procédé permet à SGE de réserver des ressources pour un utilisateur sur une période donnée.

MPI

Message Passing Interface est une norme de communication définissant une bibliothèque de fonctions utilisables en C/C++/Fortran. Il y a deux implémentations principales de MPI: OpenMPI et MPICH, tous les 2 sont OpenSource. Les communications MPI s'appuyant sur le réseau, il est important que celui-ci soit performant. (source:wikipedia)

OpenMP

Interface de programmation pour faire des applications multithreads (multicoeurs) en C/C++/Fortran. Des directives (ou pramas) permettent d'indiquer dans le code où paralléliser les tâches (généralement devant les boucles). La version 4 de OpenMP est compatible GPU mais n'est pas encore vraiment disponible (gcc5) (Exemples OpenMP4) A ne pas confondre avec OpenMPI qui s'utilise pour des applications MPI.

results matching ""

    No results matching ""