Présentation
Auteur(s)
-
René J. CHEVANCE : Consultant - Chargé de mission au Centre d’étude pour la maîtrise des systèmes et du logiciel (CMSL) - Professeur associé au Conservatoire national des arts et métiers (CNAM)
Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.
Lire l’articleINTRODUCTION
La performance des systèmes dépend d’un grand nombre de paramètres et n’est donc pas simple à appréhender. C’est certainement la raison pour laquelle l’aspect performance dans les projets est souvent traité comme un parent pauvre. L’on ne s’y intéresse qu’en dernier ressort et bien souvent lorsque des problèmes se posent. Il résulte souvent de ce traitement tardif et « à chaud » des résultats médiocres, voire désastreux, pour l’architecture du système. La recherche de meilleures performances conduit souvent à déstructurer le système : des niveaux de virtualisation, qui avaient été introduits pour assurer une certaine indépendance vis-à-vis du matériel ainsi qu’entre les modules logiciel, sont purement et simplement supprimés. Les solutions apportées ne sont que partielles, conduisent bien souvent à une augmentation des coûts et des délais et ont un impact négatif sur la maintenance du système.
L’absence de maîtrise des performances rend difficile la prévision du comportement du système face à des changements tant dans les missions qu’il doit remplir que dans les mutations technologiques qui lui seront apportées au cours de son existence (comme l’incidence d’un changement de processeur ou de réseau local sur le temps de réponse du système). Cette absence de maîtrise rend en outre difficile l’analyse des problèmes de performance rencontrés dans la vie du système.
Nous proposons une méthodologie permettant de traiter, dans le cadre de projets, la performance au moyen de techniques de modélisation.
La modélisation des systèmes informatiques permet d’étudier le comportement des systèmes sur des modèles et non sur le système lui-même. De cette façon, il est possible de prévoir le comportement du système vis-à-vis de changements dans ses missions ou dans les technologies utilisées pour sa réalisation. L’alimentation de tels modèles nécessite des données, qui sont fournies par des mesures ou des estimations. La modélisation et la mesure sont deux activités distinctes mais complémentaires. Elles sont nécessaires à l’activité de l’architecte système, et elles apportent l’aspect quantitatif à une activité qui a quelquefois tendance à se cantonner au qualitatif. La modélisation peut s’appliquer tout au long du cycle de vie du système : depuis la phase de conception jusqu’à la vie opérationnelle du système. En ce qui concerne la vie opérationnelle du système, on peut remarquer que celui-ci est soumis à des demandes de modification de mission (services qu’il doit rendre) ainsi qu’à des modifications de sa technologie (rajeunissement de certains composants rendu nécessaire par leur retrait du marché). Il est utile, pour maîtriser de tels changements, d’évaluer a priori et donc de valider l’impact des changements sur le comportement du système avant de les appliquer.
En résumé, on peut caractériser l’apport de la modélisation aux différentes phases de la vie d’un système de la façon suivante :
-
phase de conception :
-
choix entre différents types d’architecture,
-
dimensionnement des différents composants du système,
-
étude de la sensibilité du comportement du système à différents paramètres ;
-
-
phase d’implémentation :
-
analyse de l’impact de modifications d’architecture ou de dimensionnement de composants,
-
analyse de l’impact de non-atteinte d’objectifs de performance sur la performance globale du système ;
-
-
phase d’exploitation :
-
analyse de l’impact de changements de mission ou de remplacement de composants,
-
aide à l’analyse de problèmes de performance rencontrés.
-
On peut distinguer trois grandes approches méthodologiques dans le domaine de la performance :
-
l’intuition ;
-
les mesures ;
-
la modélisation.
L’intuition se fonde sur l’expérience. Elle est peu coûteuse mais ses possibilités sont limitées tant en ce qui concerne la fiabilité que la complexité. En effet, malgré l’expérience, les erreurs sont possibles et, au-delà d’une certaine complexité, il n’est plus possible de répondre.
En revanche, les mesures ne souffrent pas de l’imprécision mais elles sont difficiles à mettre en œuvre et elles représentent un coût important. L’interprétation des mesures n’est pas aisée car on néglige souvent le fait qu’une bonne interprétation des résultats passe par la compréhension de la dynamique du système. L’inconvénient majeur de cette approche réside dans le fait que le système doit exister (ou du moins dans un état de développement suffisamment avancé pour que les mesures puissent être représentatives du comportement du système).
La modélisation peut être vue comme un compromis entre l’intuition et la mesure. Elle est plus fiable que l’intuition car elle se fonde sur la dynamique du système et elle permet de détecter des effets secondaires. Elle est plus souple que les mesures car l’étude de l’incidence de modifications ne nécessite que le changement du modèle et/ou de ses paramètres. Elle présente l’avantage majeur, par rapport aux mesures, de ne pas impliquer l’existence du système.
Notre exposé est concentré sur la modélisation de la performance des systèmes. Mentionnons que la démarche proposée s’applique aussi bien à la disponibilité des systèmes (estimation de l’impact d’une stratégie de réparation d’un système sur sa disponibilité, par exemple) qu’à l’estimation des coûts et des délais de développement. En matière de performance, l’ouvrage de référence est .
Un modèle permet d’étudier et de valider l’impact de modifications sur le modèle et non plus sur le système. La technique de modélisation présentée s’appuie sur les réseaux de files d’attente. Les stratégies de modélisation sont ensuite appliquées à deux cas extrêmes : le développement d’un système à partir d’une « feuille blanche » et à partir d’un système existant. La réalité se situe entre ces deux extrêmes et la démarche à mettre en œuvre s’inspire de celles présentées pour ces deux cas. Les critères de choix d’une stratégie de modélisation sont présentés. Nous introduisons ensuite l’analyse opérationnelle qui est une technique permettant, à partir de mesures, de dériver des conclusions fort utiles. Quelques indications sur les outils qui permettent, sur des systèmes d’exploitation standard, d’obtenir les chiffres nécessaires à la mise en œuvre de l’analyse opérationnelle sont données. Un certain nombre de règles empiriques ont été proposées pour le dimensionnement des systèmes. La méthodologie de prévision de la charge conclue l’exposé.
Cet article est repris quasi intégralement de l’un des chapitres de l’ouvrage « Serveurs multiprocesseurs, clusters et architectures parallèles » que l’auteur a publié chez Eyrolles en 2000 . Par rapport au texte publié dans cet ouvrage, différents éléments, en provenance d’autres chapitres du même ouvrage ainsi que d’autres sources, ont été ajoutés pour donner le contexte nécessaire à un article indépendant d’une part et pour refléter les derniers développements d’autre part.
DOI (Digital Object Identifier)
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Présentation
5. Règles empiriques de dimensionnement des systèmes
Dans la seconde moitié des années 1960, Gene Amdhal avait formulé des règles empiriques pour le dimensionnement des systèmes. Ces règles ont été récemment révisées par Jim Gray et Prashant Senoy, cet exposé est inspiré de leur article .
L’évolution particulièrement rapide de la technologie provoque des mutations et a des conséquences sur l’architecture des systèmes ainsi que sur les règles d’équilibre dans leur fonctionnement.
En premier lieu, la loi de Moore prédit que la densité des circuits intégrés double tous les 18 mois, ce qui a les conséquences suivantes :
-
en dix ans, la capacité de stockage des mémoires DRAM a été multipliée par 100 ;
-
il est nécessaire de disposer d’un bit d’adressage physique supplémentaire tous les 18 mois.
Pour illustrer ce dernier point, on peut rappeler que les systèmes avaient de l’ordre de 16 à 20 bit d’adresse physique en 1970 et que l’on est à une quarantaine de bit au début des années 2000. Si cette tendance se poursuivait, il serait nécessaire d’avoir 64 bit d’adresse vers 2036.
Les disques subissent aussi une évolution technologique importante qui, pour intéressante qu’elle soit au niveau de la capacité et de l’encombrement, présente, du point de vue de la performance, des inconvénients. En effet, la capacité des disques a été multipliée par un facteur 10 entre 1990 et 2000.
On dispose aujourd’hui d’unités de disques dont la capacité est supérieure à 70 Go. La vitesse de rotation des disques s’est accrue d’un facteur 3 en 15 ans et le débit par un facteur 30 durant la même période. En 2001, on trouve des disques dont la vitesse de rotation est de 10 000 ou 15 000 tours par minute et le débit est supérieur à 25 Mo/s. Le temps d’accès moyen a été divisé par 3 en 15 ans, il est passé de 18 ms à 6 ms. La dimension des disques a été divisée par 5 sur cette même période de 15 ans et le prix est inférieur à 0,05 dollar...
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Règles empiriques de dimensionnement des systèmes
BIBLIOGRAPHIE
-
(1) - CHEVANCE (R.J.) - Serveurs multiprocesseurs, clusters et architectures parallèles. - Eyrolles (2000).
-
(2) - JAIN (R.) - The Art of Computer Systems Performance Analysis. - John Wiley & Sons (1991).
-
(3) - KÉRYVEL (G.) (CNAM Versailles et Saclay) - * - Communication personnelle.
-
(4) - * - Articles parus dans Windows 2000 Magazine et disponibles sur le site http://www.ntmag.com/Articles
-
(5) - GRAY (J.), SHENOY (P.) - Rules of Thumb in Data Engineering. - IEEE International Conference on Data Engineering, San Diego avril 2000.
-
(6) - CHEVANCE (R.J.) - Performance des processeurs et des systèmes. - H 2 546, traité Informatique (2001).
-
...
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive