La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

HPC et Windows 2003 CCS pour les développeurs

Présentations similaires


Présentation au sujet: "HPC et Windows 2003 CCS pour les développeurs"— Transcription de la présentation:

1 HPC et Windows 2003 CCS pour les développeurs
Visual Studio 2005

2 Objectifs de la session
Pré requis : Objectifs de la session Introduction au HPC avec Windows CCS pour les développeurs et Visual Studio 2005 Démonstration(s) sur le développement d’une application parallèle

3 Environnement de développement de Windows 2003 Compute Cluster Server’s
Le Job Scheduler Possibilité de soumettre et de contrôler le Scheduler via des APIs COM ou .NET Application MPI Dérivée de l’implémentation MPI-2 d’Argonne National Lab (MPICH2) MS MPI c’est 2 parties distinctes Pour les éditeurs de logiciels: + de 160 Fonctions (mais on peut s’en tirer avec environ 10 Fonctions) Pour les utilisateurs: en ligne de commande (mpiexec) ou avec l’outil graphique qui lance les Jobs. Avec CCS, il est possible d’utiliser n’importe quelle implémentation MPI Visual Studios 2005 Nouveau débogueur parallèle. Supporte la Pile Message Passing Interface (MS-MPI) Supporte Open Message Passing (OpenMP).

4 Visual Studio® 2005 DébogeurParallèle Support D’OpenMP
3/26/2017 3:56 PM Visual Studio® 2005 DébogeurParallèle Support D’OpenMP © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

5 Windows Compute Cluster Server Comment ça marche ?
3/26/2017 3:56 PM Windows Compute Cluster Server Comment ça marche ? Head Node Job Mgmt Resource Mgmt Cluster Mgmt Scheduling Active Directory Web Services Jobs Policy, reports User Desktop App Input Admin Console Job Mgr UI Management Tasks Admin Cmd line Cmd line Data The compute cluster can run the high performance jobs in a secure, reliable and transparent fashion. Thru the integration with Active Directory, the jobs are running under the submission user’s security context, able to access the data residing on the corporate network in ways that the same application does on the users workstation. The Compute Cluster works as follows: User stages the data into a shared file system or the database The user submit jobs to the Job Scheduler via a wide spectrum of mechanisms: (1) command line interface (2) Job Manager UI (3) Integrated desktop applications thru the COM API and (4) Web Services API The scheduler allocates idle resources for the job, once allocated multiple tasks are dispatched to the allocated nodes so that the execution time are accelerated These tasks can use the built-in MPI stack or run independently to complete a parametric sweep These tasks are running inside the users’ security context validated against the Active Directory Domain\UserA High speed, low latency interconnect DB/FS Node Manager Job Execution User App MPI 5 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

6 MS MPI Utilise winsock 3/26/2017 3:56 PM MPI WinSock DLL
User Mode HPC Application MPI WinSock DLL Switch traffic based on sub-net Winsock Switch IB w/ RDMA GigE w/ RDMA IB WinSock Provider DLL Ethernet This is a picture of the WinSock Direct architecture which is a collaboration of the OS and IHV drivers. The WinSock switch channels the IP traffic to the appropriate network components based on subnet. Show IP, GigE, and IB paths. GigE RDMA WinSock Provider DLL User API (verbs based) Manage hardware resources in user space (eg., Send and receive queues) User Host Channel Adapter Driver TCP IP NDIS Kernel Mode Miniport (GigE) Miniport (IPoIB) OS component Kernel API (verbs based) Virtual Bus Driver Host Channel Adapter Driver IHV-provided component Networking Hardware 6 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

7 Comment développer des applications parallèles
Message Passing Comment développer des applications parallèles

8 Les 2 Apis les plus populaires pour le HPC
OpenMP Fonctionne en mode mémoire partagée et seulement sur une machine physique. Assez simple à utiliser (plus difficile à déboguer ;-) il suffit d’identifier et de marquer une boucle avec un pragma Message Passing Interface (MPI) Fonctionne en mémoire partagée (sur une machine) and en cluster (multiple machine) Ample MPI API Contrôle fin des messages entre plusieurs processus (EXE) Collecte et réduction des données en un seul appel Plus difficile à utiliser que OpenMP, mais beaucoup plus simple que d’attaquer directement les APIs sockets. Lister les autres méthodes

9 3/26/2017 3:56 PM A propos de MPI Les systèmes de départ HPC n’étaient pas portables (Intel’s NX, IBM’s EUI, etc) Le Forum MPI à vue le jour en 1992 avec une large participation de : vendors: IBM, Intel, TMC, SGI, Convex, Meiko portability library writers: PVM, p4 users: application scientists and library writers MPI est une spécification standard avec de nombreuses implémentations. MPICH et MPICH2 sond des implementations d’Argonne MS MPI est basée sur ( et compatible avec ) MPICH2 D’autres implémentations : LAM-MPI, OpenMPI, MPI-Pro, WMPI Pourquoi le team MS HPC a choisi MPI? Car MPI est de-facto le standard pour la programmation parallèle sur différent nœuds. Les API MPI sont divisée en 3 parties Intégralité des fonctionnalités +160 fonctions. Sécurité des processus et communication. Un executable sur la ligne de commande (mpiexec.exe) pour démarrer des Jobs. MPI is a specification to which many companies build. MPI has 2 parts: API for ISVs, Job launcher for Users. MPI’s primary function: make inter-process communication easier and increase the portability of programs that use it. 9 © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

10 Développer une application HPC avec Windows 2003 CCS
Avons-nous forcement besoin de ses deux APIs pour développer une application HPC ? Quels langages sont supportés ? Puis-je développer une application HPC avec le Framework .NET ?

11 La vue du développeur sur un Cluster
Developer Computer on a Corporate Network Head Node PC du développeur Compute Node Remote Debug SDK Compute Node Compute Node Remote Debug Remote Debug

12 Démonstrations

13 Ressources CCS & MS MPI Microsoft HPC web site
Argonne National Lab’s MPI website Tutorial from Lawrence Livermoore National Lab Microsoft HPC newsgroup microsoft.public.windows.hpc Microsoft HPC community portal

14 Questions ?

15 © 2006 Microsoft Corporation. All rights reserved.
This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.


Télécharger ppt "HPC et Windows 2003 CCS pour les développeurs"

Présentations similaires


Annonces Google