2
Nouveautés :Windows HPC Server 2008 R2 et le vol de cycles
Mercredi 9 Février : 11H00 à 12H00
Muriel BARTHELEMY– Commerciale Technical Computing
Thomas VARLET – Expert Technical Computing
Microsoft France
3
Agenda
Initiative Technical ComputingWindows HPC Server 2008 R2Administration/surveillance du clusterAjouter de la puissance au clusterUtilisation du clusterDéveloppement d’applications parallèles
4
Initiative Technical Computing
5
Tendances ayant un
impact sur le HPC
Explosion des données• Gestion des
données • Analyse des
données
Contrôler et aligner les couts• Coût total • Unifier
l’infrastructure d’entreprise et le HPC
Plus de puissance de calcul
• Plateforme Multi-coeur
• Cloud computing• GPU
Rendre le HPC plus accessible
• Rendre l’accès plus facile pour les utilisateurs d’organisations de toutes tailles
• Utiliser les compétences des équipes IT pour administrer les ressources HPC
Tendances dans le HPC
6
Vision de Microsoft pour le HPC
Réduire la complexité
Mainstream HPC Ecosystème large
6
Fournir une plateforme, des outils et un écosystème, le tout intégré et complet pour réduire les coûts et la
complexité du HPC. Offrir une vision claire et complète du futur.
Faciliter le déploiement des
clusters de calculs
Simplifier la gestion de clusters de toutes
tailles
Intégrer les clusters avec l’infrastructure
existante
Adresser les besoins traditionnels du HPC
Adresser les technologies émergeantes
Offrir un accès simple aux puissances
fournies par le HPC
Augmenter les nombre d’applications
parallèles
Offrir un large choix d’outils de
dev./langages /bibliothèques
Construire un univers plus large
d’administrateurs / de développeurs et
d’utilisateurs
7
HPC hautement « scalable » et efficace Construit à partir de Windows Server 2008 R2, Extensible à des milliers de serveurs, Eléments d’administration personnalisable pour un
meilleur contrôle Evolution du modèle SOA pour une programmation plus
facile et une plus grande extensibilité Développement parallèle avec VS 2010 & .NET 4.0 HPC Services pour Excel ® 2010 Extension des capacités via les stations de travail et
Windows Azure
20102006 2008
Windows HPC aujourd’hui
8
Windows HPC Server 2008 R2Une plateforme complète et intégrée de cluster HPC Construit à partir de Windows Server 2008 R2 64-bit Répond aux besoin actuels et futurs du HPC
Windows Server 2008 R2 HPC
Edition
• Securisé, fiable, testé • Support de hardware haute performances (x64, réseaux rapides, GPU)
Microsoft HPC Pack 2008 R2
Enterprise
• Ordonnanceur• Gestion des ressources • Gestion du Cluster• Message Passing Interface
• Support de Windows 7• Support de Windows Azure
Microsoft Windows HPC
Server 2008 R2 Suite
• Propose une solution complète
• Rentabilise les investissements sur l’administration Windows et ses outils
• Rend les opérations aussi faciles que sur un seul système
9
Windows HPC Server 2008 R2 Suite
Cluster utilisant un hardware standard
HPC Edition
SOA
MPICluste
rSOA
ExcelISV /OSS
Applications
Système d’exploitation
HPC Middleware
Pack
Applications HPC
10
Client Cluster CloudUne
machines avec un seul
espace d’adressage
mémoire
Nœuds multiples,Mémoire
distribuée
Nœuds multiples,Mémoire distribuée,
Capacité à la demande
Microsoft Technical Computing
11
On-premise
Windows HPC et le Cloud
Desktop User
HPC Head Node
Broker Node(s)
HPC Cluster
Desktop Compute Cloud via Idle Workstation Cores
Azure
Azure Compute Instances
Azure Compute Proxies
12
Windows HPC Server 2008 R2
13
Windows HPC Server 2008 R2
13
Modèles d’application
multiples
Administration
Outils de dev.
Parallèle & Cluster
Technologies
nouvelles
Scale
Performance
Part
ners
Secu
re
• MPI• Job en batch• Mode interactif (SOA)• Calculs distribués• « Business Critical » SOA• Excel et apps ISV• Politique d’utilisation du cluster
• Déploiement• Configuration• Monitoring• Diagnostics• Trouble Shooting• Diskless & Dual-boot• Reporting• Tuning de Performance
• Private clouds• Public clouds• HPC comme un service• Big Data Analytics• Visualisation• Workflow intégré
• IDE intégré• Debugger MPI• Profiler MPI• debugger SOA• Task Parallel Library, PLINQ• Support intégré des GPU
1000s de machines
14
Architecture d’un cluster HPC
Compute Nodes
HPC Clients
Head Nodes
Active Directory
Jobs
Jobs
Jobs
Windows HPC Server 2008 R2 cluster
Requests
15
Rôles dans WHPCS R2• Head Node
Serveur qui permet d’administrer et d’utiliser les ressources de calcul du cluster, c’est l’interface du cluster
• Broker NodeServeur(s) qui dirige(nt) les appels aux services WCF depuis les clients SOA vers les services SOA sur les computes nodes
• Compute NodeServeurs sous WS2008/WS2008 R2 x64 qui fournissent de la puissance de calculs aux utilisateurs Toujours disponibles
• Workstation nodePC sous Windows 7 qui fournit de la puissance de calcul additionnelle au clusterDisponibilité variable en fonction des choix de l’organisation
• Azure nodeRessource supplémentaire provisionnée dans Windows Azure
SP1
16
Workstation Nodes
Jobs Jobs
Mise en oeuvre des rôles
HPC Clients
Head Nodes
Active Directory
Broker Nodes
Jobs
WCF request
Azure Node
Jobs Jobs
Compute Nodes
Jobs
Jobs
Jobs
17
Administration et surveillance du cluster
18
Administration du cluster• Une seule console pour TOUTES les taches
d’administrationInterface
GUI, PowerShell, Command Prompt
DéploiementMonitoringDiagnostics
• Gestion des utilisateurs/administrateurs du cluster
• Gestion des serveursEtats :
Santé : services HPCStatuts : ordonnanceur
Organiser :Création de groupes de machines
P. Ex. : Groupe machines avec/sans GPUP. Ex. : Groupe machines avec ANSYS Fluent
Passer des commandes
• Gestion des mises à jours
19
Administration du clusterdéploiement
• Déploiement rapide de cluster ayant plus de 1000 machines
Déploiement Parallèle en utilisant le mode multicast de WDSSurveiller l’état du déploiement
• Wizzard de déploiement « To-Do list » montre les étapes
• Générer/capturer des images, personnalisation de l’installation
• Boot iSCSI sur le réseau pour des serveurs sans disque local
• Dual-boot pour lancer des applications Windows et Linux sur le même cluster
Partenariat avec Platform Computing et Adaptive Computing
NEW
20
Administration du cluster Cluster Monitoring
• Heatmap montre le statut global du cluster
Jusqu’à trois métriques par serveurOnglets personnalisables et multiples pour des vues différentes de la Heatmap.
• Voir les machines groupées par hardware; software ou par des attributs personnalisés
• Surveillance sans agent des computes nodes
• Voir le statut et le progrès des jobs et des tâches
21
Administration du clusterDiagnostics & Reporting
• Intégration avec Event Tracing for Windows (ETW) pour du « trouble shooting ».
• Tracing SOA , debugging MPI et SOA
• Collection de diagnostics qui permettent de vérifier un grand nombre de fonctions du cluster (déploiement, infra, perf, … )
• Framework extensible de diagnostics
Ouvert aux développeurs Création de diagnostics personnalisables dans tous les langages de programmation ou scripts.
• Infrastructure extensible de reportingInterface d’administration du clusterLes données sont stockées dans une base SQL, elles sont exportables via PowerShell, SQL Server Reporting services ou Excel.
P.ex. : Silverlight reporting samples
22
Haute disponibilté
• Les parties clé du cluster sont toujours disponibles
Head Node• Active/passif• Cluster haute disponibilité SQL
SOA• Broker Node
– Active/passifs– MSMQ, MSCS Storage
Haute disponibilité sur les requêtes SOA• MSMQ
• Jobs Re-soumis si le nœud « fail »
23
Ajouter de la puissance au cluster
24
Ajouter des Workstation au Cluster
Sommaire• Ajouter des machines sous Windows 7
comme ressources de calculs• Voir et surveiller les stations comme
des computes nodes• Calendrier de disponibilité
Etendre la capacité du cluster en utilisant des stations de travail pour lancer des jobs de calculs
PrérequisWindows 7 Professional ou Enterprise, 32 ou 64-bit (nécessite le support Active Directory)Desktops et cluster dans le mm domaine AD
25
Cluster HPC Server 2008 R2 avec des stations de travail
Compute Nodes
Clients HPC / Station de
travail
Requête
Head Nodes
Active Directory
Jobs
Jobs
Jobs
Windows HPC Server 2008 R2 cluster
Jobs
Jobs
Jobs
26
Workstation Nodes : disponibilité
• HPCS R2 ne déploie pas les stations !
• Disponibilité ManuelleDéfinie par l’administrateur du cluster
• CalendrierDonne la disponibilité des stations sur une semaine
• Vol de cycleUtilisation quand la station n’est pas utilisée
SP1
27
Cluster HPC Server 2008 R2 avec des Azure Node
Compute Nodes
HPC Clients
Head Nodes
Active Directory
Jobs
Jobs
Jobs
Broker Nodes
Azure Node
SP1
Jobs Jobs
28
HPCS dans Azure: Le Cloud à votre service
Retour en local
Début dans Azure, puis ajout en local
1. Service SOA du Cluster
2. Calcul distribué
1. En local, déployé dans Azure.
2. Tout dans Azure: SQL Azure, Azure Storage
Tout dans le cloud
Toutes les ressources dans Azure
Tout localToutes les ressources sont
locales
MixeCompute Nodes locaux et
ajout dynamique de ressources dans le Cloud
Quatre modèles de déploiement
Deux modèles de stockage Deux modèles d’applications
SP1
29
Utilisation du cluster
30
Soumettre des jobs
Compute Ressources
HPC Clients
Head Nodes
Active Directory
Jobs
Jobs
Jobs
Windows HPC Server 2008 R2 cluster
Requête
Requête
Requête
HPC GUI
HPC CMD/PS
Web Interface
Apps Requête
Jobs
31
Une plateforme pour tous types d’applications : ordonnanceur• Granularité des ressources
core, socket ou server
• Gestion des différents types de JobsSOA, MPI, Batch, Interactive, balayage paramétrique
• Support des différents types de politique d’ordonnancement
Grow & Shrink, Preemption, Service Balanced, Priority, Backfill
• Interfaces MultiplesCommand Line, GUI, SharePoint, Windows PowerShell 2.0, COM, .NET
• Support de large cluster (> 1000 serveurs)
• Support de matériel hétérogèneGroupe de serveur
32
Ordonnanceur : Gestion
Fonctionnalités But
Resource Match-making
Permet à l’utilisateur de spécifier ses besoins (cpu, réseau et applications) de manière à ce que l’ordonnanceur puisse bien placer le job
Job ProfilePermet à l’administrateur de créer des politiques d’utilisation optimales pour l’utilisateur et le cluster
Allocation de ressources à plusieurs niveaux
Permet à l’ordonnanceur de placer d’une façon optimale les applications intensives pour les accès mémoire et IO
PréemptionPermet aux job urgents de passer le plus rapidement possible afin de satisfaire les besoins importants pour l’organisation
Grow & Shrink Maximiser l’utilisation des ressources et la production du cluster
Service BalancedDémarrer le plus de jobs possible afin d’augmenter la production du cluster
33
Performance et extensibilité: Network Direct
• Un design très proche du hardware pour offrir des performances proches des interfaces haute performance des réseaux rapides
• Performances équivalentes aux couches optimisées
• Drivers Network Direct pour les réseau haute performance:
Infiniband
10 Gigabit Ethernet (iWARP-enabled)
MS-MPI peut utiliser 4 modes:
Mémoire partagée
TCP/IP (Ethernet “normal”)
Winsock Direct pour un RDAM basé sur des sockets
Interface NetworkDirect
User Mode
Kernel Mode
TCP/Ethernet Networking
Kern
el B
y-Pa
ss
MPI AppSocket-Based App
MS-MPI
Windows Sockets (Winsock + WSD)
Networking HardwareNetworking HardwareNetworking Hardware
Networking HardwareNetworking HardwareHardware Driver
Networking Hardware
Networking HardwareMini-port
Driver
TCP
NDIS
IP
Networking HardwareNetworking HardwareUser Mode Access Layer
Networking Hardware
Networking HardwareWinSock
Direct Provider
Networking Hardware
Networking Hardware
NetworkDirect Provider
RDMA Networking
OS Component
HPCS2008 Component
IHV Component(ISV) App
Une nouvelle interface réseau de type RDMA pour de meilleures performances
34
Plateforme pour tous types d’applications SOA sur un cluster HPC
• Expose les fonctions de calculs comme un service WCF
• Applications distribuées
• Utiliser la puissance offerte par les cluster aux applications business
• Optimisé pour une latence faible (ms) et une charge importante
• Debugger et analyser afin de créer des applications robustes
• Support pour des applications critiques
Tolérance aux pannes du hardware et du réseau
Tolérance aux pannes des postes/applications clientes
35
4. requêtes
6. Réponses
Compute Nodes
Workstation
5. Réponses
3. requêtes
2. Le gestionnaire de session démarre le
job WCF Broker et le
job WCF Service pour le job client
1. Crée une Session
HPC Cluster SOAOrganisation des requêtes
Construit sur des Web Service Standards (WS* interop)
Head Node
Broker Node
36
Tourne de multiples instances Excel 2010 sur Cluster HPC Chaque instance lance une itération du même classeur Peut-être lancé depuis Excel 2010 ou une appli Windows Suppression des boites de dialogue
Classeur Excel sur un Cluster
Tourner en parallèle sur un cluster UDF Excel Excel 2010 inclut une nouvelle API et des options pour un cluster HPC Support des fichiers.XLL développés avec le SDK Facile à développer sur un desktop et déployé sur un cluster
UDF Excel sur le Cluster
Se connecte au cluster comme un client SOA code VSTO dans un classeur fait appel à un service SOA Entrées et sorties gérées par le développeur Excel
Client SOA Excel
NEW
NEW
Accélérer Excel 2010
37
Exécuter un classeur Excel vers un cluster
Compute Nodes
Spreadsheet
Head Node
Brokers
Requête de sessi
on
Assigne un broke
r
Soumission de tache
Assignation d’une tache
Résultats
Résultats
38
Exécuter des UDFs sur un Cluster
Compute Nodes
Spreadsheet
Head Node
Brokers
Requête de sessi
on
Assigne un broke
r
Soumission de tache
Assignation d’une tache
Résultats
Résultats
UDF
UDF
UDF
UDF
UDF
UDF
39
Accélérer Excelclasseurs Excel vs. « Remote » UDFs
Classeur Excel sur un cluster
Calculs complexes ou basés sur des feuilles Excel.
Des entrées multiples pour produire des sorties multiples
Quand Excel est utilisé comme un moteur de calcul et pas une « simple » interface
Code VBAFournit une façon simple et non-destructive de porter des classeurs sur un cluster
Pas besoin de développer une nouvelle plateformeProgrammation ExcelMaintenance simple par les utilisateur
Gestion des pop-up ExcelExtensibilité : limité par le hardware et SOA , pas Excel
Remote UDFs
Calculs encapsulés dans une fonction
P. Ex. custom .XLL
Calcul complexe ou gros consommateur de temps Peu de changement sur la fonction dans le temps
Une recompilation nécessite un redéploiement sur le cluster
Les calculs doivent être indépendants d’autres cellules
Pas d’interdépendance au sein de la feuille
40
Développement d’applications parallèles
41
Vue globale: Programmation parallèle sous Windows
Une sélection riche et intégrée d’outils/compilateurs/debugger/profiler pour écrire des
applications parallèles
Ecrire une apps• Visual
Studio IDE• C• C++• Intel
Fortran• PGI
Fortran• C#• Python• F#• Cygwin
env.• MingW
env.
Exécuter• MPI avec
support RDMA
• High Performance MPI.NET
• OpenMP• GPGPU
(Nvidia, ATI)
• TPL (.NET parallelization)
• PPL (C++ parallelization)
• Parallel LINQ
Debugger• Debugger
Cluster MPI
• Add-in VS de Allinea
• Debugger Multicore
• Marmot MPI Analyzer
Profiler• Visual
Studio• ETW:
support de MPI
• Vampir MPI trace viewer
• Xperf ETW viewer et Analyzer
• VS/ETW Multicore Profile viewer
Gestion• Life Cycle
mgmt • Bug
Tracking • Support
de tests• Gestion
des version
• Metrics• Analyse
42
Windows HPC Server 2008 R2Dévelopement d’applications parallèles pour un cluster
• Visual Studio et ses add-in pour le développement d’applications parallèles
• Support du développement MPI (debugger)
• Support du développement d’applications SOA pour un cluster
• Parallel LINQ et Task Parallel Library (TPL) inclus dans le .NET Framework 4.0
• Support du développement pour des GPGPU en partenariat avec NVIDIA
• Support d’outils et bibliothèques tierces
43
Développement d’ApplicationNVIDIA Parallel Nsight
• GPU computing
CUDA COpenCLDirectCompute
• Graphiques
DirectX 10 and 11OpenGL
• OS
Windows Vista, Windows 7, et Windows Server 2008Intégration dans Visual Studio 2008/2010
Accélérer le développement d’applications CPU + GPU
44
Technologies parallèles dans Visual Studio 2010
• Rendre les applications parallèles plus productives et plus accessibles
Abstraction et construction de haut niveauFaciliter et réduire l’impact du développement parallèle sur le codeAider les développeurs à exprimer un parallélisme au sein du code et le faire correspondre aux ressources hardware
• Inclut des outils de développement avancés qui comprennent les constructions parallèles
debugger et profiler
45
Pour nous suivre et participer :
• modelingtheworld.com
• twitter.com/modelingtw
• facebook.com/modelingtheworld
• http://blogs.technet.com/WindowsHPC/
• www.microsoft.com/hpc onglet : communauté, tous les forums pour toutes les
questions
• HPC sur Technet : http://technet.microsoft.com/en-us/library/cc514029.aspx
• HPC sur MSDN : http://msdn.microsoft.com/en-us/library/bb743248.aspx