Flash informatique 2009 - no 5

16
FI 5 – 26 mai 2009 – page 1 SOMMAIRE FI 5/2009 1 Parallélisme extrême sur le Blue Gene/L Jonas Lätt 2 Des petits trous, des petits trous, toujours des petits trous Appoline Raposo 2 Il y a 20 ans dans le FI 7 Programme des cours 13 Parfaire une barre de planning Visio en 20 minutes chrono Jacqueline Frey 15 Forum IT du 7 mai 2009 Jacqueline Dousson 16 DIT-info SUITE EN PAGE 3 éCOLE POLYTECHNIQUE FéDéRALE DE LAUSANNE p/a EPFL - Domaine IT - CP 121 - CH 1015 Lausanne 15 - tél. +41 21 69 322 11 - Web: http://dit.epfl.ch Parallélisme extrême sur le Blue Gene/L Jonas.Latt@epfl.ch, EPFL – Laboratoire d’ingénierie numérique INTRODUCTION Depuis l’introduction du circuit intégré dans les années 1950, le marché de l’informatique suit une tendance caractérisée par l’augmentation expo- nentielle de la puissance de calcul au fil des années. Souvent citée sous le nom de loi de Moore d’après une constata- tion du cofondateur d’Intel Gordon E. Moore sur l’évolution de la microtech- nique, cette tendance s’applique à des aspects variés de l’informatique tels que la vitesse d’exécution des processeurs ou encore la quantité de mémoire dis- ponible dans les ordinateurs. La loi de Moore fait le bonheur des chercheurs dans le domaine du calcul numérique, car elle leur permet de fréquemment augmenter la rapidité de leurs simula- tions et la taille des problèmes simulés, permettant ainsi de nouvelles percées scientifiques. Depuis plusieurs années, ce bel optimisme dans le domaine du calcul numérique se trouve cependant freiné. Alors que la loi de Moore reste valable, elle ne s’exprime plus en termes d’augmentation de la performance brute des processeurs mais plutôt en termes d’augmentation du nombre d’unités de calcul dans des processeurs multi-cœurs. Cette nouvelle tendance entraîne deux changements importants pour le calcul scientifique. En premier lieu, le développement de programmes parallèles est devenu un besoin de base et non plus un luxe destiné à pousser les performances aux limites du réalisable. Par exemple, la plupart des ordinateurs de bureau modernes possèdent des pro- cesseurs à deux ou quatre cœurs. Même pour l’exécution d’une simulation modeste sur un ordinateur personnel, un programme parallélisable est requis, sous peine de renoncer à la moitié voire aux trois quarts de la performance of- ferte par le processeur. Une deuxième conséquence est l’augmentation massive du nombre de cœurs disponibles dans des ordinateurs parallèles destinés au calcul scientifique. Alors que récemment encore, beaucoup de groupes de recherche effectuaient leurs calculs sur des grappes d’ordina- teurs avec une centaine de processeurs environ, des machines consistantes de plusieurs milliers de cœurs sont en train de devenir monnaie courante. Ce phénomène est parfois désigné sous le nom de extreme-scale parallelism, qu’on traduirait par parallélisme extrême en français. Comme d’autres mots-clés à la mode, ce terme ne possède pas de signification précise, mais reflète plu- tôt un changement qualitatif ressenti dans la communauté, avec un impact sur la culture de programmation pour l’implantation de modèles numériques. P ROCHAINES PARUTIONS NO DÉLAI DE RÉDACTION PARUTION 6 04.06.09 23.06.09 SP 30.06.09 01.09.09 7 03.09.09 22.09.09 8 08.10.09 27.10.09 9 05.11.09 24.11.09 10 03.12.09 22.12.09

description

Journal informatique de l'Ecole Poytechnique Fédérale de Lausanne du 26 mais 2009

Transcript of Flash informatique 2009 - no 5

Page 1: Flash informatique 2009 - no 5

FI 5 – 26 mai 2009 – page 1

Sommaire Fi 5/2009

1 Parallélisme extrême sur le Blue Gene/LJonas Lätt

2 Des petits trous, des petits trous, toujours des petits trousAppoline Raposo

2 Il y a 20 ans dans le FI

7 Programme des cours

13 Parfaire une barre de planning Visio en 20 minutes chronoJacqueline Frey

15 Forum IT du 7 mai 2009Jacqueline Dousson

16 DIT-info

Suite en page 3

éCOLE POLYTECHNIQUEFéDéRALE DE LAUSANNE

p/a EPFL - Domaine IT - CP 121 - CH 1015 Lausanne 15 - tél. +41 21 69 322 11 - Web: http://dit.epfl.ch

Parallélisme extrême sur le Blue Gene/[email protected], EPFL – Laboratoire d’ingénierie numérique

introduction

Depuis l’introduction du circuit intégré dans les années 1950, le marché de l’informatique suit une tendance caractérisée par l’augmentation expo-nentielle de la puissance de calcul au fil des années. Souvent citée sous le nom de loi de Moore d’après une constata-tion du cofondateur d’Intel Gordon E. Moore sur l’évolution de la microtech-nique, cette tendance s’applique à des aspects variés de l’informatique tels que la vitesse d’exécution des processeurs ou encore la quantité de mémoire dis-ponible dans les ordinateurs. La loi de Moore fait le bonheur des chercheurs dans le domaine du calcul numérique, car elle leur permet de fréquemment augmenter la rapidité de leurs simula-tions et la taille des problèmes simulés, permettant ainsi de nouvelles percées scientifiques. Depuis plusieurs années, ce bel optimisme dans le domaine du calcul numérique se trouve cependant freiné. Alors que la loi de Moore reste valable, elle ne s’exprime plus en termes d’augmentation de la performance brute des processeurs mais plutôt en termes d’augmentation du nombre d’unités de calcul dans des processeurs multi-cœurs. Cette nouvelle tendance entraîne deux changements importants pour le calcul scientifique. En premier lieu, le développement de programmes parallèles est devenu un besoin de base

et non plus un luxe destiné à pousser les performances aux limites du réalisable. Par exemple, la plupart des ordinateurs de bureau modernes possèdent des pro-cesseurs à deux ou quatre cœurs. Même pour l’exécution d’une simulation modeste sur un ordinateur personnel, un programme parallélisable est requis, sous peine de renoncer à la moitié voire aux trois quarts de la performance of-ferte par le processeur.

Une deuxième conséquence est l’augmentation massive du nombre de cœurs disponibles dans des ordinateurs parallèles destinés au calcul scientifique. Alors que récemment encore, beaucoup de groupes de recherche effectuaient leurs calculs sur des grappes d’ordina-teurs avec une centaine de processeurs environ, des machines consistantes de plusieurs milliers de cœurs sont en train de devenir monnaie courante. Ce phénomène est parfois désigné sous le nom de extreme-scale parallelism, qu’on traduirait par parallélisme extrême en français. Comme d’autres mots-clés à la mode, ce terme ne possède pas de signification précise, mais reflète plu-tôt un changement qualitatif ressenti dans la communauté, avec un impact sur la culture de programmation pour l’implantation de modèles numériques.

prochaineS parutionS

nodélai de

rédactionparution

6 04.06.09 23.06.09

Sp 30.06.09 01.09.09

7 03.09.09 22.09.09

8 08.10.09 27.10.09

9 05.11.09 24.11.09

10 03.12.09 22.12.09

Page 2: Flash informatique 2009 - no 5

FI 5 – 26 mai 2009 – page 2

il y a 20 anS danS le Fi

François Roulet écrivait dans son article: Messagerie électronique sur Macintosh, paru dans le FI du 21 février 89:

Depuis plusieurs années déjà, les ingénieurs de notre École et quelques rares secrétaires font usage de systèmes de courrier électronique. En quoi cela peut-il bien consister ?En fait, il s’agit essentiellement d’un télex fonctionnant au travers des ordinateurs, et permettant d’atteindre des corres-pondants équipés de la même manière, pour la plupart des universités ou des centres de recherche.Récemment, nous avons mis à disposition une de ces messageries électroniques, appelée QuickMail, sur la majorité des Macintosh de l’École qui sont raccordés entre eux par les réseaux AppleTalk et Ethernet. L’intérêt de ce produit est d’être très convivial, accessible pendant la journée (si on laisse son Mac enclenché) et dans beaucoup de bureaux puisque les secrétaires ont presque toutes une station à leur place de travail.De quoi cette messagerie se compose-t-elle ?Tout d’abord, il faut constituer une armoire de cases courrier ou serveur de messagerie, qui n’est qu’un Mac qu’on fera fonctionner si possible 24 heures sur 24, afin de pouvoir y déposer des messages même en l’absence des destinataires.Relevons que cette station ne doit pas nécessairement être dédiée à cette tâche, mais peut être utilisée normalement.[...]Installation actuelle dans l’ÉcoleIl n’y a pour l’instant qu’un serveur de messagerie Macintosh public dans l’École, situé au SIC et portant le nom de POLYMAC regroupant des personnes de plusieurs départements. Dans un futur proche, nous installerons un serveur par département. Il ne s’agit pas d’une restriction, puisque tous les serveurs communiquent entre eux pour se passer des messages jusqu’à leur destinataire final.

Télex: Le premier grand réseau Télex fut mis en place en Allemagne dans les années 1930. Il était destiné aux communications au sein du gouvernement. En France, le réseau Télex fut inauguré par le Général de Gaulle le 18 juin 1946. À un débit de 45,5 bits par seconde, énorme pour l’époque, une unique ligne téléphonique à longue distance pouvait être subdivisée en 25 canaux

Télex. Ainsi, le Télex était le moyen de communication fiable et à longue distance le moins coûteux. [Wikipédia]

Des petits trous, des petits trous, toujours des petits trous

[email protected], Domaine IT

Sprang_eco_SanS_regular

C’est le nom de cette fonte basée sur la police open source Vera Sans respectueuse de l’environnement et par là-même de votre portefeuille. En effet, de minuscules évidements circulaires dans leurs corps rendent les caractères moins consommateurs d’encre. L’utilisation avec une taille de casse courante est tout à fait lisible et les petits trous ne se remar-quent pas contrairement à ce que nous montre le logo ecofont avec ces caractères grossis de façon exagérée. Bien entendu, le résultat dépendra aussi des logiciels et des écrans utilisés. Ecofont s’intègre très bien dans OpenOffice, Appleworks et MS Office et les meilleurs résultats s’obtiennent avec une imprimante Laser. Ecofont est issue d’une police open source, son utilisation est gratuite; elle est disponible pour Mac, PC et Linux. Vous la trouverez sur le site: www.ecofont.eu/ecofont_fr.html.

pourquoi ecoFont?

Ecofont a été développée par SPRANQ creative com-munications, sur une idée originale de Colin Willems pour promouvoir la préservation de l’environnement. SPRANG donne les conseils suivants:Utilisateurs: n’imprimez que ce qui est vraiment nécessaire.

Utilisez un copieur moderne et efficace, avec du papier recyclé.

Graphistes: faites appel à des techniques modernes de sépa-ration des couleurs, pour éviter de gaspiller l’encre. Pensez toujours à l’environnement dans vos choix de papier

Offset: évitez les techniques Laser modernes, qui rendent l’encre indivisible du papier. Misez sur des innovations comme l’encre à base de soja, …

Imprimerie: investissez dans des produits écologiques et innovants.n

Page 3: Flash informatique 2009 - no 5

FI 5 – 26 mai 2009 – page 3

Dans le cas du parallélisme extrême, ce changement s’est manifesté en premier lieu en tant que difficulté rencontrée dans plusieurs secteurs du calcul numérique: des programmes parallèles qui originalement étaient développés pour des grappes d’une petite dizaine de nœuds, qui ensuite ont pu être adaptés sans trop de difficultés aux machines à une ou même plusieurs centaines de nœuds, soudainement se trou-vent impuissants face à la nouvelle génération de machines parallèles et refusent une mise à l’échelle d’un nouvel ordre de grandeur par rapport au nombre de nœuds.

Afin d’illustrer les enjeux rencontrés lors de la paralléli-sation sur des milliers de nœuds, et dans l’espoir de faciliter à d’autres programmeurs le passage à la nouvelle génération de machines parallèles, cet article raconte l’histoire du logiciel SPECULOOS [1]. Ce logiciel, dont l’acronyme signifie SPECtral Unstructured eLements Object-Orien-ted System, permet des simulations en dynamique des fluides à l’aide d’une méthode numérique dite d’éléments spectraux. Développé au début des années 1990 dans le la-boratoire d’ingénierie numérique (LIN) de l’EPFL, le code de SPECULOOS s’est patiemment adapté à l’évolution du matériel informatique pour finalement refuser ses services sur des plates-formes à plusieurs milliers de cœurs. À plusieurs reprises, le code a dû être disséqué et analysé jusqu’à ce que son profil de performance soit établi et que des modifications appropriées puissent être amenées. Cet effort a été gratifiant, puisque SPECULOOS est maintenant capable d’exploiter la pleine puissance de la machine parallèle Blue Gene/L, qui fait la fierté de l’EPFL avec ses 8192 cœurs, répartis sur 4096 nœuds bi-cœurs.

Nous montrons comment cette adaptation a été possi-ble, et de quelle manière cette percée affecte la qualité de la recherche menée. En outre, le Blue Gene/L est mis en perspective avec d’autres plates-formes de calcul à haute performance plus économiques, et l’impact du choix de la machine sur la dynamique du travail scientifique dans un groupe est mis en évidence.

évaluation de l’enjeu et du gain d’une paralléliSation

Avant de pouvoir paralléliser un code, il est important de comprendre de quelle manière se répartissent ses besoins en termes de ressources de calcul. Une telle évaluation se fait par un bilan qu’on appelle le profil de complexité, qui permet entre autres d’estimer le gain de performance que peut amener une parallélisation, et de juger de la qualité de la parallélisation lors des exécutions expérimentales du code obtenu.

En dynamique des fluides, on cherche à calculer ou simuler l’évolution de certaines variables représentant l’état du fluide, telle que la vitesse instantanée de l’écoulement en chaque point du fluide. Dans la méthode d’éléments spectraux, le domaine occupé par le fluide est découpé en sous-domaines appelés les éléments. A l’intérieur de chaque élément, les variables du fluide sont considérées comme des fonctions dépendantes de la position spatiale, et ces fonctions sont représentées de manière approchée par des

polynômes. On appellera N le degré de ces polynômes, et on dira qu’un domaine spatial tri-dimensionnel est subdivisé en E*E*E=E 3 éléments. Dans la stratégie de parallélisation adoptée par SPECULOOS, on distribue les éléments sur la machine parallèle en en attribuant un ou plusieurs à chaque coeur. Le programme décompose ensuite son évolution temporelle en cycles successifs, durant lesquels chaque cœur effectue d’abord des calculs sur les éléments qui lui sont at-tribués, puis les cœurs se transmettent des valeurs calculées situées sur la surface de leurs éléments. Cette manière de paralléliser un code est élégante et efficace, et ne possède essentiellement que trois facteurs limitatifs pouvant affecter la performance. En premier lieu, la parallélisation nécessite une communication entre processeurs qui est effectuée en plus du calcul proprement dit, et qui peut devenir coûteuse. La parallélisation n’en vaut donc la peine que si le temps de communication est fortement inférieur au temps de calcul requis par chaque élément. En deuxième lieu, la performance peut être affectée par un déséquilibre des charges entre cœurs. Si un cœur se voit attribuer moins d’éléments que les autres, ou si le calcul sur certains éléments s’avère moins onéreux que sur d’autres, le cœur peut gaspiller une partie de son temps à attendre la communication provenant de ses partenaires. Le dernier facteur potentiellement limitant est représenté par des petites composantes non parallélisables du code qui sont exécutées par chaque cœur en plus du travail sur les éléments, et qui ne profitent donc pas de la parallélisation. Il s’agit là d’un aspect de la parallélisation sur lequel nous insistons particulièrement dans cet article, et qui sera repris en détail dans un chapitre ultérieur.

Pour améliorer la précision du calcul numérique, on peut choisir, soit d’améliorer la résolution spatiale du domaine simulé en augmentant le paramètre E et donc le nombre d’élé-ments, soit d’améliorer la précision du modèle en augmentant le degré polynomial N. Il est en effet connu que l’erreur de l’approximation numérique est proportionnelle à la valeur 1/E (N+1) dans tout problème dont la solution est suffisamment régulière. En vue d’une parallélisation efficace, il est souvent considéré comme plus favorable d’augmenter le paramètre N, avec l’effet d’augmenter fortement la charge de calcul de chaque élément en n’augmentant que légèrement le volume de données à communiquer entre cœurs. Ainsi, le coût relatif de la communication se trouve diminué. D’un autre côté, une augmentation du nombre d’éléments est favorable à l’équilibrage des charges entre cœurs, car elle entraîne une flexibilité accrue dans le choix de l’attribution d’éléments aux cœurs. Cet argument est particulièrement pertinent lors d’une parallélisation à un niveau extrême, puisqu’il n’est pas rare de se retrouver avec un nombre d’éléments inférieur à celui de cœurs, et donc d’atteindre une limite naturelle à la possibilité de paralléliser le code. C’est pourquoi nous considérons surtout des situations dans lesquelles le degré polynomial est choisi préalablement comme un paramètre constant, et le nombre d’éléments est ajusté en fonction de la précision de calcul souhaitée ou de la taille de la machine parallèle utilisée.

Revenons-en donc au code SPECULOOS et à une estimation (simplifiée) de sa complexité. Un cycle temporel consiste en un processus itératif, durant lequel une opération spécifique est appliquée à chacun des E 3 éléments durant chaque itération, contribuant ainsi à la complexité du code

Parallélisme extrême sur le Blue Gene/L

Suite de la première page

Page 4: Flash informatique 2009 - no 5

FI 5 – 26 mai 2009 – page 4

d’un facteur E 3 par pas d’itération. Le coût de l’opération en question varie quant à lui en fonction du degré polyno-mial par une loi de puissance à exposant 4, ce qui rajoute un facteur N 4 à l’estimation de complexité. Finalement, il est connu que le processus itératif converge en un nombre d’itérations augmentant linéairement avec le paramètre E, et de même avec le paramètre N. Le temps de calcul T d’un cycle temporel est donc estimé comme étant

T = l E 4 N 5 [Equation 1]lors d’une exécution séquentielle (c’est-à-dire non parallèle). Le paramètre l dépendant du matériel informatique utilisé et de différents choix dans l’implantation du code, mais pas de E ni de N.

Dans ce qui suit, nous étudions les enjeux inhérents à la parallélisation d’un problème à taille constante. Nous choisissons donc le nombre d’éléments et le degré polyno-mial, E et N, comme paramètres constants, et mesurons le temps de calcul nécessité lors d’une exécution sur un nombre variable de processeurs p. Une telle mesure ne reflète pas toujours le gain de la parallélisation perçu en pratique, car il est commun dans le quotidien scientifique d’augmenter la taille du domaine de calcul lors de l’augmentation du nombre de cœurs d’une machine parallèle. D’un autre côté, les processeurs modernes, constitués d’un grand nombre de cœurs, encouragent de plus en plus les chercheurs à opter pour un parallélisme massif autant pour de grands que pour de petits problèmes. Nous choisissons donc cette vision plus exigeante du parallélisme (il est plus difficile de paralléliser un petit qu’un grand problème) afin que les conclusions soient généralement valables. Le temps de calcul est alors estimé comme étant

T = 1/p l E 4 N 5 + T(séquentiel) + T(communication) [Equation 2]

Par cette formule, on suppose que l’équilibrage de charge entre les cœurs est parfait, et on tient compte de la partie de code non parallélisable par le paramètre T(séquentiel) ainsi que du temps de communication entre les cœurs, T(communication).

exemple d’application

Afin d’illustrer les concepts exposés dans le chapitre précédent, nous introduisons un problème bien connu en dynamique des fluides décrivant un écoulement dans une ca-vité cubique, entraîné par un mouvement constant sur la face supérieure de la boîte, ainsi qu’il est illustré par la figure 1. Ce problème, qui a été étudié durant de longues années et par différentes approches dans le laboratoire d’ingénierie numé-rique, met en évidence un comportement riche et intriguant, en dépit de sa simplicité apparente. Déjà lorsque la vitesse d’entraînement du fluide est faible, on observe, en plus de deux grands tourbillons centraux dans la cavité, une séquence infinie de tourbillons dans les coins de la cavité, avec une structure passablement complexe. À des vitesses plus élevées, le fluide entre dans ce que l’on appelle un régime turbu-lent, dans lequel la structure de l’écoulement est chaotique dans l’espace et dans le temps. Il devient alors impossible, même d’un point de vue théorique, de trouver une solution exacte aux équations des fluides, et on se borne à décrire le résultat par l’intermédiaire de propriétés statistiques. Au vu des difficultés de cette entreprise, cette tâche est à ce jour encore un sujet de recherche active. Les résultats obtenus ont des répercussions non seulement sur la théorie des fluides turbulents, mais aussi dans des domaines d’ingénierie, car ils mènent à une meilleure compréhension générale des écoulements de fluides dans des espaces confinés.

Les différents régimes d’un écoulement sont décrits par un paramètre du nom de nombre de Reynolds, désigné par l’acronyme Re, qui dépend de la vitesse d’entraînement du fluide, ainsi que de sa viscosité et de la taille de la cavité. Dans un régime turbulent, caractérisé par un nombre de Reynolds élevé, la simulation des fluides est rendue difficile par l’apparition de tourbillons de différentes tailles, allant de la taille de la cavité entière jusqu’à de très petites échel-les. Indépendamment de leur taille, ces tourbillons ont un impact décisif sur le comportement du fluide et doivent donc tous être entièrement simulés. Pour ne pas faciliter les choses, la taille e des plus petits tourbillons diminue à une vitesse polynomiale lorsque le nombre de Reynolds aug-mente, selon la loi suivante: e ~ Re -(3/4). La seule manière de suivre cette évolution dans une simulation, lorsque le degré polynomial N est choisi comme un paramètre constant, consiste à adapter le paramètre E de manière équivalente: E ~ Re (3/4). Le nombre total d’éléments croît donc à une vitesse effrayante, proportionnelle à E 3 ~ Re (9/4). En plus du nombre d’éléments, la durée de la simulation croît fortement à cause de l’occurrence d’événements rares ne pouvant être observés que dans des simulations suffisamment longues. Face à ces difficultés, il est courant dans les domaines d’ingénierie de recourir à des modèles de la turbulence dans lesquels on ne simule que les grands tourbillons, et remplace la physique des petits tourbillons par des lois simplifiées. Une telle approche n’est par contre pas admissible en sciences fondamentales, lorsqu’il s’agit d’obtenir des informations aussi précises que possible sur la physique des fluides.

Dans l’ère de l’avant Blue Gene, le nombre de Reynolds pouvant être atteint dans les simulations s’élevait aux en-virons de Re = 10’000, ce qui correspond par exemple au régime d’écoulement de l’air autour d’un piéton marchant

Parallélisme extrême sur le Blue Gene/L

fig. 1– Représentation bidimensionnelle de l’écoulement dans une cavité entraînée

Page 5: Flash informatique 2009 - no 5

FI 5 – 26 mai 2009 – page 5

à une vitesse modeste. D’autre part, le nombre de Reynolds correspondant à beaucoup de situations d’intérêt industriel, tel que l’écoulement de l’air autour d’une voiture en mou-vement, s’élève à des valeurs d’un million ou plus. Alors que ces valeurs restent inatteignables sans le recours à des modèles de la turbulence, une machine telle que le Blue Gene/L permet néanmoins de s’y approcher de manière significative en atteignant des valeurs aussi élevées que Re = 100’000. Il s’agit là d’un régime exhibant des phénomènes physiques fondamentalement différents à ceux des nombres de Reynolds inférieurs, permettant une compréhension de nouveaux aspects de la turbulence.

Mesure sur BG/LRéférence

Nombre de cœurs

Perf

orman

ce

8

7

6

5

4

3

2

11024 2048 4096 8192

fig. 2 – Performance d’exécution du logiciel SPECULOOS sur le Blue Gene/L

La figure 2 met en évidence la performance du logiciel SPECULOOS lors d’une simulation de la cavité entraînée sur le Blue Gene/L. Cette étude de performance est régie par une vision forte du parallélisme, gardant le nombre d’éléments constant d’une exécution du programme à l’autre. Le nombre d’éléments est choisi de manière à n’attribuer qu’un seul élé-ment à chaque cœur lors de l’utilisation des 8192 cœurs de la machine. Il s’agit là d’un test extrêmement exigeant pour un programme parallèle, permettant de mettre en évidence un éventuel défaut dans la stratégie de parallélisation. Le nombre de cœurs varie d’une valeur de 1024 à une valeur de 8192. La courbe affiche une mesure de la performance du programme, donnée par l’inverse du temps d’exécution, et renormalisée par le temps d’exécution sur 1024 cœurs. L’équation 2 per-met d’interpréter cette courbe de la manière suivante. Si les composantes rédhibitoires à la parallélisation, T(séquentiel) et T(communication), sont nulles, la valeur de performance est égale au nombre de cœurs p divisé par 1024, tel qu’il est indiqué par la courbe pointillée sur le graphique. Pour des raisons développées dans le chapitre suivant, les anciennes versions de SPECULOOS possédaient des composantes non parallélisables difficiles à identifier, menant à un très grand écart entre les courbes de parallélisation mesurées et la va-leur idéale représentée par la courbe pointillée. Une fois ces composantes éliminées, on voit sur la figure 2 que l’écart en question s’est réduit à une valeur d’environ 20%. Des mesures ont montré que cet écart incombe entièrement aux temps de communication, réfléchissant une perte incontournable et inhérente au processus de parallélisation. À ce stade, le

logiciel SPECULOOS exploite donc de façon souhaitable les ressources offertes par la machine Blue Gene/L.

paralléliSme extrêmela règle du zéro-séquentiel

Trois étapes sont usuellement parcourues pour amélio-rer la performance parallèle d’un programme. La première consiste à établir le profil de complexité et une estimation théorique du gain de la parallélisation, et la deuxième à déterminer expérimentalement les éventuels fautifs d’une mauvaise performance, en choisissant parmi le déséquilibre des charges, le temps de communication et les composantes séquentielles du programme. Durant la troisième étape, on étudie finalement si les problèmes détectés peuvent être cor-rigés dans le laps de temps à disposition pour le projet.

Il s’est avéré dans le cas de SPECULOOS que la partie la plus difficile de ce procédé consiste à en respecter la rigueur et à éviter les conclusions hâtives. En effet, la plupart de l’analyse du code s’est effectué sous l’avis à priori que la composante séquentielle du code devait être nulle. La décomposition spatiale du problème et l’attribution aux cœurs étant simples, autant en théorie que dans l’implantation du code, il semblait inconcevable qu’une partie du programme soit exécutée de manière séquentielle. Générant une confusion nourrie en plus par une analyse de complexité incomplète, cet avis hâtif a longuement empêché de tirer la conclusion évidente: le code possédait bel et bien une composante séquentielle, invisible sur dix cœurs, presque invisible sur cent cœurs, mais réduisant à néant les efforts de parallélisation dès que l’on utilisait plusieurs milliers de cœurs.

La partie du code en cause se manifestait lors de la détermination des éléments attribués à chaque cœur. Cette partie est courte, mais non parallélisable, puisqu’elle consiste à effectuer un nombre d’opérations logiques proportionnel au nombre total de cœurs. En outre, cette partie était ré exécuté à chaque cycle temporel, alors qu’il aurait suffi de ne l’exécuter qu’une seule fois et d’en sauvegarder le résultat. Afin de discuter de l’impact de cette composante séquentielle sur la performance du programme, admettons que l’attribution des éléments aux cœurs prenne un millième du temps d’exé-cution d’un cycle temporel du programme. L’auteur original de la parallélisation de SPECULOOS a donc renoncé au calcul unique et préalable de cette opération en appliquant correctement un des principes fondamentaux du génie logi-ciel, selon lequel uniquement les parties coûteuses en temps d’exécution sont rendues efficaces, alors que les autres parties sont gardées aussi simples que possible. Cette décision s’avère par contre fâcheuse dans le contexte du parallélisme extrême. Alors que la charge de calcul de chaque cœur est divisée par le nombre de cœurs pour les composantes parallélisables, elle reste constante pour les composantes séquentielles. Sur mille cœurs, la charge relative de notre opération non parallélisée est donc démultipliée d’un facteur mille, et cette contribu-tion originalement négligeable finit par prendre la moitié du temps d’exécution du programme.

La leçon tirée de cette expérience se formule sous forme de la règle du zéro-séquentiel, demandant que le temps séquentiel investi dans un programme parallélisé doive être entièrement nul. Il ne suffit pas de le réduire à une taille

Parallélisme extrême sur le Blue Gene/L

Page 6: Flash informatique 2009 - no 5

FI 5 – 26 mai 2009 – page 6

considérée comme négligeable sur les ordinateurs contempo-rains, car leur importance relative croît dans le temps avec le nombre de cœurs des machines parallèles. Quoique simple à comprendre, cette règle n’est pas simple à utiliser, car elle va à l’encontre de l’intuition du programmeur qui se base sur la séparation entre parties importantes et négligeables d’un code. Une manière élégante de la mettre en œuvre tout en évitant des omissions consiste à adopter une vision locale du parallélisme dans laquelle chaque cœur n’a conscience que des partenaires avec lesquels il entre en contact. Pour garantir le succès de cette stratégie, on omettra simplement de fournir aux cœurs toute information globale, telle que le nombre de cœurs présents dans la machine parallèle. Si l’algorithme marche sans cette information, il y a de fortes chances qu’il survive sans trop de difficultés au transfert sur les futures générations de machines parallèles.

l’avenir du calcul ScientiFique: plate-Forme généraliSte ou matériel dédié?

Les nœuds du Blue Gene/L sont constitués de processeurs généralistes, ou autrement dit, de machines à tout faire. Du point de vue de leur architecture, ces processeurs sont simi-laires à ceux que l’on trouve par exemple dans un ordinateur de bureautique. Aux processeurs généralistes s’opposent les unités de calcul dédiées à une tâche particulière. On peut mentionner comme exemple les cartes graphiques destinées au calcul du rendu d’objets géométriques à l’écran. Il peut sembler comme un gâchis d’utiliser du matériel généraliste dans un but aussi spécifique que le calcul scientifique. Ce-pendant, une telle utilisation est devenue très commune grâce à l’évolution impressionnante de la performance des processeurs et au coût modeste du matériel, rendu possible par leur vente en grand nombre dans le domaine de la bureautique et de l’utilisation domestique. Depuis que la performance brute des processeurs a cessé son augmentation rapide, les processeurs dédiés sont cependant réapparus sur le marché comme concurrents sérieux. L’article de Francis Lapique, Les GPU ne sont pas uniquement faits pour les consoles de jeux du FI2/09 (ditwww.epfl.ch/SIC/SA/SPIP/Publications/spip.php?article1715) montre par exemple que les cartes graphiques peuvent être utilisées pour certains types de calcul scientifique et permettent de gagner un facteur 10 ou même 100 en termes de coût financier et de consomma-tion d’énergie, comparé aux processeurs généralistes. Une autre plate-forme de calcul dédiée dont les performances s’approchent de celles des cartes graphiques est proposée par IBM sous la forme du processeur Cell, le processeur utilisé à l’intérieur de la console de jeux PlayStation 3.

L’incroyable performance des cartes graphiques, du Cell et d’autres solutions de calcul dédiées a mené à une véri-table ruée vers l’or dans le domaine du calcul scientifique, dont l’ampleur initiale s’est néanmoins estompée face aux difficultés rencontrées à la programmation d’un tel matériel. Étant donné l’actualité de ce sujet, nous allons donc exposer ici les arguments qui ont été soulevés, lors du développement de SPECULOOS, en faveur et en défaveur des plates-formes dédiées, et qui ont finalement mené à la décision de préserver ce logiciel sous une forme généraliste.

Les deux principales difficultés qui se posent lors de la programmation sur du matériel dédié sont le besoin d’adresser des questions techniques de bas niveau ainsi que le manque de portabilité d’une plate-forme à l’autre. Alors que les machines généralistes proposent des couches d’abstraction permettant de programmer avec une certaine facilité et garantissant une vision unifiée de la machine d’un producteur de matériel à un autre, le matériel dédié demande une compréhension des particularités techniques du matériel, ce qui rend impossible le transfert vers le matériel d’un autre producteur. Un bon exemple est fourni par les mécanismes de transfert des données entre la mémoire principale d’une machine et le processeur. Alors qu’une machine généraliste gère automatiquement ce transfert en se basant sur des tech-niques de mémoire cache, la plupart des machines dédiées demandent au programmeur d’intervenir manuellement dans ce processus. Cette gestion explicite de la mémoire peut mener à des gains de performance très importants, mais elle détourne le programmeur de son but initial, le calcul scientifique, dans un domaine hautement technique.

À première vue, autant les cartes graphiques que les pro-cesseurs Cell offrent une structure assez semblable à celle du Blue Gene/L, consistant d’une multitude d’unités de calcul petites, mais efficaces. Il semble donc naturel de retenter l’astuce de la parallélisation en décomposition spatiale, par l’attribution d’un certain nombre d’éléments à chaque unité de calcul. L’impossibilité d’une telle entreprise se manifeste très vite à travers le fait que SPECULOOS peut n’être ni compilé ni exécuté, ni sur une unité de calcul du Cell, ni sur une carte graphique. Les cartes graphiques ne peuvent être programmées qu’à travers un langage de programma-tion dédié à la machine, comme le langage CUDA pour les cartes graphiques de NVIDIA. On serait donc obligé d’entièrement reprogrammer le programme, ce qui est peu encourageant pour une application comme SPECULOOS qui a pris quinze ans à être écrite. Sur le Cell, la difficulté est encore plus monumentale. Afin d’exploiter le potentiel de cette machine, une partie importante du travail doit être transférée à des unités de calcul du processeur qui portent le nom de SPE (Synergistic Processing Element). Ces SPE se caractérisent par leur très grande vitesse de calcul, mais aussi par la très petite taille de leur mémoire. Bien qu’il soit imaginable de transférer la mémoire de travail associée à un élément spectral sur l’un de ces SPE, il n’est pas possible de transférer le code de SPECULOOS dans son intégralité sur un SPE, car le code lui-même dépasse largement la taille de la mémoire disponible! Il est par conséquent impossible, ou en tout cas très difficile, de faire exécuter par un SPE l’intégralité des opérations requises pour un élément spectral.

L’utilisation de matériel dédié impose donc une approche hybride dans laquelle quelques parties du code uniquement, jugées cruciales, sont confiées à un SPE du Cell, ou encore à une carte graphique. SPECULOOS par exemple invoque beaucoup de fonctions d’algèbre linéaire de base, qui sont implantées dans des librairies comme BLAS et LAPACK. On pourrait donc espérer un gain de performance en se référant à des versions de ces librairies qui s’exécutent sur des plates-formes dédiées. De nombreuses difficultés doivent par contre être surmontées avant que cette fin soit atteinte, telles que la limitation de mémoire sur un SPE du Cell, la limitation de bande passante connectant une carte graphique

Parallélisme extrême sur le Blue Gene/L

Page 7: Flash informatique 2009 - no 5

FI 5 – 26 mai 2009 – page 7

à la mémoire centrale, le non-respect des règles de standard pour l’exécution de calculs en virgule flottante pour le Cell et la carte graphique, le manque de précision des calculs en virgule flottante pour les cartes graphiques, et bien d’autres. Le travail de programmation à effectuer doit être considéré comme particulièrement coûteux, car il ne peut être effectué que par une personne ou une équipe de personnes hautement qualifiée dans le domaine d’application du logiciel considéré, dans les domaines de l’analyse numérique, du génie logiciel et de la programmation proche de la machine.

Cette discussion montre que le choix entre une plate-forme généraliste et un matériel dédié revient finalement à une question de répartition des coûts. Alors que dans le premier cas de fortes sommes d’argent sont investies dans l’achat de matériel, c’est le travail de personnel qualifié qui s’avère particulièrement coûteux dans le second cas. En outre, au-delà des considérations de prix, le choix de la plate-forme de programmation aura un impact sur le type et sur la qua-lité de recherche menés, puisqu’une plate-forme généraliste libère le programmeur de beaucoup de tâches techniques et accorde plus de temps au sujet scientifique en question. Le travail avec ces différentes plates-formes de calcul à haute performance nous a donc fait clairement pencher en faveur du Blue Gene/L pour le code SPECULOOS. De manière générale, le Blue Gene/L et des machines semblables s’avèrent

Parallélisme extrême sur le Blue Gene/L

être des outils de travail indispensables pour maintenir le rythme imposé par la recherche de pointe dans un institut tel que l’EPFL.

remerciementS

La version massivement parallèle du code SPECULOOS est le résultat d’un travail pluridisciplinaire de la part de nombreux intervenants. Nous mentionnerons en particu-lier le soutien théorique et les connaissances détaillées du code SPECULOOS offerts par Michel Deville et Roland Bouffanais, ainsi que le travail d’analyse de code, d’étude et de mesure de performance fourni par Ralf Gruber, Sohrab Kehtari, Vincent Keller et Christoph Bosshard. En outre, l’exploitation efficace du BlueGene/L n’a été possible que grâce à un soutien intensif de la part de l’équipe HPC du Domaine IT, et en particulier grâce aux conseils avisés de Christian Clémençon.

réFérence

[1] Le logiciel libre OpenSPECULOOS: www.sourceforge.net/projects/openspeculoos/ n

Programme des coursorganisés par le Domaine IT de l’EPFL

Ces cours sont ouverts à tous, membres ou non de l’EPFL.Pour le personnel de l’EPFL, le DIT se charge des frais de cours.Les descriptifs des cours sont sur Internet: dit.epfl.ch/formation

Vous pouvez nous atteindre à l’adresse: [email protected]

conditionS d’inScriptionEn cas d’empêchement à suivre le(s) cours, l’élève avertira le Domaine IT au minimum une semaine à l’avance (sauf cas

exceptionnel), faute de quoi le DIT se réserve le droit de facturer à son unité les frais occasionnés pour le cours.Une confirmation parviendra à l’élève avant le(s) cours. S’il est déjà complet, l’élève sera informé de suite et son nom placé

en liste d’attente. Dès qu’un cours identique sera fixé, il recevra un courriel l’informant des nouvelles dates.Le DIT se réserve le droit d’annuler un cours si le nombre minimum de 4 participants n’est pas atteint ou pour des raisons

indépendantes de sa volonté. Aucune compensation ne sera due par le DIT.

introduction au poSte de travailNom du cours système n° date(s) horaire 1/2 j.Le B.A.-BA... de la messagerie et d’Internet sur PC 09-0303 27.05.09 13:30 - 17:00 1Mac OS X optimiser la gestion de vos dossiers et documents 09-0335 28.05.09 08:30 - 12:00 1 rapido: Mail et Carnet d’adresses 09-0336 03.06.09 08:30 - 10:30 1Windows Vista rapido l’essentiel des nouveautés 09-0209 17.06.09 08:30 - 10:30 1

Renseignements(les matins des lu, ma & ve)[email protected]✆ 021/69 353 14Fax: 021/69 322 20

Renseignements(tous les matins)

[email protected]✆ 021/69 322 44

Fax: 021/69 322 20

Nouveau

Page 8: Flash informatique 2009 - no 5

FI 5 – 26 mai 2009 – page 8

acquiSition et traitement de donnéeSNom du cours système n° date(s) horaire 1/2 j.LabVIEW Basics I 09-0036 22 au 24.06.09 08:30 - 17:00 6 Basics II 09-0034 28 & 29.05.09 08:30 - 17:00 4 Basics II 09-0037 25 & 26.06.09 08:30 - 17:00 4 Real-Time 09-0035 17 au 19.06.09 08:30 - 17:00 6

applicationS de geStion de l’epFlNom du cours système n° date(s) horaire 1/2 j.Accréditation Accréditation EPFL 09-0267 02.06.09 13:30 - 17:00 1Service financier et CCSAP Comptabilité EPFL, Infocentre, notes de frais 09-0045 24, 25 & 29.06.09 08:30 - 12:00 3 Comptabilité EPFL, Infocentre, notes de frais 09-0046 02, 03 & 07.09.09 08:30 - 12:00 3

baSe de donnéeSNom du cours système n° date(s) horaire 1/2 j.Access 2007 2-avancé 09-0161 15, 22 & 24.06.09 08:30 - 12:00 3FileMaker Pro 9 5-développement d’une base de données 09-0181 04, 09 & 11.06.09 13:30 - 17:00 3MySQL prise en main et développement 09-0285 08 & 09.10.09 08:30 - 17:00 4

deSSin - imageNom du cours système n° date(s) horaire 1/2 j.Illustrator CS3 introduction 09-0216 22 & 24.06.09 13:30 - 17:00 2PhotoShop CS3 retouche d’images 09-0257 16, 18, 23 & 25.06.09 13:30 - 17:00 4

éditionNom du cours système n° date(s) horaire 1/2 j.EndNote création et intégration de fichiers de références 09-0300 12 & 16.06.09 08:30 - 12:00 2Word 2007 rapido: publipostage (mailing) 09-0225 03.06.09 08:30 - 10:30 1 transition et nouveautés 09-0207 27.05.09 08:30 - 12:00 1 transition et nouveautés 09-0210 22.06.09 13:30 - 17:00 1Word Mac 2004 ou PC 2003 création de modèles personnalisés 09-0261 23.06.09 08:30 - 12:00 1 les longs documents 09-0235 09 & 11.06.09 08:30 - 12:00 2

organiSation - planiFicationNom du cours système n° date(s) horaire 1/2 j.MindManager Pro 7 MindManager Pro 7 09-0226 09.06.09 08:30 - 12:00 1Outlook 2007 calendrier, tâches et note 09-0214 11.06.09 08:30 - 12:00 1 messagerie et contacts 09-0213 04.06.09 08:30 - 12:00 1Project 2007 1-introduction 09-0227 15 & 17.06.09 13:30 - 17:00 2VisualMind VisualMind 09-0228 10.06.09 13:30 - 17:00 1

Formation

Nouveau

Page 9: Flash informatique 2009 - no 5

FI 5 – 26 mai 2009 – page 9

préSentationNom du cours système n° date(s) horaire 1/2 j.PowerPoint 2007 rapido: 3-diaporama 09-0241 05.06.09 08:30 - 10:30 1 rapido: transition et nouveautés 09-0238 19.06.09 08:30 - 10:30 1PowerPoint Mac 2004 ou PC 2003 rapido: 1-dessin et objets 09-0262 12.06.09 08:30 - 10:30 1 rapido: 2-modèles et masques 09-0263 19.06.09 08:30 - 10:30 1 rapido: 3-diaporama 09-0264 26.06.09 08:30 - 10:30 1

programmationNom du cours système n° date(s) horaire 1/2 j.AJAX développement d’applications Web 2.0 09-0286 19 au 21.10.09 08:30 - 17:00 6C++ templates et STL 09-0283 01 & 02.10.09 08:30 - 17:00 4C++ programming (in English) A Comprehensive Hands-On Introduction 09-0279 08 au 12.06.09 08:30 - 17:00 10Google API utiliser les Google APIs dans vos pages Web 09-0290 15 & 16.06.09 08:30 - 17:00 4HPC (in English) DIT HPC servers usage 09-0298 17.06.09 08:30 - 17:00 2MPI (in English) an introduction to parallel programming 09-0270 22 au 25.06.09 08:30 - 17:00 8PHP5 développer un site Web Dynamique 09-0284 05 au 07.10.09 08:30 - 17:00 6Spring 2.5 le framework Spring 2.5 09-0282 22 au 24.09.09 08:30 - 17:00 6Struts 2 développer des applications Web MVC 09-0281 02 au 04.09.09 08:30 - 17:00 6

SyStèmeNom du cours système n° date(s) horaire 1/2 j.Linux 4-sécurité 09-0287 26 au 28.10.09 08:30 - 17:00 6

tableurNom du cours système n° date(s) horaire 1/2 j.Excel 2007 1-introduction 09-0197 03.06.09 13:30 - 17:00 1 2-feuilles de calcul 09-0198 09, 11 & 16.06.09 13:30 - 17:00 3 base de données 09-0200 23.06.09 13:30 - 17:00 1 rapido: les graphiques 09-0199 18.06.09 13:30 - 15:30 1 rapido: les tableaux croisés dynamiques 09-0201 25.06.09 13:30 - 15:30 1 rapido: transition et nouveautés 09-0208 08.06.09 13:30 - 15:30 1 VBA 1-introduction 09-0289 31.08 & 01.09.09 08:30 - 17:00 4Excel Mac 2004 ou PC 2003 base de données 09-0195 29.05.09 08:30 - 12:00 1 rapido: les tableaux croisés dynamiques 09-0196 05.06.09 08:30 - 10:30 1

Formation

Nouveau

Nouveau

Nouveau

Nouveau

Nouveau

Page 10: Flash informatique 2009 - no 5

FI 5 – 26 mai 2009 – page 10

Nouveau

www - webNom du cours système n° date(s) horaire 1/2 j.Dreamweaver CS3 HTML et feuilles de styles 09-0184 08 & 10.06.09 08:30 - 12:00 2Inform création de formulaires EPFL 09-0248 25.06.09 08:30 - 12:00 1Jahia 4 création de sites Web EPFL 09-0190 02 & 04.06.09 08:30 - 12:00 2

Y Y Y Y Y Y Y Y Y Y Y

Y c o u r S d ’ é t é YY Y Y Y Y Y Y Y Y Y Y

Semaine 27 - du 29 juin au 3 juilletNom du cours système n° date(s) horaire 1/2 j.LaTeX (français-English) les bases pour un travail de secrétariat 09-0269 29, 30.06, 02 & 03.07.09 08:30 - 17:00 8LabVIEW DAQ 09-0038 29.06 au 01.07.09 08:30 - 17:00 6FileMaker Pro 9 de l’intro aux scripts 09-0176 29.06 au 02.07.09 08:30 - 11:00 4Jahia 4création de sites web EPFL 09-0311 29.06 au 01.07.09 13:00 - 15:30 3Le B.A.-BA... de la messagerie et d’Internet sur PC 09-0304 30.06.09 08:30 - 12:00 1Excel 2007 VBA 2-avancé 09-0288 02 & 03.07.09 08:30 - 17:00 4

Semaine 28 - du 6 au 10 juilletNom du cours système n° date(s) horaire 1/2 j.Word 2007 de l’intro aux différentes mises en page 09-0316 06 au 09.07.09 13:00 - 15:30 4Windows Vista l’essentiel des nouveautés 09-0322 10.07.09 08:30 - 11:00 1

Semaine 29 - du 13 au 17 juilletNom du cours système n° date(s) horaire 1/2 j.

Word Mac 2004 ou PC 2003 de l’intro aux différentes mises en page 09-0317 13 au 16.07.09 13:00 - 15:30 4Accréditation Accréditation EPFL 09-0333 14.07.09 08:30 - 12:00 1Word 2007 transition et nouveautés 09-0323 15 & 17.07.09 08:30 - 11:00 2

Formation

Page 11: Flash informatique 2009 - no 5

FI 5 – 26 mai 2009 – page 11

Semaine 30 - du 20 au 24 juilletNom du cours système n° date(s) horaire 1/2 j.

Mac OS X de la gestion des dossiers au Mail 09-0315 20 & 21.07.09 08:30 - 11:00 2Dreamweaver CS3 introduction 09-0307 20 au 24.07.09 13:00 - 15:30 5Project et MindManager 2007 introduction 09-0319 20 au 23.07.09 13:00 - 15:30 4LabWindows/CVI I LabWindows/CVI I 09-0039 22 au 24.07.09 08:30 - 17:00 6Excel 2007 transition et nouveautés 09-0324 23.07.09 08:30 - 11:00 1

Semaine 31 - du 27 au 31 juilletNom du cours système n° date(s) horaire 1/2 j.Excel 2007 de l’intro à la feuille de calcul 09-0308 27 au 30.07.09 08:30 - 11:00 4TestStand I TestStand I 09-0040 27 au 29.07.09 08:30 - 17:00 6PowerPoint 2007 de l’intro au diaporama 09-0321 27 au 29.07.09 13:00 - 15:30 3Illustrator CS3 introduction 09-0309 27 au 29.07.09 13:00 - 15:30 3PowerPoint Mac 2004 ou PC 2003 de l’intro au diaporama 09-0329 29 au 31.07.09 08:30 - 11:00 3

Semaine 32 - du 3 au 7 aoûtNom du cours système n° date(s) horaire 1/2 j.Word 2007 transition et nouveautés 09-0326 03 & 04.08.09 13:00 - 15:30 2EndNote création et intégration de fichiers de références 09-0325 05 au 07.08.09 08:30 - 11:00 3Inform création de formulaires EPFL 09-0314 06 & 07.08.09 08:30 - 11:00 2

Semaine 33 - du 10 au 14 aoûtNom du cours système n° date(s) horaire 1/2 j.Cours de base apprentis 09-0175 10 au 21.08.09 08:30 - 12:00 10PhotoShop CS3 retouche d’images 09-0332 10 au 13.08.09 13:00 - 16:30 4InDesign CS3 introduction 09-0310 10 au 13.08.09 13:00 - 15:30 4

Semaine 34 - du 17 au 21 aoûtNom du cours système n° date(s) horaire 1/2 j.Flash CS3 introduction 09-0330 17 au 21.08.09 13:00 - 15:30 5Excel 2007 transition et nouveautés 09-0328 17.08.09 08:30 - 11:00 1

Formation

Page 12: Flash informatique 2009 - no 5

FI 5 – 26 mai 2009 – page 12

inScription pour leS courS organiSéS par le dit

A retourner à Josiane Scalfo ou à Danièle Gonzalez, DIT-EPFL, CP 121, 1015 Lausanne 15

Je, soussigné(e) Nom: ____________________________________ Prénom: ___________________________

E-Mail: _______________________________________________ Tél.: ______________________________

Fonction: _____________________________________________

Institut: ______________________________________________ Faculté: ____________________________

Adresse: ___________________________________________________________________________________

m’engage à suivre le(s) cours dans son (leur) intégralité et à respecter l’horaire selon les conditions d’inscription:

Nom du cours N° du cours N° cours de remplacement Date du cours

__________________________________________________________________________________________

__________________________________________________________________________________________

Date: ______________________________________________ signature: __________________________

Autorisation du chef hiérarchique: _____________________________________________________________

Nom lisible: ___________________________________________ signature: _________________________

Description ou titre des cours que je souhaite voir organiser par le DIT: ______________________________________

__________________________________________________________________________________________

FileMaker Pro 9 de l’intro aux scripts 09-0331 17 au 20.08.09 13:00 - 15:30 4Outlook 2007 de la messagerie au calendrier 09-0320 19 au 21.08.09 08:30 - 11:00 3LabVIEW FPGA 09-0337 19 au 21.08.09 08:30 - 17:00 6

Semaine 35 - du 24 au 28 aoûtNom du cours système n° date(s) horaire 1/2 j.LabVIEW Basics I 09-0338 24 au 26.08.09 08:30 - 17:00 6Access 2007 1-introduction 09-0306 24 au 27.08.09 08:30 - 12:00 4Linux 3-administration et réseau 09-0280 24 au 27.08.09 08:30 - 17:00 8Jahia 4 création de sites web EPFL 09-0312 24 au 26.08.09 08:30 - 11:00 3Word 2007 les longs documents 09-0318 24 au 27.08.09 13:00 - 15:30 4Excel Mac 2004 ou PC 2003 de l’intro à la feuille de calcul 09-0313 24 au 27.08.09 13:00 - 15:30 4LabVIEW Basics II 09-0339 27 au 28.08.09 08:30 - 17:00 4Windows Vista l’essentiel des nouveautés 09-0327 28.08.09 08:30 - 11:00 1Accréditation Accréditation EPFL 09-0334 28.08.09 08:30 - 12:00 1

Formation

Page 13: Flash informatique 2009 - no 5

FI 5 – 26 mai 2009 – page 13

Rappelez-vous; en mars dernier votre barre de

planning Visio vous avait valu moult éloges lors de la pré-sentation de votre projet. S’il vous reste encore un peu de temps, nous allons aujourd’hui la fignoler un peu – mais pas trop non plus, car comme dirait un très cher ami à moi: c’est dans le moins qu’on trouve le plus.

Zoomer sur une partie de la barre de planning = créer une barre de planning étendue

Si une phase du projet doit être plus détaillée que les autres, utilisez la barre de planning étendue. Celle-ci per-met d’étendre un segment d’une barre de planning existante comme une deuxième barre de planning pour afficher plus de détails.

Pour pouvoir utiliser la fonctionnalité barre de planning étendue, il faut bien entendu qu’une barre de planning figure déjà sur la page de dessin. J’espère donc que vous avez conservé votre exercice du mois précédent: Présenter un projet avec Visio en 24 minutes chrono – ditwww.epfl.ch/SIC/SA/SPIP/Publications/spip.php?article1724.z Faites glisser depuis le gabarit la forme Barre de planning

étendue sur la page (par exemple en dessous de la barre de planning figurant déjà sur la page).

z Dans la boîte de dialogue Configurer la barre de plan-ning, indiquez les options souhaitées pour la barre de planning étendue dans les onglets Période et Format de l’heure. Bien entendu, les dates de début et de fin doivent se situer dans la période de la barre de planning d’origine:

z La barre de planning étendue apparaît sur la page de dessin et affiche les éléments suivants:

w des traits en pointillés gris indiquant la section de la barre de planning d’origine représentée par la barre de planning étendue; sur la barre de planning principale ces traits pointillés se terminent par de petits losanges jaunes. Faites-les glisser pour modifier l’étendue de la section qui doit être représentée.

w des jalons et intervalles communs. Ils sont synchroni-sés automatiquement; si vous les modifiez sur une barre de planning, ils changent également sur l’autre.

Remarquez que par défaut la barre de planning étendue reprend la même apparence que la barre de planning d’ori-gine.

z Mettez en forme et configurez la barre de planning éten-due en cliquant sur celle-ci à l’aide du bouton droit de la souris. Choisissez la commande Configurer l’intervalle et tapez une description:

z Toujours à l’aide du bouton droit de la souris, choississez la commande Définir le type d’intervalle pour modifier l’apparence de la barre étendue :

z Complétez la barre étendue en ajoutant des jalons et des intervalles. Si souhaité, modifiez les paramètres de chacun d’eux à l’aide du bouton droit de la souris.

Parfaire une barre de planning Visio en 20 minutes chrono

Jacqueline Frey, arobasque, [email protected]

Page 14: Flash informatique 2009 - no 5

FI 5 – 26 mai 2009 – page 14

ajouter un marqueur de date actuellez Depuis le gabarit, faites glisser le Marqueur Aujourd’hui

sur votre barre de planning (pas celle qui est étendue... l’autre).

z Pour modifier le texte d’exemple Aujourd’hui, sélec-tionnez le marqueur puis tapez simplement le nouveau texte.

ajouter un marqueur de durée écouléez Depuis le gabarit, faites glisser l’élément Durée écoulée

sur votre barre de planning (pas celle qui est étendue... plutôt l’autre). Comme les deux barres sont synchro-nisées, la durée écoulée sera représentée sur les deux barres.

z Si la barre bleue représentant la durée écoulée se trouve en avant-plan par rapport aux jalons, modifiez l’ordre de ces différents éléments.

w Demandez l’affichage de la barre d’outils Action (Affichage > Barre d’outils).

w Sélectionnez les jalons à l’aide de la touche CTRL. w Dans la barre d’outils Action, cliquez sur le bouton

Mettre au premier plan.

J’espère que cet exercice vous aura donné envie d’utiliser Visio et peut-être d’en savoir plus... A bientôt ! n

Parfaire une barre de planning Visio en 20 minutes chrono

Page 15: Flash informatique 2009 - no 5

FI 5 – 26 mai 2009 – page 15

du 7 mai [email protected], Domaine IT

Les ForumIT sont l’occasion pour le DIT de faire l’état des lieux de certaines de ses prestations

et de faire connaître des nouveaux projets à un public de responsables informatique de l’EPFL. Voici un résumé des présentations de ce ForumIT de printemps.

it@epFl, Survol deS Six dernierS moiSJean-Claude Berney

Hpc (calcul Haute performance)Dans le but de maîtriser les besoins, une nouvelle straté-

gie de financement HPC a été mise en place à l’EPFL, basée sur une hiérarchie des infrastructures de calcul où le rapport financement central/local varie d’une catégorie à l’autre (voir l’article Stratégie de financement HPC à l’EPFL, dans le FI3/2009, ditwww.epfl.ch/SIC/SA/SPIP/Publications/spip.php?article1581).

Le projet CADMOS (Center for Advanced Modelling System) prend forme; sur le modèle du CIBM, cette mise en commun des ressources (cantons de Vaud et de Genève, EPFL) devrait permettre d’assurer l’après BlueGene.

La problématique des salles serveurs devient préoccupan-te: on arrive à saturation des installations existantes du point de vue logistique (refroidissement, alimentation); la construc-tion d’un data center central pourrait être envisagée.

crédits it centrauxRappel: ils sont réservés aux infrastructures pour l’ensei-

gnement (renouvellement de salles et logiciels); cette année six demandes sont en cours d’analyse, elles seront acceptées moyennant quelques coupures.

acHatsLe règlement des achats a été mis à jour, ainsi qu’un guide

des achats spécifiques aux achats IT.

réseauLes points forts de ces 6 mois ont été la connexion à 1Gbit

pour l’IMT de Neuchâtel et la mise en service du nouveau bâtiment des Sciences de la vie.

Le DIT est impliqué également dans les nouvelles constructions (Rolex Learning Center, logements pour étudiants, quartier de l’innovation) où il sera en charge de la gestion du réseau informatique.

sécurité et disponibilité des services critiques

De plus en plus de services critiques sont connectés à un répartiteur de charges (voir l’article Server Load Balancing, le réseau s’en charge, dans le FI6/2008, ditwww.epfl.ch/SIC/SA/SPIP/Publications/spip.php?article1486).

Un nouveau serveur VPN a été mis en service; le proto-cole PPTP, n’offrant qu’un faible niveau de sécurité, n’est plus supporté sur ce nouveau serveur. Certains PDA ne supportant

pas encore L2TP/IPSec, l’ancien serveur VPN reste accessible pendant quelques mois (voir l’article Un nouveau serveur VPN, FI3/2009, ditwww.epfl.ch/SIC/SA/SPIP/Publications/spip.php?article1718).

stockageLe cahier des charges pour le renouvellement de l’infras-

tructure NAS du DIT a été publié.

virtualisation232 machines virtuelles sont aujourd’hui hébergées au

DIT dont 69 serveurs de Faculté.

messageriez Seuls les protocoles sécurisés sont autorisés depuis dé-

cembre 2008 (MAPI, IMAPS, POPS).z Les utilisateurs peuvent consulter l’historique de leur

consommation disque: https://ewa.epfl.ch/tools.z Un audit a donné un avis positif sur l’infrastructure

Exchange.

active directoryD’ici quelques semaines, toutes les facultés seront inté-

grées dans l’outil de synchronisation MIIS.

myprintDepuis la mise en place du système de comptabilisation

(15 septembre 2008), 900’000 pages ont été imprimées sur 70 imprimantes installées. La répartition des responsabilités entre DIT (gestion du logiciel et des serveurs), CAMIPRO (monétique) et service de reprographie (choix des modèles multi-fonctions) a été clairement établie.

La politique d’impression sera définie dans les prochains mois.

postes des services centrauxLa solution Atempo Livebackup est proposée aux utili-

sateurs, pour sauvegarder leur poste en temps réel.

kisz Un nouveau CMS (voir article Content Management

System de l’EPFL, serez-vous tous contents ?, du FI4/2009, ditwww.epfl.ch/SIC/SA/SPIP/Publications/spip.php?article1743) sera mis en place fin 2009, en même temps qu’une nouvelle charte graphique actuel-lement au concours.

z La solution GED de Alfresco se déploie : une version de base pour secrétariat standard et une solution en cours de développement pour le SAC.

z SWITCH AAA: deux projets EPFL sont retenus, ils seront financés à 50% par Switch.

services unixLes annuaires OpenDirectory et Native LDAP seront mis

en place pour les mondes Solaris et MacOSX.

Page 16: Flash informatique 2009 - no 5

FI 5 – 26 mai 2009 – page 16 ISSN 1420-7192

DIT-infopréSentation de julien delaSoie

Julien Delasoie vient renforcer l’équipe Infoscience et permettre ainsi d’accélérer le développement du module Curator qui facilitera le processus de soumission des chercheurs et le travail de suivi des bibliothécaires scientifiques. Julien, après avoir fait des études à la HEG de Sierre, a travaillé plusieurs années comme in-formaticien indépendant pour le compte de sa propre société. Spécialisé dans les outils modernes de dévelop-pement comme Ruby on Rails ou Django (Python), Julien apporte ses précieuses compétences au KIS, où il sera en poste pour une année.

[email protected], Domaine IT

pdaLa configuration des modèles les plus courants (pour

synchronisation Exchange, connexion WiFi et client VPN) est publiée. Un wiki (wiki.epfl.ch/pda) est ouvert à tous pour échanger d’autres informations.

inFraStructure de backup centraliSéeAristide Boisseau

L’infrastructure de backup proposée par le DIT est en pleine évolution. Début 2009, elle était basée sur du matériel SUN, un master serveur et trois media serveurs, deux drives qui supportent le protocole NDMP, huit pour les autres protocoles. Environ 8 TB sont sauvegardés par jour (un peu plus de 50 % par le protocole NDMP). La nouvelle infras-tructure, basée sur du matériel SUN plus récent, supportant une meilleure bande passante va permettre un meilleur service notamment par l'introduction du backup sur disque.

Cet automne, le robot va être déplacé, afin de séparer géographiquement les moyens de stockage et sauvegarde, ce qui entraînera une indisponibilité d’une semaine pour les données sur cartouche.

expérience de virtualiSation au dit Jean-Claude de Giorgi, Eric Krejci, Christian Zufferey

Les quatre salles de cours du DIT sont chacune dédiée à un environnement système; pendant une même semaine, des cours différents se les partagent, ce qui induit des difficultés d’exploitation. La virtualisation des postes personnels de ces salles facilitera le déploiement des environnements, une ma-chine virtuelle pourra être attribuée à chaque utilisateur qui retrouvera ses données personnelles pendant toute la durée du cours (même s’il est étalé sur des jours non consécutifs), et les salles ne seront plus obligatoirement dédiées à un système. La solution VMware View est tout à fait prometteuse même si certains détails restent à résoudre au niveau des clients View. Les performances pour l’utilisation des logiciels d’applica-

tion sont tout à fait satisfaisantes. Cette expérience au DIT pourrait être étendue à d’autres salles de l’EPFL.

VMware View est la solution VDI de VMware: VDI est un standard qui vise à séparer le bureau de l’utilisateur de la machine physique, il pourra ainsi accéder à son bureau depuis n’importe où. C’est un domaine en pleine évolution avec d’autres acteurs que VMware sur le marché.

Dans la solution pilote déployée au DIT, une cinquan-taine de machines virtuelles (Vista et XP) ont été déployées. Ces VM ont un disque de 36 GB, avec 2 GB de RAM. Ce déploiement a duré moins de 50 minutes. Les disques virtuels sont créés sur notre SAN. De plus, nous avons utilisé la technologie dite du linked Clone, qui nous permet d’économiser de manière significative de la place disque sur le SAN, ce qui signifie que la taille du disque virtuel passe ainsi à 2GB au lieu de 36.

l’inSécurité Se cache danS leS urlMartin Ouwehand

Rappel des consignes données dans l’article éponyme paru dans le FI4/2009, ditwww.epfl.ch/SIC/SA/SPIP/Pu-blications/spip.php?article1745:z être attentif quand on copie/colle une adresse URL à ne

pas y faire figurer des informations liées à des sessions authentifiées;

z pour les sites Web: préférer les cookies, vérifier la durée de vie des jetons, empêcher les robots d’indexer des pages privées;

z et quand c’est trop tard, www.google.com/webmasters/tools pour nettoyer les caches de Google!

Comme d’habitude les présentations sont accessibles sur la page: dit.epfl.ch/page55589.html.

Rendez-vous à l’automne! Entre-temps n’hésitez pas à nous faire part de vos suggestions pour les thèmes à aborder ou la forme de ces rencontres biannuelles.n

ForumIT du 7 mai 2009

flash informatiqueLes articles ne reflètent que l’opinion de leurs auteurs. Toute reproduction, même partielle, n’est autorisée qu’avec l’accord de la rédaction et des auteurs. Abonnement à la version élec-tronique du FI en envoyant un courrier à: [email protected]édacteur en chef: Jacqueline Dousson, [email protected] en page & graphisme: Appoline Raposo de BarbosaComité de rédaction: Aristide Boisseau, Paulo de Jesus, Patrice Fumasoli,

Jean-Damien Humair, Laurent Kling, Vittoria Rezzonico, François Roulet, Christophe Salzmann, Predrag Viceic & Jacques Virchaux

Impression: Atelier de Reprographie EPFLTirage: 4000 exemplairesAdresse Web: dit.epfl.ch/FI-spipAdresse: Domaine IT EPFL CP 121, CH-1015 Lausanne 15Téléphone: +4121 69 32246 & 32247