Architecture Des Serveurs - Options
Architecture Des Serveurs - Options
Architecture Des Serveurs - Options
Serveurs - Options
Octobre 2001
René J. Chevance
Contenu
Parts de marché des serveurs
Options d’architecture
Couplage serré - SMP
SMP à grand nombre de processeurs (CC-NUMA, COMA)
Couplage lâche
Clusters Unix, NT et Sysplex
MPP
Relation architecture des serveurs/SGBD
Rapprochement des besoins, des options et comparaison des options
Exemples
Couplage serré - Multiprocesseur symétrique (SMP)
SMP à nombre modéré de processeurs
SMP à grand nombre de processeurs
CC-NUMA
COMA
Couplage lâche - Clusters et MPP
Conclusions et Perspectives
Références et adresses utiles
Compléments
Réseaux de stations de travail
Page 2 Supercalculateur vectoriel NEC SX-5
© RJ Chevance
Page 1
Marché des serveurs
Parts de marché 2000 pour les systèmes
moyen et haut de gamme (chiffres IDC)
Midrange Server ($100K to $1M) - 2000 Market $17.6B High End Server (>=$1M) - 2000 Market $11.4B
Source IDC Source IDC
Sun
HP
20%
Sun 7%
Compaq
HP 19%
Compaq 8%
23%
9%
Page 3
© RJ Chevance
Autres
2%
Unix
13%
Windows
Netware 41%
17%
50%
40% Windows
Linux
30%
Netware
20%
Unix
10% Autres
0%
Page 4 1998 1999 2000
© RJ Chevance
Page 2
Options d’architecture
Page 5
© RJ Chevance
© RJ Chevance
Page 3
Couplage serré - SMP
Processeur Processeur Processeur
Système d’exploitation
Contrôleur E/S Contrôleur E/S
ou
Ressources matérielles
(processeurs, mémoire, contrôleurs
et périphériques)
Dans un SMP, tous les processeurs peuvent accéder à toutes les ressources du système
(mémoire, dispositifs d'entrées-sorties). Un SMP fonctionne sous le contrôle d'un seul
système d'exploitation, qui gère donc l'ensemble des ressources du système.
Page 7
Le modèle naturel de programmation est le partage de mémoire entre les processus.
© RJ Chevance
Modèles de traitement
Modèles d ’exécution et de programmation
Mémoire
Mémoire partagée
partagée cohérente
cohérente
Mémoire Mémoire
partagée partagée
Processus
cohérente Passage cohérente
Processus de messages
Processus Processus
Processeur Processeur
Processeur Processeur Processeur Processeur Processeur
Processeur Processeur
Processeur Processeur
Processeur Processeur
Processus Processus Processus Processus Processus Processus
Processus Processus Processus Processus Processus Processus Processus
Page 8
© RJ Chevance
Page 4
Couplage serré - Avantages et inconvénients
+ "Scalabilité" du système à un − Existence d’un point de
coût modéré; défaillance unique constitué par
+ Augmentation de performance le système d’exploitation (ainsi
que par des éléments matériels)
aisée: ajout d'une carte ou d'un
module processeur; − Les opérations de maintenance
+ Efficacité multiprocesseur: nécessitent, généralement, l’arrêt
du système
l'ajout d'un processeur augmente
la puissance (dans des limites − Limitation du nombre de
définies); processeurs du fait des conflits
+ Simplicité et efficacité du modèle d'accès au niveau matériel (bus)
et logiciel (système
de programmation
d'exploitation, SGBD, ….);
+ Transparence des applications:
− Complexité du matériel et du
les applications pour "mono-
processeur" s'exécutent sans logiciel pour les SMP à grand
changement mais seules les nombre de processeurs (CC-
applications "multi-threaded" NUMA);
tirent parti de l'architecture; − Adaptation et réglage coûteux du
+ Disponibilité: suite à la panne système d'exploitation;
d'un processeur, le système peut − Adaptation nécessaire des
re-démarrer avec les applications pour tirer profit de la
processeurs restants; performance disponible.
Page 9
+ Possibilité de partitionner le
© RJ Chevance système
Couplage lâche
Applications Applications
Proc. Système(s) de
Proc. Réseau
Proc. Middleware Gestion de Bases
d’interconnexion
de Données
Ctrl.
Mémoire
Syst.
Système d’exploitation
Système d’exploitation
Système d’exploitation
Système d’exploitation
Ctrl E/S Ctrl E/S
• Le système est constitué par l'interconnexion, au moyen d'une technologie de réseau local rapide,
d'un certain nombre de systèmes indépendants (appelés nœuds) , chacun de ces systèmes possède
ses propres ressources (processeurs, mémoire, entrées-sorties) et fonctionne sous le contrôle de sa
propre copie du système d'exploitation.
• C’est un couplage lâche car les nœuds ne partagent pas de mémoire (cas général).
• Différences par rapport à un système distribué : homogénéité des différents nœuds (fournisseur et système
Page 10 d’exploitation), proximité géographique et image système unique pour certaines ressources.
• Le mode naturel de communication des applications est le passage de messages.
© RJ Chevance
Page 5
Cluster et MPP
Cluster MPP
Système Système
Système Système
d'exploitation d'exploitation
d'exploitation d'exploitation
+ "clusterisation" + "clusterisation"
+ "clusterisation" + "clusterisation"
°°° °°°
CPU Mem CPU Mem
CPU Mem CPU Mem
Réseau d’interconnexion
standard Réseau d’interconnexion spécifique
Share Nothing
Packaging spécifique
Shared Disk
Deux options d'architecture Typiquement une seule option
Page 11
au niveau des disques d'architecture au niveau des disques
© RJ Chevance
Réseaux d’interconnexion
Caractéristiques comparées
Débit
Latence Débit
Latence Débit
Latence
Débit
Latence
Page 12
© RJ Chevance
Page 6
Clusters
Ensemble de systèmes (noeuds) interconnectés
Réseau d'interconnexion de technologie standard e.g.
Ethernet, FDDI, Fibre Channel
Chacun de ces noeuds dispose de processeur(s), de mémoire,
de ressources locales d'entrées-sorties et dispose de sa
propre copie du système d'exploitation
Système d'exploitation dérivé d'un système existant (e.g. VMS,
Unix, NT) avec :
Vision de système unique (Single System Image ou SSI)
pour l'administrateur
Accès transparent à certaines ressources dites
"clusterisées" quelque soit leur localisation (e.g. système
de fichiers, adresse IP unique pour le cluster, files des
travaux d'impression, lignes de communication,....)
(Single System Image - SSI- pour les utilisateurs)
Concept introduit par Tandem (fin des années 70, objectif : FT)
et popularisé par DEC (1983, objectif : croissance)
Page 13
© RJ Chevance
Cluster(2)
+ Haute disponibilité intrinsèque − Efficacité multiprocesseur limitée
(indépendance des noeuds);
Implémentation aisée au niveau du
− Implique des modifications du
système d'exploitation pour le
matériel; fonctionnement en cluster (SSI
+ Compatibilité avec les systèmes difficile);
mono ou multiprocesseur au − Nécessite de modifier les applications
niveau des applications; pour pouvoir tirer profit de
l'augmentation de puissance procurée
+ Augmentation de performance par le cluster (i.e. capacité de
pour les SGBDs (OLTP s'il y a l'application à exploiter
peu d'interactions entre noeuds, simultanément plusieurs noeuds). En
DSS); pratique, seuls les SGBDs ont été
+ Intégration aisée de nouvelles
adaptés pour tirer profit de telles
architectures (e.g. Oracle Parallel
technologies (processeurs et Server Option);
nouvelles versions des systèmes − Standard de programmation des
d'exploitation); application parallèles émergents;
+ Partage transparent des − Limitation du nombre de systèmes
ressources "clusterisées ». interconnectés à quelques unités (de
l'ordre de la dizaine au maximum);
− Difficultés d'administration du cluster.
Page 14
© RJ Chevance
Page 7
Clusters Unix
Des fonctionnalités similaires mais une grande
diversité d ’implémentations
Des solutions spécifiques (DEC, HP, IBM, NCR,
Sun,...) dépendantes de chaque fournisseur
Des solutions éprouvées
La fonctionnalité de File System qui faisait
cruellement défaut sur les différents clusters Unix
(alors qu’elle était disponible que Vax Cluster
depuis 1983) commence à arriver (TruCluster de
Compaq, AIX, Solaris)
Absence d'API et de SDK standard
Pratiquement, seuls des fournisseurs de SGBD et
d’ERP ont adapté leurs produits aux clusters les
plus vendus sur le marché
Page 15
© RJ Chevance
© RJ Chevance
Page 8
MPP(2)
+ Avantage coût/performance vis à − Efficacité limitée
vis des super-ordinateurs pour
les applications scientifiques
− Technologie émergente
+ Scalabilité en performance
− Réseau d'interconnexion
spécifique
limitée seulement par le degré de
parallélisation de l'application − Implique des modifications du
(i.e. le MPP n’a pas les système (e.g. SSI)
limitations en nombre de − Standard de programmation des
processeurs du SMP ou du application parallèles émergent
cluster) − Difficulté de développement des
+ Potentiel de haute performance applications « parallèles »
(à la fois Speedup et Scaleup) en
environnement transactionnel
− Difficultés d'administration du
système
(OLTP) et décisionnel (avec
SGBDs adaptés) − Nombre limité d'applications
adaptées à ce type d'architecture
+ Haute disponibilité (potentielle)
Page 17
© RJ Chevance
Page 9
Relation architecture des serveurs/SGBD
Page 19
© RJ Chevance
Mem Mem
Mem Mem
CPU Mem
CPU CPU
CPU CPU
CPU CPU
Mem
Page 10
Relation SGBD - Architectures Share*
Analogie entre les architectures Share Everything, Share Nothing
et Share Disk avec l'organisation de guichets de service
Note : D'après une idée de J Papadopoulo (Bull)
Clients
(Processus)
Guichets
(Processeurs/
systèmes)
Dossiers
(Données)
Page 21 Modèle Share Everything Modèle Share Disk Modèle Share Nothing
© RJ Chevance
I - S ca lab ilité lim itée (d e 1 6 - In tera ctio n en tre le s - L e co û t d e l’ac cès à la - E q u ilib ra g e d e s ch a rg e s
N à 64 p ro ce ss eu rs) m a is n œ u d s p o u r la m é m o ire p arta g é e es t clé d iffic ile
C p e u t être éten d u e av ec sy n c h ro n isa tio n d e s p o u r la p erfo rm an c e d u - D iffic ile à ad m in istrer e t
O C C -N U M A m ise s à jo u r d es d o n n é es s ys tè m e à o p tim ise r d u fait d u
N - D isp o n ib ilité d u s ys tèm e - S a tu ra tio n d u rés ea u - M ém o ire p a rtag ée p a rtitio n n em en t d e s
V d iffic ile à as su re r d ’in terc o n n exio n p ar les s p é cifiq u e d o n n é es
E - S o lu tio n co û te u se p o u r tran sfe rts en tre n œ u d s et - L a fia b ilité et la - F o rte d é p e n d a n c e d e la
N u n g ra n d n o m b re d e d is q u es d isp o n ib ilité d u sy stè m e p e rfo rm an ce v is-à-v is d es
I p ro ce ss eu rs - C o û t d u m ain tie n t d e la ré clam en t u n e c o n ce p tio n c ara cté ris tiq u es d ré se au
E co h ére n c e d e co p ie s s p é cifiq u e d e la m é m o ire d ’in te rco n n e xio n
N m u ltip les (s i ré p lica tio n ) p arta g é e - C o û t d e la
T en p a rticu lie r e n c as d e - M o d è le d e p a rallélisa tio n , m ê m e
S m ise s à jo u r fré q u en tes p ro g ra m m a tio n ? p o u r d es req u ê tes
- le m éc an ism e - A b s en ce d e vo lo n té d e s im p le s
d ’in terc o n n exio n d es la p art d es fo u rn iss eu rs - C o û t d u m a in tien d e la
d is q u es lim ite le n o m b re d e S G B D stan d ard d e c o h é ren ce d e c o p ie s
d e n o eu d s s u p p o rte r d e s m u ltip le s (si rép lica tio n ),
p articu larités e n p artic u lier s i les m ise s
Page 22 a rch ite ctu rale s à jo u r so n t fréq u en tes
© RJ Chevance
Page 11
Offres SGBD et options d'architecture
Type Share Everything Shared Disk Share Nothing
d’architecture (SMP) (clusters et MPP) (clusters et MPP)
Commentaires:
Share Disk (Oracle). Tout noeud doit pouvoir accéder à toutes les données. Les échanges de données
transitent par les disques.
Share Nothing. Informix et DB2 sont basées sur une architecture de type "Function Shipping" i.e. envoi
de la demande de fonction à exécuter au noeud ayant l'accès aux données.
Share Disk suppose que l'efficacité du réseau d'interconnexion entre les noeuds et les disques est
suffisante pour s'affranchir de la répartition des données.
Share Nothing repose sur l'hypothèse que les données sont réparties de façon telle que les débits d'E/S
et les capacités de traitement sont utilisées de façon optimale (rôle clé de l'administrateur système dans la
répartition).
Page 23
© RJ Chevance
© RJ Chevance
Page 12
Rapprochement des besoins, des options et
comparaison des options
Page 25
© RJ Chevance
© RJ Chevance
Page 13
Critères de choix et architectures
B e soin M u ltipr oce ss e ur sy m é - C lu s ter M ac h in e s m as sivem en t
triqu e (S M P ) p ar allè le s (M P P )
D is p o n ib ilit é d e s
a p p lic a tio n s e t d e s ** * * *
o u tils d e d é v e lo p p e -
m ent
In té g r ité d e s d o n n é e s ** * * ** ** *
(D ép e n d d es S G B D e t (D ép e n d d es S G B D e t (D ép e n d d es S G B D e t
d es m o n ite u rs tr a n s ac - d es m o n ite u rs tr a n s ac - d es m o n it e u rs tr a n s ac -
tio n n e ls ) tio n n e ls ) tio n n e ls )
D is p o n ib ilit é ** * ** *
(E xis te n c e d e p o in ts d e (O b jec tif es s en tie l d e (N ’es t g é n é r ale m e n t
d éf ailla n c e u n iq u es ) l’arc h ite c tu r e ) p as u n o b jec tif)
P e rfo r m a n c e ** * ** **
(D an s les lim ites d e l a (D ép e n d d es c ar a c té- (D ép e n d d es c ar a c té-
c o n fig u r a b ilité ) ris tiq u es d e ris tiq u es d e
l’a p p lic a tio n ) l’a p p lic a tio n )
S c a la b ilit é ** * * *
(D an s les lim ites d e l a (D ép e n d d es c ar a c té- (D ép e n d d es c ar a c té-
c o n fig u r a b ilité ) ris tiq u es d e ris tiq u es d e
l’a p p lic a tio n ) l’a p p lic a tio n )
P r ix ** * ** *
(C on fig u r a tio n s p e tites (C oû t d u r és e a u
e t m o y e n n es ) d ’in te rc o n n e xio n e t
c ar ac tèr e n o va te u r)
S u p p o rt d u c lie n t- ** * ** **
s e rv e u r (A rc h itec tu r e m u ltis er - (A rc h itec tu r e m u ltis er -
ve u r) v e u r)
M a tu rité d e ** * ** *
l’a r c h it e c t u re (P lu s d e tr e n te a n s (P lu s d e q u in z e a n s (T ec h n o lo g ie é m e r-
d ’e xp é r i e n c e) d ’e xp é r ie n c e) g e n te )
P é re n n it é d e s in v e s - ** * ** *
tis s e m e n ts (L im ité e à u n e, vo ir e (P os s ib ilité d e m ixe r (T ec h n o lo g ie é m e r-
d e u x g é n é r a tio n s ) d iffér e n te s g é n é r a - g e n te )
tio n s )
Page 27
© RJ Chevance
Puissance relative
15
3
Version i
10
2
5
1
0
0
0 5 10 15 20 25
Nombre de processeurs 1 2 3 4 5 6 7 8
Nombre de processeurs
Page 14
Exemple de scalabilité SMP
Chiffres tirés de Large System Performance Report
d’IBM et portant sur la série S/390
12
10
CICS/DB2
8
IMS
6 Batch 1
Batch 2
4
Prog, Devt
2
0
1 2 3 4 5 6 7 8 9 10 11 12
Page 29
© RJ Chevance
500000
Non cluster
400000
Cluster
tmpC
0
0 50 100 150 200
Nombre de processeurs
• Les SMP sont plus efficaces que les clusters : communication par mémoire partagée, un seul SGBD
alors que dans les clusters les instances du SGBD doivent dialoguer et se synchroniser via le réseau
d’interconnexion. Les clusters ont un ratio de performance par processeur compris entre 2000 et 4000
tpmC par processeur alors que les SMP ont des ratios voisins ou supérieurs 8000 tpmC par processeur.
• Un SMP à 24 processeurs présente une efficacité surprenante. Les éléments pouvant expliquer cette
Page 30 différence peuvent se situer au niveau de la taille des caches (16 Mo de L2) et aussi par le fait qu’il s’agit
d’une version 64 bits du SGBD doté d’un réglage probablement très bien adapté du SGBD sur la plate-
© RJ Chevance forme système.
Page 15
Comparaison des performances (2)
Tendance de la performance SMP et clusters
Tendance de la performance TPC-C pour SMP et Clusters
Janvier 2001
700000
tpm -CCluster = 610,43 x nb_proc1,3211
600000 Non cluster
0
0 50 100 150 200
Nombre de processeurs
Page 31
© RJ Chevance
35
30
Alpha
25
PA
20
PowerPC
15
Intel
10
SPARC
5
0
0 10 20 30 40 50 60 70
Nombre de processeurs
• Interprétation délicate car différents SGBD sont mis en œuvre et de plus sous
différentes versions
• L’intensité de la compétition IA-32 dans la zone 4-8 processeurs favorise les progrès
• Les résultats PowerPC à 12 processeurs et à 24 processeurs montrent une très grande
efficacité.
• Les résultats pour les systèmes Sequent CC-NUMA à 32 et 64 processeurs n’ont pas été
Page 32
intégrés car ils n’ont pas été mis à jour depuis 1999 (et ils sont donc très en retrait).
© RJ Chevance
Page 16
Comparaison des performances (4)
Variation de l’efficacité SMP et Cluster entre 1999 et
2001
Variation de l'efficacité tmpC/processeur 1999-2001
10000
9000
8000
tpmC/processeur
7000
SMP 2001
6000
Cluster 2001
5000
SMP 1999
4000
3000 Cluster 1999
2000
1000
0
0 20 40 60 80 100 120 140 160 180 200
Nombre de processeurs
140,00
E/S par disque par seconde
120,00
100,00
40,00
20,00
0,00
0 50 100 150 200 250
Nombre de proce sseurs
• Pour ce calcul, on fait l’hypothèse que chaque tpmC engendre une demande de 30 E/S et
l’on s’est servit du nombre de disques utilisés dans la configuration mesurée :
• Valeur moyenne aux environs de 80 E/S par seconde et par disque
• Deux systèmes montrent même des valeurs de l’ordre de 120 E/S par seconde et par
disque ce qui est voisin de la saturation
• Les configurations moyennes de clusters demandent moins d’entrées-sorties que les SMP
Page 34
• Compte tenu de la relative faible progression des performances des E/S, l’amélioration des
E/S est un point clé
© RJ Chevance
Page 17
Positionnement des options d’architecture
Scalabilité
MPP
Cluster
SMP
FT
Monoprocesseur
Disponibilité
Page 35
© RJ Chevance
Couplage serré
Multiprocesseur symétrique
(SMP - Symmetric MultiProcessor)
Exemples
Page 36
© RJ Chevance
Page 18
Caractéristiques « Haut de Gamme »
La plupart des systèmes à grand nombre de
processeurs présentent des caractéristiques
communes telles que celles rencontrées
traditionnellement sur les systèmes propriétaires :
Partitionnement des systèmes :
Statique
Dynamique
Redondance de certains composants (ventilateurs,
alimentation électrique, processeurs)
Livraison de systèmes avec le nombre maximal de
processeurs et « libération » des processeurs à la
demande
Facturation fondée sur les processeurs réellement utilisés
Échange de composants à chaud (« Hot Plug »)
….
Page 37
© RJ Chevance
Système de test de
Système de production nouvelles versions Système de développement
(système d’exploitation
Configuration physique du SMP et/ou applications)
Page 38
© RJ Chevance
Page 19
Architecture flexible SMP/Cluster
Objectif :
Adapter la configuration du système au
besoin des applications et non pas les
applications à l’architecture du système
Approche : concept d’un SMP à grand
nombre de processeurs et mécanismes de
partitionnement du SMP en plusieurs SMP
indépendants
Bénéfice : une seule architecture couvre une
plage étendue de besoin au prix d’une
conception un peu plus complexe
Exemple de cette approche : CMP (Cellular
MultiProcessing) d’Unisys
Page 39
© RJ Chevance
Page 40
© RJ Chevance
Page 20
SMP - Intel SHV
SMP à nombre modéré de processeurs
Pentium III Pentium III Pentium III Pentium III
Port d ’extension Xeon Xeon Xeon Xeon
≤2 Mo L2 ≤2 Mo L2 ≤2 Mo L2 ≤2 Mo L2
Architecture Profusion
8 processeurs Pentium III
(Source Intel)
Page 42
© RJ Chevance
Page 21
SMP - Bull Escala
Architecture de type cross-bar
Architecture PowerScale, système Escala 8 processeurs
Power PC (Source Bull)
M M M M M M M M M M M M M M M M
E E E E E E E E E E E E E E E E
M M M M M M M M M M M M M M M M
256-bit (données)
Page 43
© RJ Chevance
Page 44
© RJ Chevance
Page 22
SMP à grand nombre de processeurs
Nécessité de répartir la mémoire et les processeurs
en plusieurs sous-ensembles
Deux grandes familles en fonction du rapport des
temps d’accès aux mémoires (locales et distantes)
UMA (Uniform Memory Access) ou proche de UMA
(Nearly UMA) si le rapport est inférieur à 2
NUMA (Non Uniform Memory Access) si le rapport est
supérieur à 2. Avec le respect de la cohérence de cache,
les architectures à temps d’accès non uniforme sont
appelées CC-NUMA (Cache Coherent - Non Uniform
Memory Access)
© RJ Chevance
PCI Distribution
MEM MEM MEM MEM Board
Page 46
© RJ Chevance
Page 23
Grands SMP - Compaq(2)
Compaq AlphaServer GS160/GS320
I/O SWITCH GP
System Box 1
Switch GS320 :
Hiérachique
• 32 processeurs, 256 Go, 51.2 Go/s,
PCI CPU CPU CPU CPU
224 slots PCI/12.8 Go/s
I/O SWITCH GP
System Box 2
I/O SWITCH GP
© RJ Chevance
© RJ Chevance
Page 24
Grands SMP - Fujitsu(2)
Illustration : PRIMEPOWER 2000
Cabinet
(32 proc.)
P
P
P
P
Jusqu’à 8 cartes
(32 processeurs) M L1
Crossbar
L2
PCI
L2 L2
L2 L2
Processeurs
Carte système
Mémoire
cartes PCI
Crossbar L1
Page 49
© RJ Chevance
IBM zSeries
Évolution de la famille 360/370/390 (introduite en 1965) tout en préservant la
compatibilité. Trois modes de fonctionnement :
24 bits
31 bits
64 bits
Extension de l’espace d’adressage à 64 bits (z/Architecture) et augmentation de la
capacité de la mémoire physique au delà de 2 Go (ne nécessite plus l’Expanded Storage
pour étendre la capacité mémoire)
Supporte différents systèmes d’exploitation :
z/OS (64 bits)
OS/390 (alias MVS)
Linux
zVM
Accommodation :
VM/ESA, VSE/ESA et TPF
Possibilité de partitionner le système : LPAR (Logical Partitions, jusqu’à 15 partitions
logiques sur un serveur)
Gestion des ressources :
WLM : Worload manager
IRD : Intelligent Resource Director
Cluster avec Sysplex :
Interne au système (entre LPARs) : ICF Internal Cluster Facility
Externe (entre systèmes physiquement indépendants)
Page 50
© RJ Chevance
Page 25
IBM z/Series(2)
Caractéristiques du z/900 :
Intégrés sur un seul composant MCM (Multichip Module)
Spécialisation fonctionnelle des processeurs :
CP = Central Processing
SAP = System Assist Processor
ICF = Internal Coupling Facility
IFL = Integrated Facility for Linux
Au moins 1 processeur doit être désigné en tant que processeur de processeur de secours (susceptible de
remplacer un processeur défaillant)
2 versions de MCM :
20 processeurs :
jusqu’à 16 processeurs d’application (CP);
jusqu’à 8 (SAP)
jusqu’à 15 (ICF)
jusqu’à 15 (IFL)
12 processeurs :
jusqu’à 9 processeurs d’application (CP);
jusqu’à 5 (SAP)
jusqu’à 8 (ICF)
jusqu’à 8 (IFL)
Mise en service des processeurs sur demande (par logiciel), possibilité de facturation en fonction de
l’utilisation des ressources (WLC voir ci-après)
5 à 64 Go de mémoire
64 000 périphériques
256 chemins d’entrée-sortie
16 Go/s de bande passante d’entrée-sortie
3 Go/s de bande passante réseau
Haute disponibilité interne au système et au moyen du clustering (voir ci-après)
Processeurs spécialisés de chiffrement (2 en standard, 16 additionnels)
Page 51
© RJ Chevance
IBM z/Series(3)
Gestion des ressources
Deux approches :
WLM Workload Manager
Fixation d’objectifs de temps de réponse (ex. 90% des
requêtes émanant de telle URL doivent être satisfaites en
moins de 1 seconde)
WLM examine périodiquement l’état du système et peut
allouer des ressources (processeur, mémoire, E/S) à
d’autres partitions pour satisfaire les objectifs
Intelligent Resource Director
Optimisation, en fonction des priorités, de l’utilisation des
processeurs et des canaux d’E/S entre les systèmes
fonctionnant dans des partitions logiques (LPAR)
séparées
Trois fonctions :
Gestion des processeurs (LPAR CPU Management)
Gestion dynamique des canaux d’entrée-sortie (Dynamic
Channel Path Management)
Gestion prioritaire des demandes d’entrée-sortie (Channel
Subsystem Priority Queuing)
Page 52
© RJ Chevance
Page 26
IBM z/Series(4)
© RJ Chevance
© RJ Chevance
Page 27
IBM - Haute disponibilité(2)
Modèle d’exécution (S/390 G5 et G6) fondé sur :
La notion de point de reprise au niveau instruction
Le doublement, au sein même de l’unité de traitement, de la fonction
d’exécution avec comparaison pas à pas. En cas de divergence
possibilité de reprise :
Sur le même processeur (ré-essai)
Sur un processeur de secours (reprise)
Processeur Processeur
de secours
Unité Unité Unité Unité
de Cache de Reprise Reprise de Cache de
traitement traitement locale locale traitement traitement
Comparateur Comparateur
Registres Registres
Rapport Ordre
d’erreur d’arrêt
Ordre de reprise
Module de
Page 55 surveillance
© RJ Chevance
Grands SMP - HP
HP Superdome : Architecture de la cellule
ASIC
ASIC
PCI PCI
Contrôleur
E/S
ASIC
ASIC
PCI PCI
1.6 Go/s
Crossbar
Contrôleur
Mémoire de la
<= 16 Go cellule
6.4 Go/s
PA-8600
PA-8600
PA-8600
PA-8600
Page 56
© RJ Chevance
Page 28
Grands SMP - HP(2)
HP Superdome : jusqu’à 64 processeurs
E/S E/S
Cellule Cellule
Débit Crossbar :
Crossbar
Crossbar
• 16 processeurs = 12.8 Go/s
• 32 processeurs = 25.6 Go/s
• 64 processeurs = 51.2 Go/s
Crossbar
• au sein de la cellule : 260 ns
Crossbar
Backplane Backplane
Cabinet Cabinet
Page 57
© RJ Chevance
Isolation Flexibilité
Haute disponibilité
N+1 et Hot Swap pour alimentation, ventilateurs,
cartes processeur et PCI
Page 58
© RJ Chevance
Page 29
Grands SMP - IBM AIX
IBM RS/6000 Enterprise Server Model S80
Cache L2 8 Mo Cache L2 8 Mo
ACD Données
Contrôle bus
Adresses
Mémoire Mémoire
256 Mo - 4 Go 256 Mo - 4 Go
Page 59
Page 60
© RJ Chevance
Page 30
Grands SMP - Sun
Sun Fire 3800-4800-6800 Servers
Architecture de la carte de base
Fondée sur UltraSPARC III
<= 8 Mo de cache L2 (E cache)
Processor Memory
& E Cache 8 Go
Processor Memory
& E Cache 8 Go
Datapath
Controller
Processor Memory
& E Cache 8 Go
Processor Memory
& E Cache 8 Go
Page 61
© RJ Chevance
Page 62
© RJ Chevance
Page 31
Grands SMP - Sun(3)
Sun Ultra Enterprise 10000
S-Bus
Gigaplane-XB Mémoire
<12.8 G octets/s
Liaison intercartes
XB-interconnect
(cross-bar données) Proc Proc Proc Proc
4 bus d'adresse
Cache Cache Cache Cache
Page 63
Concept de domaine :
Source Sun
© RJ Chevance Partitionnement du système "à la mainframe"
CPU
CPU CPU SMP or Clusters
CPU
CPU
CPU
CPU TLC Single or Multiple OS’s
CPU
TL CPU
CPUC CPU1
166G
GB TLC CPU
IA32, IA64
CPU M
MS B
CPU SU
U CPU CPU
CPU CPU CPU
CPU TLC CPU Unisys CMOS
PCI CPU CPU
TLC PC
PCI I 16 G
CP
TLCU CPU MCP or OS2200
PCI MSUB CPU CPU
PC
PCI I TLC CPU CPU
CPU CPU
DIB PCI CPU
PC
PCI I 16 G DIB PCI
PCI MSUB PCI
PCI
PC
PCI I DIB PC
PCI 96 PCI slots
PCI I
DIB
16 G DIB PC
Shared Memory MSUB PCI
PCI I
DIB PCI
<=64 GBytes PC
PCI I I2O boards
Page 64 Open APIs
© RJ Chevance
Phased Implementation
Page 32
Grands SMP - Unisys(2)
he
Co 20 GB/s
(1.6 GB/s ea.)
m
lis
le
CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU CPU CPU
CPU CPU CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU
ral CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU CPU CPU
CPU CPU CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU
Pa 5 GB/s (0.8 GB/s ea.) DIB DIB DIB DIB DIB DIB DIB DIB
Page 66
© RJ Chevance
Page 33
Architecture CC-NUMA
Principe CC-NUMA
Module Module
Cache Cache
Mémoire
Mémoire Cache Mémoire
Mémoire Mémoire
Proc. Proc. Mémoire
Mémoire
Proc.
NUMA Factor : Rapport des temps d'accès mémoire distante - mémoire locale.
Plus le NUMA Factor est important, plus le logiciel doit tenir compte des
spécificités de l'architecture
Adaptation nécessaire des logiciels (Systèmes d'exploitation, SGBDs,...) aux
caractéristiques de l'architecture CC-NUMA. Il doit tenir compte des propriétés
de localité :
Affinité processus/module
Allocation d'espace mémoire à un processus sur le module sur le lequel le
processus réside
Page 67 Rapatriement d'un processus sur le module sur lequel il résidait, .....
© RJ Chevance
Architecture CC-NUMA(2)
IBM NUMA-Q (jusqu'à 256 processeurs Pentium)
Page 68
© RJ Chevance
Page 34
Architecture CC-NUMA(3)
IBM NUMA-Q Prochaine génération à base IA-64
IA64 BB IA64 BB
IA64 BB IA64 BB
IA64 BB
IA64 BB IA64 BB
IA64 BB
IA64 BB
IA64 BB IA64 BB
IA64 BB
IA64 BB
IA64 BB IA64 BB
IA64 BB
SAN Switch
IA64 BB
IA64 BB IA64 BB
IA64 BB
LAN/WAN/Web
IA64 BB
IA64 BB IA64 BB
IA64 BB
IA64 BB
IA64 BB IA64 BB
IA64 BB
IA64 BB
IA64 BB IA64 BB
IA64 BB
IA64 BB
IA64 BB IA64 BB
IA64 BB
IA64 BB
IA64 BB IA64 BB
IA64 BB
IA64 BB
IA64 BB IA64 BB
IA64 BB
IA64 BB
IA64 BB IA64 BB
IA64 BB
IA64 BB IA64 BB
IA64 BB IA64 BB
Meta-visor
© RJ Chevance
Possessor A Possessor B
Page 35
SGI - Origin 3000 Series(2)
Architecture physique modulaire à base de composants
(Bricks) :
C-brick. Module processeur : 4 processeurs et jusqu’à 8 Go.
Dans le futur, C-brick fondée sur IA-64
I-brick. Module d ’entrées-sorties : disque système (FC), 5 cartes
PCI « hot plug », CD-ROM, Ethernet (10/100), IEEE 1394, 2 USB, 2
liens Xtown2 (1.2 Go/s bi-directionnel) vers C-bricks
P-brick. Module PCI additionnel 12 cartes « hot plug ». 2 liens
Xtown2 (1.2 Go/s bi-directionnel) vers C-bricks
X-brick. Module d’extension des entrées-sorties permettant la re-
connexion des entrées-sorties des systèmes de la série Origin
2000 (4 cartes XIO)
R-brick. Crossbar à 8 ports (1.6 Go/s bi-directionnel), 4 ports
pour la connexion avec des modules processeur (C-bricks) et les
autres pour l’extension du nombre de processeurs
D-brick. Module disques (12 disques 36 Go puis 18 disques 73
Go) gérés en JBOD (Just a Bunch Of Disks) ou en RAID
G-Brick. Extension graphique
Power Bay. Jusqu’à 6 alimentations électriques « hot swap » en
Page 71
configuration N+1
© RJ Chevance
Page 36
SGI - Origin 3000 Series(4)
Topologie d’interconnexion Hypercube
M M
M R R M
M M M M
M
M R R M M R R
R M
M
M M
M
M R R M
M R R
R M
M
M M
M R R M M R R M
M M M M M
M
M R R M
M R R M
M M M M
M
M R R
R M
M
32 processeurs R M
M R
M M 64 processeurs
M R R M
Page 73
M M
© RJ Chevance M = Module bi-processeur
M R R M M R R M
M M
M M M
M
M R R
R M
M M R R
R M
M
M R R M M R R M
M M M M
M R R M M R R M
M M R R M M
128 processeurs
R R
« Hierachical Fat
Bristled Hypercube »
R R
R R M
M M M
M R R M M R R M
M M
M M M
M
M R R
R M
M M R R
R M
M
M R R M M R R M
M M M M
M R R M M R R M
Page 74 M
M M M
© RJ Chevance
Page 37
Architecture COMA
COMA (Cache Only Memory Architecture)
NUMA = Mapping fixe de l'adresse d'une ligne de mémoire sur la mémoire d'un
module
COMA = pas de mapping fixe. L'ensemble de l'espace mémoire est traité comme un
cache.
Dans l'architecture COMA, la mémoire de chaque module est gérée comme un
cache. Les données sont amenées en mémoire locale en fonction des besoins. Un
protocole de cohérence est mis en jeu entre les mémoires locales des différents
modules.
Nombreux projets de recherche (FLASH, IACOMA, S3MP, DDM,....). A ce jour, une
seule tentative industrielle mais infructueuse = KSR Kendall Square Research.
Module Module
Cache Cache
Cache Cache
Cache
Mémoire Mémoire
Proc. Proc.
Proc. Proc. Cache
Proc.
(Mémoire)
Extraits MV Extraits MV
Extraits MV de 0 à N copies
de 0 à N copies Réseau d ’interconnexion
de 0 à N copies cohérents
cohérents supportant un protocole de
cohérents (protocole de (protocole de
(protocole de cohérence de cache
cohérence de cache ) cohérence de cache )
cohérence de cache )
Mémoire
Virtuelle
(MV) Extraits MV
Extraits MV Extraits MV 0 ou 1 copie
Réalisation de 1 ou 0 copie 0 ou 1 copie
la mémoire cohérents
virtuelle (du fait de
l'unicité) Extraits MV
de 0 à N copies
cohérents
(protocole de cohérence de cache)
Page 76
© RJ Chevance
Page 38
Couplage lâche
(clusters et MPP)
Exemples
Page 77
© RJ Chevance
Clusters
Page 78
© RJ Chevance
Page 39
Clusters - HACMP
Cluster RS/6000 HACMP (High Availability
- Cluster MultiProcessing)
Charge de travail répartie
Bull Bull
Accès concurrents
DPX/20 DPX/20
Gestion du verrouillage
(Distributed Lock Management)
Serveur A Serveur B
Oracle Parallel Server Disque Disque Oracle Parallel Server
1 2
Page 79
© RJ Chevance
Clusters - HACMP(2)
Architecture générale HACMP
Client Client Client
CLINFO CLINFO
CLINFO
Cluster Gestionnaire
du Cluster
Gestionnaire Agent SNMP
de verrous Cluster
dms
Gestionnaire du cluster
Configuration
du cluster gestionnaire
Contrôleur Gestionnaire
(odm) de verrous
du cluster d'évènements
(CC) (EM)
agent SNMP cluster
Couche d'interface réseau
Scripts d'évènements
NIM NIM NIM
Page 80
NIM : Network Interface Module
© RJ Chevance
Page 40
Clusters - HACMP(3)
Modes de fonctionnement
Systèmes "clients" Systèmes "clients" Systèmes "clients" Systèmes "clients"
Base de données
(partagée)
Page 81
C) - Partage de charge
© RJ Chevance (Cluster MultiProcessing)
Clusters - TruCluster
Exemple de configuration TruCluster
Software de Compaq
Page 82
© RJ Chevance
Page 41
Clusters - MSCS
Architecture Microsoft Cluster Server (MSCS)
Outils de Gestion du Cluster
Service Cluster
Gestionnaire global
des mises à jour
Gestionnaire
Base de données
Traitement Gestionnaire
des évènements du nœud
Moniteurs de
ressources Interface de gestion des ressources
Clusters - MSCS(2)
Technologie de clustering de serveurs NT - Nom de code
Wolfpack MSCS (MicroSoft Cluster Service)
Partenariat avec Compaq, Digital, HP, IBM, Intel, NCR et
Tandem "Early Adopters"
Planning
11/95 - 5/96 Open Process = Disclose interfaces and reviews
4Q96 SDK Release = Kit de développement et spécifications
des APIs à destination des développeurs
4Q96 Bêta Test = test, par des développeurs, sur les
systèmes des 6 "Early Adopters"
1H97 Phase 1 première version limitée à 2 noeuds (pour les
6 "Early Adopters")
2H97 Phase 1 Platform and Solution Expansion
Août 1998 seconde version et extension de la fonctionnalité
Windows 2000 Data Center
Jusqu ’à 4 nœuds de 4 à 8 processeurs chacun
Page 84
© RJ Chevance
Page 42
Clusters - Exemples(5)
Cluster à mémoire partagée IBM Sysplex
Données partagées au moyen de technologies de verrous et de caches
Coupling
Facility
Noeud Noeud
1-10 cpus 1-10 cpus
Sysplex Timer
Données partagées
Page 85
© RJ Chevance
Clusters - Exemples(6)
Fonctionnalité IBM Sysplex
Éléments de base de la technologie Coupling Facility
Cache Structure : mécanisme de cache et d'invalidation
List Structure : partage de données organisées en liste
(e.g. implémentation de files d'attente, de status,...)
Lock Structure
Overhead
Partage de données
IMS - Partage intensif de données
CMOS : 17% + 0.5% x (N-2)
DB2 ECL : 26% + 0.5% x (N-2)
- Sans partage
VSAM ~3%
Traitement parallèle
Batch : BatchPipes/MVS
OLTP : CICS, IMS TM
Gestion des travaux : WLM (WorkLoad Manger)
Définition des objectifs de performance au niveau
du cluster (concept de "service policy")
Page 86
Reporting (Resource Management Facility)
© RJ Chevance
Administration
Page 43
Machines massivement parallèles
(Massively Parallel Processing)
Page 87
© RJ Chevance
Page 44
MPP : Technologie d ’interconnexion (2)
Quelques topologies de réseaux d'interconnexion
Bus
Anneau
Complétement connecté
Cross bar (2 x 2)
Grille 2D
Hypercube(3)
Réseau Oméga
Hiérarchisé
Page 89
© RJ Chevance
[HEN94] John L. Hennessy, David A Patterson «Computer Organization and Design The
Hardware Software Interface»
Morgan Kaufmann San Mateo 1994
© RJ Chevance
Page 45
MPP : Technologie d ’interconnexion (4)
Comparaison des latences pour un message court d’un noeud à un autre [GIL97]
Environnement Latence
(µs)
Memory Channel DEC (HW) 2.9
Memory Channel DEC(base) 5.4
Memory Channel DEC MPI 6.9
Memory Channel DEC PVM 8.0
Cray T3d MPI 37
IBM SP2 MPI 40
IBM SP2 PVM 54
Intel Paragon 54
Alpha Server @200 UDP/FDDI 82
Alpha Server @300 TCP/IP/FDDI 165
Alpha Server @300 TCP/IP/Enet 10 Mb/s 190
CM5 PVM 190
[GIL97] Richard Gillet, Rochard Kaufmann « Using the Memory Channel Network »
IEEE Micro January/February 1997 pp19-25
Page 91
© RJ Chevance
Page 92
© RJ Chevance
Page 46
NCR/Teradata Worldmark 5200
Architecture (matérielle et logicielle) de type Share Nothing
fondée sur x86 et un interconnect intelligent (YNET).
Premier système livré en 1984
Originellement, architecture logicielle spécifique : TOS
Teradata Operating System (16 bits) et Teradata DBMS
Systèmes destinés essentiellement aux applications d'aide
à la décision et supportant des bases de données > 1 TB
Actuellement, utilisation de solutions standards avec UNIX
et le DBMS Teradata (qui est aussi porté sur NT)
Architecture matérielle fondée sur un "building block" de
type SMP
nœud quadriprocesseur : 4 Xeon@450Mhz
Supporte jusqu'à 512 nœuds, soit un maximum de 2048
processeurs
Nouvel interconnect : BYNET
Page 93
© RJ Chevance
NCR/Teradata (2)
• BYNET
BYNET • Topologie de type BANYAN
BYNET
• Pour une liaison logique, deux types
de liaisons :
• parallèle 8 bits (10.4 MB/s)
Noeud Noeud Noeud Noeud Noeud Noeud Noeud Noeud "Forward Channel"
SMP SMP SMP SMP SMP SMP SMP SMP • sérielle (10.4 Mb/s)
"Back Channel"
• Carte contrôleur MCA, 2 liens par
carte, 2 contrôleurs par nœud.
Concept de channel program
• Support "monocast", "broadcast"
et "multicast"
• Deux types de protocole :
• Basic Link Manager (avec
acquitement du type
Disk Array "2 Phase Commit")
NCR WorldMark 5100M
Switch (8 x 8)
• BYNET Low Latency
Interface (service type
Connexions depuis les 64 transmetteurs
pli
datagramme)
Connexions vers les 64 récepteurs
• Bissection =
20.8 MB/s x nombre_de_noeuds
• Latence
• Switch = 673 ns
• Application/Application =
300 µs
•Services de base Message,
Channel, Group, Global
Semaphore, Merge et
Configuration qui permettent
l'implémentation de :
• la distribution des données
• contrôle des étapes de traitement
BYNET - Structure d'un BYNET redondant pour une configuration à 64 nœuds parallèle
Chaque nœuds a deux chemins BYNET vers chacun des autres nœuds du système • status et configuration
(Source NCR)
Page 94
© RJ Chevance
Page 47
NCR/Teradata (3)
BYNET
AMP VPROCs
Page 95
© RJ Chevance
Conclusions et perspectives
Page 96
© RJ Chevance
Page 48
Architecture d ’application
Développement du modèle à 3 niveaux
Tendances
Poursuite de la «commoditisation» :
SMP à nombre modéré de processeurs (mais en augmentation)
Intégration des aspects systèmes au sein des microprocesseurs
Systèmes d ’exploitation
Middleware
Solutions de type cluster
Architectures flexibles (SMP/Cluster) ? (leur succès dépendra du niveau de
prix)
Standardisation de fait (réduction du nombre)
Système d ’exploitation
SGBD
Middleware
Logique de volumes
Poursuite des phénomènes de concentration dans l ’industrie et
d’horizontalisation
Focalisation sur les besoins des utilisateurs
exemple : réduction du coût total de possession
Deux logiques principales d ’évolution des produits, qui se superposent au cours de la
vie d’un produit :
diminution de prix à performance constante
Page 98 performance accrue à coût fixe
© RJ Chevance
Page 49
Potentiel des technologies
Cycle de vie classique des technologies
Potentiel de la technologie
Stabilisation avec quelques
Diminution fournisseurs
du nombre de
compétiteurs
Rachat de petites
Sociétés par des
Sociétés bien établies
Beaucoup de
(petits)
compétiteurs
Temps
Perception du potentiel des technologies
Perception du potentiel de la technologie
1 n 1 n
1 n 1 n
Page 50
Puce multiprocesseur
Exemple de structure système
P P
DRAM DRAM DRAM DRAM
N
P P MPC MPC MPC MPC
E
Cache Cache interne i/f réseau
externe + i/f cache S DRAM DRAM DRAM DRAM
externe MPC MPC MPC MPC
O
Mémoire
DRAM i/f mém.
DRAM DRAM DRAM DRAM
Page 101
© RJ Chevance
1 n 1 n
Module
Module 1
Cache Externe Cache Externe Cache Externe Cache Externe
1 n Réseau système 1 n
Module M
Module (Switch
Cache Externe Cache Externe Cache Externe Cache Externe
avec
redondance)
MPC (p proc.) MPC (p proc.) MPC (p proc.) MPC (p proc.)
Page 102
© RJ Chevance
Page 51
Références et adresses utiles
Cette présentation est fondée sur l’ouvrage suivant :
Autres références :
© RJ Chevance
Compléments
Page 104
© RJ Chevance
Page 52
Réseaux de stations de travail
Émergence de solutions d’interconnexion standard
(contrôleurs PCI) à haut débit et à faible latence
Recherche de solutions, pour des applications de calcul
numérique intensif, fondées sur l’interconnexion de stations
de travail
Souvent des solutions spécifiques implémentées par des
laboratoires de recherche (préfiguration de produits
industriels?)
Page 105
© RJ Chevance
© RJ Chevance
Page 53
Architecture NEC SX-5
Multiprocesseur (SMP) fondé sur un
microprocesseur vectoriel spécifique CMOS,
jusqu’à 16 processeurs par nœud, 128 Gflops de
puissance de crête (16 x 8 Gflops)
Jusqu’à 4 processeurs d’entrées-sorties par
nœud
Configuration cluster avec 32 nœuds maximum
(puissance de crête 4 Tflops)
16 opérateurs arithmétiques parallèles (SX-5) ou
8 (SX-5S) et un opérateur scalaire par processeur
Bande passante mémoire très élevée : de 32 à
1024 Go/s
Capacité mémoire maximale par nœud : 128 Go
Unix, Fortran 90, HPF, C et C++
Page 107
© RJ Chevance
CPU
CPU CPU
CPU CPU
CPU CPU
CPU
00 11 14
14 15
15
MMU XMU
XMU(4)
(4)
Mémoire principale Mémoire
Mémoireétendue
étendue
SDRAM DRAM
DRAM
2Go - 128 Go 1-32
1-32Go
Go
32-1024 Go/s 4-16
4-16Go/s
Go/s
IOP
IOP00 IOP
IOP11 IOP
IOP22 IOP
IOP33
© RJ Chevance
Page 54
Architecture NEC SX-5(3)
Architecture interne d’un processeur SX-5
Mask Registers
Mémoire 256
principale 8
mask
64 Vector Data
(MMU) Registers + +x
8 ++ xshift
xshift
+ +x xshift
logical
++ xshift logical
8/16 256
shift
x
xshift logical
logical
shift
Load/Store shiftlogical
logical
logical
logical
32/64 Go/s 8/16 Vector Arithmetic
Registers
Page 109
© RJ Chevance
Page 55