Dans le cadre des DreamTech du SED, on se propose de faire une présentation un peu poussée du layer distributed de dtk qui commence à arriver à maturité.
Le 1er opus de cette présentation aura lieu mercredi prochain (29 avril) de 10 à 11h30 en salle Khan 01.
Nous passerons en revue l’architecture de cette couche logicielle.
Plus précisemment, nous aborderons:
-
Management de ressources de type cluster via l’API dtkDistributed
Nous décrirons l’ensemble des interfaces qui permettent de se connecter à un cluster, d’en connaitre les ressources (réseau, noeuds, etc) et d’y lancer des jobs:
- server manager
- controller
- slave
- ressource manager
Nous montrerons des exemples avec les backends Torque et OAR.
-
Application distribuée
Nous aborderons ici les interfaces qui facilitent l’écriture d’une application (GUI ou non) qui utilise plusieurs unités de calculs:
- distributed application
- communicator
- policy
- settings
Nous montrerons des exemples d’implémentation basés sur Qthread, MPI et MPI3.
-
Conteneurs distribués
dtkDistributed introduit un certain nombre de conteneurs (Array, Graph) qui ont vocation à masquer à l’utilisateur le recours explicite à des procédures de communication entre les processus.
Le but étant de donner à l’utilisateur, autant que possible, la possibilité de programmer “comme en séquentiel”:- container
- mapper
- array
- buffer manager
- cache
- navigator, iterator
Nous illustrerons chacun des points précédents par des exemples d’applications :
- Une application permettant d’afficher les ressources d’un matériel
- Une application distribuée effectuant un échange simple de données
- Une application de simulation numérique résolvant un système linéaire creux en paralèle.