10
20.12.2011
FlashInformatique.epfl.ch
p/a EPFL - Domaine IT - Station 8 - CH 1015 Lausanne - tél. +41 21 69 322 11
page 3
Actualités
Voeux de la rédaction
Actualités DIT-info 2 Jacques vole vers d'autres destinations – Le DIT vous forme – Le prix de l'AFCA – iPhone et Wi-Fi Swisscom La disparition programmée de l’ordinateur Marielle Stamm & Yves Bolognini
22
Savoir et savoir-faire en algorithmique Christian Kauth & Jonas Wagner
24
Echos du ForumIT d’automne Jean-Claude Berney
27
Analyse iPad, une révolution dans la salle de classe ? Bettina Büchel & Iain Cooke
20
Brève routeRANK
8
Comment faire ? La téléphonie VoIP privée en pratique 16
Jacques Menu
Logiciel libre Quantum GIS Nicolas Lachance-Bernard & Timothée Produit
3
Le logiciel libre dans le HPC
10
Vittoria Rezzonico Vers une informatique pédagogique libre au DIP genevois ? Marco Gregori
14
Prochaines parutions No Délai de rédaction Parution 1
12.01.12
31.01.12
2
09.02.12
28.02.12
3
08.03.12
27.03.12
tout public public averti expert
La rédaction du Flash informatique vous souhaite de joyeuses fêtes de fin d’année
et une année 2012 informatique avec, sans, sur ou dans le nuage !
Actualités
DIT-info
Jacques vole vers d'autres destinations Après plus de 25 ans de collaboration dans le groupe DIT-TI, Jacques Virchaux a pris une retraite bien méritée fin novembre 2011. Il a bien voulu résumer lui-même sa carrière à l’EPFL. Je vous laisse la découvrir: «Le 1er juin 1979, le Professeur Moser m’engagea au Laboratoire de Physique Appliquée pour travailler dans le domaine naissant du Génie Médical. C’est là que j’établirai un premier réseau DECnet point-à-point entre deux ordinateurs PDP-11/34, l’un étant au LPA à l’avenue Ruchonnet, l’autre dans un local aux soins intensifs du CHUV (le bâtiment Nestlé de l’époque). J’ai fait aussi mes premiers pas sur le VAX11/780 du département de Physique (un des tous premiers à l’EPFL). En 1982, j’ai été engagé par Kurt Oesch dans le nouveau Service Informatique Général issu du Centre de Calcul d’alors. Je m’occuperai d’abord de la distribution des systèmes d’exploitation pour les PDP-11 (RT-11 et RSX-11M) dans toute l’école. Il faut dire que cela représentait une pile de quatre à six disques dont la capacité variait entre 2,5 et 10 MB ! Avec l’évolution du parc VAX/VMS, j’ai aussi participé au développement du réseau d’interconnexion aussi bien en interne qu’au niveau national (réseau CHADnet). C’est en 1986 que j’ai été appelé à m’occuper de messagerie avec le réseau BITNET/EARN, sponsorisé par IBM, et que j’ai obtenu ma première adresse e-mail internationale (VIRCHAUX@CLSEPF51.BITNET). De ce fait, je me suis retrouvé dans l’équipe réseau qui gérait cela à cette époque. Je participerai à toute l’évolution avec le nouveau partenaire SWITCH gérant le réseau académique suisse et mettrai en route le premier système d’accès distant CARPE, avec des modems et TELEPAC (X.25 pour les initiés), en 1990.
Impressum Revue consacrée aux technologies de l’information, éditée par le Domaine IT de l’EPFL (DIT). Les articles n’engagent que leurs auteurs, sauf ceux qui concernent de façon évidente des prestations officielles (sous la responsabilité du DIT ou d’autres entités). Toute reproduction, même partielle, n’est autorisée qu’avec l’accord de la rédaction et des auteurs.
2 flash informatique
NdR: Jacques et le FI: une longue collaboration Le premier article que Jacques a signé dans le Flash informatique date de juin 1986, c’était l’annonce de la création d’un groupe d’utilisateurs le TIC, le Team IBM-PC & Compatibles, dont la première séance était suivie d’une présentation du fameux IBM- PC/RT ! Depuis l’informatique a un peu changé … et Jacques s’est tout naturellement intéressé à bien d’autres sujets sur lesquels il a écrit dans le journal, le courrier électronique (c’est comme cela qu’on appelait le mail au début), et bien sûr le réseau, mais toujours avec l’intention de faire comprendre le jargon technique aux non-experts. N’oublions pas non plus qu’il a fait partie du comité de rédaction du FI depuis plus de 20 ans, c’est donc un compagnon de longue date qui quitte le journal, qu’il continuera peut-être à lire s’il en trouve le temps.
Finalement, je me suis attelé aux différentes versions du site Web network.epfl.ch, vitrine d’interface entre l’équipe réseau et les utilisateurs des services du groupe. À côté, j’ai géré les évolutions des accès distants jusqu’au VPN actuel.» Avec Jacques, c’est donc une partie de l’Histoire du DIT (alias SIC, alias SIG) qui nous quitte. Tous les membres du groupe DIT-TI lui souhaitent une longue et heureuse retraite. Yves.Despond@epfl.ch, Domaine IT
Rédacteur en chef: Jacqueline Dousson, fi@epfl.ch Mise en page & graphisme: Appoline Raposo de Barbosa Comité de rédaction: Jean-Daniel Bonjour, Patrice Fumasoli, Florence Hagen, Laurent Kling, Julia Paolini, François Roulet, Christophe Salzmann, Richard Timsit & Predrag Vicei´c
.. /.. Suite page 9
Impression: Atelier de Reprographie EPFL Tirage: 4000 exemplaires Adresse Web: flashInformatique.epfl.ch Adresse: Domaine IT EPFL Station 8, CH-1015 Lausanne Téléphone: +41 21 69 32246 & 32247 Abonnement au FI par e-mail à: fi-subscribe@listes.epfl.ch
Logiciel libre
Quantum GIS Nicolas.Lachance-Bernard@epfl.ch & Timothee.Produit@epfl.ch, assistants-doctorants au Laboratoire de systèmes d’information géographique EPFL-ENAC
If you are looking for powerful free/open source software that is easy to learn for geodata visualization and analysis, this article will interest you. Si vous êtes à la recherche d’un logiciel libre puissant et aisé à prendre en main pour visualiser et analyser des géodonnées, alors cet article va vous intéresser.
Fiche descriptive
entre utilisateurs. Cependant, les utilisateurs de données géographiques qui ont besoin de fonctions de cartographie ou de traitements plus avancés utilisent des logiciels spécialisés. Les SIG permettent d’abord de visualiser les géodonnées. Un usager un peu plus aguerri pourra aussi les éditer et les analyser (on parle alors d’analyse spatiale). Finalement, il pourra encore les cartographier (par exemple par des cartes thématiques). Cet article se divise en deux parties. D’abord, les types de géodonnées ainsi que les bases nécessaires à une bonne utilisation d’un SIG seront introduits. Plus loin, nous mettrons à disposition différentes données afin d’illustrer les fonctions d’un SIG et l’article prendra la forme d’un tutoriel d’introduction au logiciel QGIS &.
Les principaux types de géodonnées
Quantum GIS
Domaine ✦ Système d’information géographique (SIG)
Licence
langue
version
✦ GPL V2 or later
✦ multilingue
✦ 1.7.2
Autres alternatives libres ✦ GRASS & GIS ✦ gvSIG ✦ OpenJump ✦ SAGA GIS
Deux types de géodonnées sont généralement utilisés. Le premier type est composé des données matricielles ou images (raster data en anglais), le second type est formé de données vectorielles ou vecteurs (vector en anglais). Ces deux types sont habituellement couplés à des métadonnées (metadata en anglais). Ces dernières contiennent les informations explicatives et descriptives de la géodonnée (auteur, licence d’usage, système de coordonnées, système de référence, description des classes présentes, …). Ces géodonnées sont organisées en couches superposables que l’utilisateur choisit d’afficher ou non à l’écran lors de leur usage dans un SIG (fig. 1.)
Alternatives non libres ✦ ESRI ArcGIS ✦ Bentley GIS ✦ FME ✦ Manifold GIS System ✦ MapInfo ✦ Smallworld
Sites Web ✦ Projet et téléchargement: www.qgis.org
Plates-formes
Introduction aux données spatiales Les Systèmes d’Information Géographiques (SIG & ou GIS & en anglais) sont des outils qui permettent de travailler avec des données géo-référencées (géodonnées). Les géodonnées regroupent l’ensemble des bases de données auxquelles sont reliées des coordonnées spatiales (géographiques). Depuis les années 2000, de nombreux SIG disponibles sur le Web sont devenus des outils indispensables. Google Maps s’est particulièrement démocratisé dans les domaines de la recherche de lieux, d’itinéraires, d’horaires de transports publics et sur la communication de ces informations
fig. 1 – Quantum GIS affichant des géodonnées vectorielles (routes - Swisstopo Vecteur 25) et matricielles (orthophoto - SwissImage 50cm).
Les données matricielles sauvegardent dans une matrice composée de pixels une information liée au territoire. Les données matricielles les plus connues sont les images satellites et les orthophotos générées sur la base d’images aériennes (avion, hélicoptère, UAV &). De plus, il faut citer les MNT &, qui utilisent le format matriciel pour enregistrer l’altitude du territoire sur une grille régulière de résolution prédéfinie (par exemple l’altitude moyenne de chacune des cellules de 25m x 25m). 20 DÉCEMBRE 2011 - N° 10
3
Quantum GIS Les données vectorielles sauvegardent dans une base de données des objets géographiques. Chacun de ces objets représente un vecteur pour lequel plusieurs données attributaires sont associées. Une donnée attributaire enregistre une information sur l’objet: le nom d’une rue, le nom d’un bâtiment, le type de surface, ou encore la longueur ou l’aire d’un objet. Il existe trois types de primitives géométriques dans un SIG: Le point: permet de représenter des objets ponctuels tels qu’un arbre, un point d’intérêt, ou encore le centre de gravité (point central) d’un d’objet modélisé par un polygone; La ligne: permet de représenter des objets linéaires tels qu’une route, une rivière ou encore une voie ferrée; Le polygone: est utilisé pour des éléments surfaciques tels qu’un bâtiment, une forêt, un terrain.
votre souris (fig. 2). Si votre laboratoire désire avoir plus de renseignements ou avoir accès à ces géodonnées officielles, veuillez contacter le responsable de la distribution des géodonnées à l’EPFL, geodata.lasig@epfl.ch du LASIG 4.
Les systèmes de projection et de référence Il reste une étape primordiale lors de l’usage de géodonnées. Cette étape est la configuration du système de projection et du système de référence géodésique (souvent appelé datum) de chacune des couches. Cette étape permet aux couches de diverses sources de se superposer proprement. À ce stade, il est suffisant de comprendre qu’il existe des coordonnées géodésiques (ou encore géographiques), par exemple Latitude et Longitude, permettant de décrire la localisation d’un point sur la surface de la Terre. C’est typiquement dans un tel système de référence géodésique global (WGS84 &) que sont livrées les données utilisées avec les appareils GPS &. Cependant, en Suisse, on utilise principalement le système de coordonnées cartographiques SwissGrid, défini pour un plan et associé à un système de référence géodésique local (CH1903+ &). Ce système permet, par exemple, d’afficher et de mesurer les coordonnées x et y d’un lieu en mètres. La mauvaise configuration des systèmes de coordonnées est une source récurrente de problèmes dans l’usage des SIG et des géodonnées.
Les géodonnées à l’EPFL Depuis janvier 2011, l’ensemble des étudiants et des collaborateurs de l’EPFL ont accès pour l’enseignement et la recherche à la majeure partie des données de l’Office fédéral de la topographie Swisstopo 1. Un premier serveur est disponible pour les membres de la faculté ENAC depuis le début des années 2000. Environ 12TB de géodonnées sont actuellement disponibles par le site Web ENACGEODATA 2 qui est accessible à plus de 50 correspondants principalement de l’ENAC, mais aussi d’autres facultés de l’EPFL. De plus, depuis l’été 2011, une plate-forme prototype est en évaluation par l’ensemble de ces correspondants. La plate-forme Web GeoVITe 3, initialement développée à l’ETHZ, est actuellement en test pour la consultation, l’extraction et la préparation des géodonnées pour les écoles EPF. Plus de 15TB de géodonnées y sont entreposées et disponibles d’un simple clic de 3 4 5 6 7 8 1 2
fig. 2 – interface GeoVITe pour la sélection des couches de géodonnées (secteur de l’EPFL avec la couche Swisstopo Vecteur 25).
Les géodonnées de type Volunteered Geographic Information - VGI
Si l’acronyme VGI & ne vous parle probablement pas, vous connaissez certainement le projet OpenStreetMap (OSM &). OSM est un service de cartographie Web libre basé sur la contribution volontaire de particuliers pour la digitalisation de réseaux routiers, d’activités économiques et autres informations spatiales. Ce type de géodonnées libres est en développement intensif depuis les cinq dernières années. D’autres projets mettent à contribution les volontaires du monde entier. Le projet Geo-Wiki 5, par exemple, vise à valider différents modèles de couverture du sol (land covers) pour l’ensemble de la surface terrestre. Les domaines d’application des VGI sont presque illimités. Les VGI démocratisent de plus en plus l’accès à des données justes et pertinentes, tant pour des usages individuels ou commerciaux que ceux liés à des besoins personnels. Les laboratoires TOPO 6 et LASIG explorent depuis déjà quelques années l’usage de ces jeux de géodonnées afin d’en tester la qualité et l’utilité. Ces travaux ont démontré que les géodonnées de type VGI permettent de produire des analyses prometteuses et innovatrices de l’espace urbain 7.
Logiciels de systèmes d’information géographique Jusqu’ici, l’enseignement des SIG aux futurs ingénieurs civils, ingénieurs en environnement et architectes était réalisé principalement sur des logiciels non libres. Pour une liste des logiciels disponibles pour les étudiants, veuillez consulter le site ENACSOFT GIS Software 8. Dans les années à venir, un changement de cap sera effectué pour utiliser principalement des logiciels libres. Le choix se porte inévitablement sur le projet QGIS. QGIS
www.swisstopo.admin.ch enacgeodata.epfl.ch https://geodata.ethz.ch/geovite4epfl/ lasig.epfl.ch www.geo-wiki.org topo.epfl.ch www.springerlink.com/content/b711024173111250/ & www.slideshare.net/nlachance/urban-monitoring-using-netkde-and-vgi-9673290 enacsoft.epfl.ch/lasig/
4 flash informatique
Quantum GIS est le logiciel libre le plus avancé et le plus actif, tant par ses développements continus que par la dimension de sa communauté internationale active. Il peut rivaliser avec la majorité des logiciels non libres pour les usagers novices à intermédiaires. D’ailleurs plusieurs communes de l’arc lémanique utilisent ou mettent en place ce logiciel pour remplacer les variantes onéreuses.
Installation de Quantum GIS Sous Windows Depuis la page qgis.org/wiki/DownloadFr, vous pouvez choisir entre une installation basée installateur (type Setup.exe) ou installateur réseau. Vous devez absolument exécuter le fichier installateur (QGIS-OSGeo4W-1.7.1-c58071d-Setup.exe) en mode administrateur (fig. 3).
Sous MacOS X L’installation est un peu plus complexe, car elle nécessite l’installation préalable de dépendances. Voyez la page de téléchargement de QGIS: www.qgis.org/wiki/Download#MacOS_X.
Prise en main Cette seconde partie de l’article présente un échantillon des géodonnées disponibles pour les environs de l’École polytechnique fédérale de Lausanne (EPFL). Organisé sous la forme d’un tutoriel, l’article présente un projet QGIS pré-paramétré. Les données ainsi que le projet QGIS sont disponibles pour téléchargement aux membres de l’EPFL (collaborateurs et étudiants) avec ce lien: lasig2.epfl.ch/qgis/qgis_data.zip.
Présentation de la fenêtre QGIS Trois composants principaux sont visibles à l’ouverture de QGIS. Vous pouvez ouvrir le fichier epfl_4_flash.qgs. Tout d’abord, le composant principal est la fenêtre de visualisation des géodonnées. Cette dernière permet d’explorer les différentes couches de géodonnées à l’aide, entre autres, des zooms. Aussi, il est possible de sélectionner un ou des objet(s) d’une couche afin d’interroger la base de données d’attributs. Ensuite le gestionnaire de couches, situé habituellement à gauche de la fenêtre de visualisation permet de choisir l’ordre de superposition des couches (fig. 5).
fig. 3 – exécution de l’installateur QGIS en mode administrateur
Si votre ordinateur possède un espace disque dur restreint, vous avez l’option de ne pas installer les fichiers des géodonnées pour les tutoriels, qui occuperaient 360.7MB d’espace disque supplémentaire (fig. 4).
fig. 5 – gestion des couches avec QGIS
Par un clic droit de la souris sur le nom d’une couche suivi de Properties, l’usager accède aux paramètres d’affichage de la couche tels que palettes de couleurs et options de transparence. Enfin, différentes barres d’outils dynamiques permettent d’accéder aux fonctions SIG de base de QGIS (fig. 6).
fig. 4 – installation de QGIS avec (782.3MB) ou sans (421.6MB) les géodonnées des tutoriels
Sous Linux QGIS est packagé pour la plupart des distributions Linux. Sous Ubuntu par exemple, il suffit de faire pour l’installer: sudo apt-get update sudo apt-get install qgis
fig. 6 – barre d’outils – de haut en bas: navigation, importation de données, interrogation et sélection, plugins
Habituellement, ce composant est affiché sous les menus textuels principaux de QGIS. Les fonctionnalités de cette composante s’adaptent/s’active selon le type de géodonnées de la couche sélectionnée. 20 DÉCEMBRE 2011 - N° 10
5
Quantum GIS
Importation de géodonnées vectorielles Il existe de nombreux formats de géodonnées vectorielles et QGIS permet de lire la plupart d’entre eux. Le format le plus répandu est le format propriétaire ESRI shapefiles possédant une extension de fichier .shp. Contrairement à un document de bureautique, une couche de géodonnées comporte plusieurs fichiers ayant ou non des noms similaires, mais des extensions différentes. Dans le cas d’une géodonnées sous le format ESRI shapefiles, il y a plusieurs fichiers (.shp qui contient la géométrie, .dbf qui contient les attributs et est éditable avec un tableur, .prj contient le système de projection, .shx, …). La perte de l’un de ces fichiers liés occasionne habituellement la perte de l’ensemble des géodonnées. Dans l’exemple qui suit, un fichier de ce type est utilisé pour importer une couche de bâtiment dans QGIS. Il faut tout d’abord importer la couche de géodonnées bâtiments (./vectors/buildings.shp). Pour ce faire, il faut cliquer sur le bouton Add Vector Layer . Les bâtiments apparaissent dans la fenêtre de visualisation du projet. Afin de visualiser ses attributs, l’usager peut sélectionner un bâtiment, représenté par un polygone, grâce au bouton Identify Features . Si l’usager souhaite accéder aux attributs de l’ensemble des objets d’une couche, il faut faire un clic droit sur la couche dans la fenêtre de visualisation, puis choisir Open Attribute Table. Depuis cette nouvelle fenêtre, il est possible de modifier la structure de la table d’attributs. On peut ainsi ajouter une nouvelle colonne d’attributs, calculer automatiquement des valeurs, ou encore éditer les valeurs des attributs à la main. Pour modifier la structure ou le contenu de la table d’attributs, l’usager doit passer en mode édition en . Il est non seulement cliquant le bouton Toggle Editing possible pour l’usager en mode édition de travailler sur la table des attributs, mais également de modifier la géométrie des objets dans la fenêtre de visualisation. Bien souvent, d’autant plus avec l’utilisation intensive des GPS ou téléphones intelligents (smartphones), l’usager désire importer des géodonnées au format texte contenant une coordonnée géographique et des attributs. Il faut tout d’abord activer l’outil Add Delimited Text Layer en cliquant sur son icône par le menu principal Plugins / Manage plugins… / Add Delimited Text Layer . L’outil apparaît alors au bas de l’interface QGIS dans le composant plugins de l’interface. Un fichier (./vector/villas.csv) sous le format comma-separated-values (.csv) est à votre disposition pour tester cette fonctionnalité. Lors de son ouverture, il faut simplement spécifier la structure du fichier et le tour est joué. Enfin, le plugin Spatial Query , également activé par le menu principal Plugins / Manage Plugins… / Spatial Query Plugin, permet de réaliser des requêtes spatiales simples entre couches. Par exemple, cet outil permet de sélectionner les routes croisant des bâtiments.
Visualisation d’un modèle numérique de terrain Une orthophoto est déjà présente dans le projet QGIS afin d’illustrer une donnée matricielle. En plus de cette première couche, un exemple d’importation d’un modèle numérique de terrain (MNT) d’une résolution de 25m (./raster/124313.asc) est réalisé. Pour ce faire, il faut ouvrir le MNT en utilisant le bouton Add Raster Layer en choisissant le format de géodonnées [GDAL]Arc/ Info ASCII Grid. L’information [GDAL &] indique que QGIS appelle
6 flash informatique
la librairie GDAL pour la transformation de données raster entre les divers formats existants. Dans la fenêtre de visualisation de QGIS, l’image doit apparaître en ton de gris (fig. 7).
fig. 7 – modèle numérique de terrain avec style appliqué
Cette image contient comme information l’altitude de chaque pixel, on peut y accéder avec le bouton Identify Features . Pour visualiser correctement ces informations (passer de l’image grise à celle colorée) il est nécessaire de configurer un jeu de couleurs adéquat pour l’affichage par un clic droit sur le nom de la couche, dans le gestionnaire des couches, et cliquer sur Properties suivi de l’onglet Style. Dans l’onglet Style, choisir dans le menu déroulant de Color Map un affichage Pseudocolor et cliquer sur le bouton Apply. Il est possible d’augmenter le contraste avec la méthode de Contrast enhancement en sélectionnant Stretch to MinMax (fig. 8).
fig. 8 – fenêtre de configuration des propriétés d’une couche: Onglet Style
Les outils de traitement de géodonnées matricielles sont relativement restreints dans QGIS. Il existe notamment un calculateur raster accessible par le menu Raster / Raster calculator. Cet outil permet notamment de soustraire deux MNT afin d’identifier des différences d’altitude entre deux jeux de géodonnées différents. Il existe aussi le plugin Raster based terrain analysis qu’il faut activer via Plugins / Manage Plugins / Raster Terrain Analysis plugin. Cet outil permet de calculer sur un MNT les pentes et leur orientation.
Quantum GIS
GRASS GIS: Traitements avancés du MNT Pour proposer des outils plus puissants d’analyse de géodonnées matricielles, QGIS permet de coupler un autre SIG libre directement dans son interface: GRASS GIS. Par exemple, à l’aide de ce couplage des deux SIG, il est possible de produire un relief ombragé dans QGIS à partir d’un MNT (fig. 9).
Il suffit alors de spécifier une des couches matricielles actives (la case d’affichage dans le gestionnaire de couche doit être cochée) et un nom de couche en sortie (EPFL_Altitude) et de cliquer sur le bouton Run, suivi d’un clic sur le bouton View Output pour rendre disponible le résultat dans le gestionnaire de couches. Enfin, il est possible avec cette nouvelle couche de produire à partir du MNT un relief ombragé. Toujours dans à l’aide du bouton GRASS Tools, on utilise sous l’onglet Modules Tree l’outil Raster / Spatial analysis / Terrain analysis / Create shaded relief (fig. 11).
flg. 9 – modèle numérique de terrain en relief ombragé
Pour calculer cet ombrage, il faut tout d’abord créer un nouveau jeu de cartes (mapset) avec l’outil GRASS New Mapset . En cliquant ce bouton, une fenêtre requiert la sélection d’un répertoire (EPFL par exemple) pour enregistrer la nouvelle base de données ainsi qu’un nom de lieu. Toujours dans cette même fenêtre, il faut choisir le système de projection SwissGrid avec pour Coordinate Reference System CH1903/LV03, Authority ID EPSG: 21781 et ID 1919. Il est possible pour cette configuration de rechercher différents systèmes de projection à l’aide d’un outil situé dans la même fenêtre. Ensuite, la fenêtre demande de configurer une Bounding Box (dans le cas de ce tutoriel, il est possible de confirmer celle qui apparaît automatiquement dans les paramètres) et de nommer le jeu de cartes qui sera produit (EPFL par exemple). Une fois le jeu de cartes créé, l’ensemble des outils GRASS intégrés à QGIS deviennent actifs et utilisables. Par exemple, à l’aide du bouton GRASS Tools il est possible de sélectionner sous l’onglet Modules Tree l’outil Import into GRASS / Import raster into GRASS from QGIS view / Import loaded raster (fig. 10).
fig. 10 – utilisation du Module Tree pour l’importation d’une géodonnées matricielles avec le module GRASS
fig. 11 – utilisation du Module Tree pour la création d’un relief ombragé avec le module GRASS.
Pour ce tutoriel, il est possible d’utiliser les paramètres configurés par défaut pour un résultat adéquat, donc de cliquer une nouvelle fois sur le bouton Run suivi d’un clic sur le bouton View output. On remarque donc que si un outil n’est pas disponible directement dans QGIS, il y a de bonnes chances qu’il soit disponible via GRASS.
Paramétrage des systèmes de projections Pour tout projet QGIS, il est primordial de bien spécifier le système de coordonnées du projet et celles des géodonnées lors de leur chargement. Dans le premier cas (un nouveau projet), il faut utiliser le menu Settings / Project Properties suivi de l’onglet Coordinate Reference System (CRS &). Dans le second cas (une nouvelle couche), il faut faire un clic droit sur la couche, puis Set layer CRS. Pour les géodonnées suisses, on sera généralement appelé à utiliser CH1903/LV03 (EPFL = 533’020; 152’450) ou WGS84 (EPFL = 46.520825; 6.564825). Il est extrêmement important de préciser ces paramètres, et ce pour que: z la diffusion de vos géodonnées soit documentée; z la superposition de vos géodonnées soit conforme entre les couches; z les calculs et mesures soient dans les bonnes unités (par exemple des mètres). Si vous avez à travailler avec des géodonnées extérieures à la Suisse ou historiques, il est utile de se référer au site Web du EPSG &): EPSG Geodetic Parameter Registry 9. L’EPSG, créé en 1985, a mis au point une base de données des systèmes de coordonnées actifs et historiques. Un code a été associé à chacun des 20 DÉCEMBRE 2011 - N° 10
7
Quantum GIS systèmes de coordonnées, code devenu de facto le standard de la nomenclature. Ces codes sont largement utilisés dans les SIG courants, par exemple CH1903/LV03 possède le code EPSG21781 pour code et WGS84 le code EPSG4326. Cependant, au moment de calculer les transformations de coordonnées, QGIS se base sur une librairie appelée PROJ.4 10. En Suisse, Swisstopo documente les systèmes de coordonnées courants.
Connexion à des serveurs de géodonnées externes Il n’est pas toujours nécessaire d’utiliser des géodonnées locales (sur votre ordinateur). En effet, certaines géodonnées sont distribuées grâce à une connexion avec un serveur par l’intermédiaire des réseaux Internet (public) ou Intranet (privé). Les serveurs Web Map Service (WMS &) distribuent des géodonnées matricielles (images). Les serveurs Web Feature Service (WFS &) distribuent des objets géographiques des géodonnées vectorielles. Pour s’y connecter, il suffit d’utiliser respectivement les boutons Add WMS server et Add WFS server, et de spécifier les paramètres de connexion. Dans le projet QGIS fourni, des connexions vers les WMS de l’Office Fédéral de l’Environnement (OFEV) et de l’Infrastructure
Fédérale de Données Géographiques (IFDG) sont déjà préenregistrées, les couches disponibles sont décrites sur le site de l’Administration fédérale.
Références Pour davantage d’informations sur l’utilisation de QGIS et GRASS, voyez: z Les manuels d’aide de QGIS: www.qgis.org/en/documentation/ manuals.html. z Le forum de questions et réponses Quantum GIS Forum II: forum.qgis.org. z Les tutoriels QGIS du SIG pour l’Enseignement Agricole: sigea. educagri.fr/ressources-pedagogiques/utilisation-des-logiciels/ tutoriels-de-logiciels-gratuits/tutoriels-qgis.html. z Le wiki QGIS: www.qgis.org/wiki/Welcome_to_the_QGIS_Wiki.
Article du FI-EPFL 2011 sous licence CC BY-SA 3.0 / N. Lachance-Bernard & T. Produit
www.epsg-registry.org trac.osgeo.org/proj/ & www.geo.admin.ch/internet/geoportal/fr/home/services/geoservices/display_services/services_wms.html
9
10
GLOSSAIRE
&
CH1903+: les deux systèmes de référence géodésiques CH1903+ et CH1903 sont identiques en ce qui concerne les dimensions de l’ellipsoïde de référence, les orientations des axes de coordonnées, l’échelle et le système de projection. Pour les définitions et désignations: www.admin.ch/ch/f/rs/510_620_1/a3.html. CRS (Coordinate Reference System): système de coordonnées permettant de faire correspondre à chaque point d’un espace à N dimensions, un N-uplet de scalaires. fr.wikipedia.org/wiki/ Syst%C3%A8me_de_coordonn%C3%A9es. EPSG: European Petroleum Survey Group. www.epsg.org.
GDAL (Geospatial Data Abstraction Library): bibliothèque d’abstraction des données géo-spatiales.www.gdal.org. GIS (Geographic Information Systems): voir SIG en français. GPS (Global Positioning System): système de positionnement mondial. fr.wikipedia. org/wiki/Global_Positioning_System. GRASS (Geographic Resources Analysis Support System): système de support à l’analyse des ressources géographiques. grass.fbk.eu. MNT: modèle numérique de terrain. OSM: projet volontaire de carte OpenStreetMap. www.openstreetmap.org/; lire aussi FI SP10 flashinformatique.epfl.ch/spip. php?article2106.
QGIS: Quantum GIS, www.qgis.org/. SIG: systèmes d’information géographique. UAV (Unmanned Aerial Vehicle): ou en français drone. VGI (Volunteered Geographic Information): information géographique volontaire. WFS (Web Feature Service): utilisé aussi pour toutes les autres langues. WGS84 (World Geodetic System 1984): système géodésique mondial avec la révision de 1984, associé au GPS. WMS (Web Map Service): utilisé aussi pour toutes les autres langues.
Brève
routeRANK Dernière nouvelle routeRANK (www.routerank.com) logiciel de planification de voyage créé par une start-up du PSE (voir flashinformatique.epfl. ch/spip.php?article1980) est dans la liste des douze outils retenus pour le concours en faveur d'une mobilité intelligente
8 flash informatique
de la Commission européenne. Le vote est ouvert au public jusqu'au 13 janvier 2012 (ec.europa.eu/transport/its/multimodalplanners/index_fr.htm) … N'hésitez pas à vous exprimer. n
DIT-info ../.. suite de la page 2
LE DIT VOUS FORME... et vous souhaite de Joyeuses Fêtes et une année 2012 riche en formations ! Sur notre site Web dit.epfl.ch/formation vous trouverez, semaine après semaine, notre calendrier complet pour le 1er semestre, consultez le régulièrement. Plusieurs cours sont organisés à la demande, faites-nous part de vos désirs et nous ferons notre possible pour vous donner la formation correspondant au mieux à vos besoins. Ci-après, voici un aperçu des formations offertes pour bien débuter l’année:
Windows 7 z 1 -Installation et configuration, semaine 1 z 2 -Dépannage et maintenance, semaine 2 z 3 -Support des applications et du système d’exploitation, semaine 5 z 4 -Déploiement de Windows 7, semaine 6
LabVIEW ou l’acquisition de données z z z z z z
Vision (in English), semaine 3 Object-Oriented Programming System, semaine 3 Core I, semaines 4 et 8 Core II, semaine 4 Diadem, Basics I, semaine 7 Diadem, advanced, semaine 7
programmation z C++, STL-Standard Template Library (in English), semaine 3 z C++, A Comprehensive Hands-On Introduction (in English), semaine 5 z Beginning iPhone and iPad Development (in English), semaine 6 z Python, level II (in English), semaine 6 z DIT HPC servers usage (in English), semaine 8 z NEW, Développement d’applications Web pour mobile multi plates-formes, semaine 8
Le prix de l'AFCA 2011 à une collaboratrice du DIT L’AFCA (Association Femmes & Carrière dans l’Administration) a, pour la deuxième fois de son histoire, attribué son prix à une femme qui sort des sentiers battus par le choix de sa formation et de son parcours professionnel. Cette année c’est Michela Thiémard qui a été choisie pour «être parvenue à se faire une place au sein d’un monde presque exclusivement masculin, celui de l’informatique et des mathématiques». Michela est bien connue des utilisateurs des ressources de calcul du DIT, où elle coordonne la cellule HPC et et administre notamment le cluster de GPU et la grille de calcul de l’EPFL. Michela a fait ses études à l’EPFL en mathématiques, elle y a soutenu sa thèse en 2004 et depuis travaille au DIT.
iPhone et Wi-Fi Swisscom Vous êtes client de Swisscom et propriétaire de l’un de ces appareils mis à jour vers iOS5: z iPad, iPad 2 z iPhone 3GS, iPhone 4 Vous devriez vérifier que, sur le campus, votre appareil ne se connecte pas automatiquement au réseau MOBILE-EAPSIM de Swisscom plutôt qu’à celui de l’EPFL. Cela pourrait avoir un effet néfaste sur votre facture de téléphone mobile. Pour désactiver la connexion automatique, voici la marche à suivre:
Linux z Essentials (in English), semaine 7
bureautique InDesign CS5, 1-introduction, semaine 2 Excel 2010, 1-introduction, semaine 2 Word 2010, les longs documents, semaine 2 Jahia 6, création de sites Web EPFL, semaine 2 FileMaker Pro 11, semaine 2 Outlook 2010, transition, nouveautés et exercices pratiques (rapido), semaine 4 z Excel 2010, 2-feuilles de calcul, semaine 4. z z z z z z
Ceci n’est qu’un aperçu, tous les détails se trouvent sur notre site. cours.dit@epfl.ch
1. 2. 3. 4. 5.
Cliquez sur l’icône Réglages de votre iPhone. Cliquez sur Wi-Fi. Activez le Wi-Fi. Les réseaux sans fil disponibles s’affichent. Sélectionnez le réseau MOBILE-EAPSIM. Désactiver la fonction Connexion auto. L’équipe DIT-TI
20 DÉCEMBRE 2011 - N° 10
9
Logiciel libre
Le logiciel libre dans le HPC Vittoria.Rezzonico.@epfl.ch, EPFL - Coordinatrice CSE/HPC
Depuis la révolution Beowulf &, le calcul haute performance (High Performance Computing, HPC) a été envahi non seulement par des clusters comportant du matériel courant mais aussi par le logiciel libre. Du système d’exploitation aux applications métier, les supercalculateurs (même les plus puissants au monde) sont un nid à logiciels libres.
La révolution Beowulf Dans l’été 1994 à la NASA, Thomas Sterling (Professeur en informatique) et Donald Becker (développeur de drivers ethernet pour le noyau Linux) construisirent le premier cluster à partir de composants librement disponibles sur le marché pour l’informatique domestique, avec une couche logicielle libre. Ils appelèrent leur machine Beowulf. Depuis cette date, tous les clusters construits à partir de matériel grand public et de logiciels libres s’appellent cluster de type Beowulf. En juin 1997, le premier cluster Beowulf pointa son nez dans le classement Top500: un cluster fait maison à UC Berkeley, mais qui n’était pas un vrai cluster Beowulf dans le sens que même fait maison, il se basait sur un OS de type Solaris. Il fallut attendre encore une année pour que Linux apparaisse dans le Top500. On peut remercier Los Alamos. Mais hélas, le matériel n’était pas courant (processeurs alpha). En juin 1999, non seulement on vit apparaître (en Allemagne) des clusters comme on les connaît de nos jours (processeurs Intel ou compatibles), mais aussi les fabricants de machines spécifiques adopter GNU/Linux comme OS. Pendant quelques années, les clusters de type Beowulf eurent de la peine à s’imposer auprès de la communauté HPC: ils étaient en concurrence avec des machines très chères, dont le matériel était spécialement conçu pour le HPC et avec une couche logicielle aussi très spécifique. Les leaders du HPC voyaient d’un très mauvais œil ces nouveaux aspirants supercalculateurs construits à partir de matériel généralement vendu au grand public et installés avec des logiciels librement disponibles sur le net. Malgré cette résistance (que l’on rencontre encore aujourd’hui dans certains cercles), les clusters Beowulf eurent de plus en plus de succès, à tel point que depuis 2004 la moitié des 500 ordina-
10 flash informatique
teurs les plus puissants au monde étaient des clusters (fig. 1). À l’EPFL, le cluster Beowulf arriva en novembre 2003 avec le projet Pléiades. Le DIT suivit en 2005 avec Mizar. clusters in Top 500
Since the Beowulf revolution, High Performance Computing (HPC) has been taken over not only by clusters built from commodity hardware, but also by free software. Starting from the operating system, up to the specific scientific software, supercomputers (even the most powerful in the world) sport all kind of free software.
400
200
0
1994
1996
1998
2000
2002 year
2004
2006
2008
2010
fig. 1 – clusters Beowulf dans le top500: historique
HPC: qu'est-ce? On entend cet acronyme bien souvent: HPC pour High Performance Computing. Mais qu’est-ce que cela signifie? S’agit-il d’un autre buzzword? En partie. Mais on peut définir le HPC comme du supercomputing couplé avec des grandes quantités de données et leur traitement. On parle de supercomputing quand on résout des problèmes de taille importante sur les ordinateurs les plus performants au monde. Il existe même une liste des ordinateurs les plus puissants du moment: le Top500. Cette liste est publiée deux fois par an depuis 1993 et est reconnue par l’industrie, le monde académique, les vendeurs et les médias. Quand la machine la plus performante atteint une étape représentée par une performance à un chiffre bien rond, c’est la fête. La performance des machines est mesurée à l’aide d’un benchmark & appelé LINPACK. Le Top500 nous permet d’avoir un historique de ce qui se passe en HPC. Dans la figure 2, nous avons l’historique de la puissance LINPACK de la machine numéro un, la numéro 500 et la somme des puissances de toutes les 500 machines. Nous pouvons remarquer la progression exponentielle qui nous donne envie de tracer des droites et peutêtre de transformer cette course à la puissance en une prophétie autoréalisatrice. L’étoile représente l’étape déjà franchie du PetaFLOPs &. La prochaine étape (ExaFLOPs) est prévue pour 2020. Un laptop aujourd’hui est aussi puissant qu’un supercalculateur dans les années 90. À quand un téléphone mobile de cette puissance? somme des 500 1ère machine 500ème machine
PetaFLOPs
TeraFLOPs Ma station Mon laptop
GigaFLOPs
1995
2000
2005
2010
fig. 2 – historique de la puissance de calcul des ordinateurs les plus performants au monde
Le logiciel libre dans le HPC
Cores PFLOPs MW MFLOPS/W
Nom
Pays
1
K computer
Japon
705024 10.510 12.66
830
2
Tianhe-1A
Chine
186368
2.566
4.04
635
3
Jaguar
USA
224162
1.579
6.95
253
4
Nebulae
Chine
120640
1.271
2.58
493
GPUs
5
TSUBAME 2.0 Japon
73278
1.192
1.4
852
GPUs
6
Cielo
USA
142272
1.110
3.98
279
7
Pleiades
USA
111104
1.088
4.1
265
8
Hopper
USA
153408
1.054
2.91
362
9
Tera-100
France
138368
1.050
4.59
229
10 Roadrunner
USA
122400
1.042
2.35
444
GPUs
Cell
fig. 3 – les dix ordinateurs les plus puissants au monde, état novembre 2011
On voit donc deux problèmes pour le futur: l’énorme consommation électrique qui va à l’encontre de la crise énergétique prévue pour les années à venir, et la quantité de cœurs, qui fait que les pannes sur une partie de la machine sont nombreuses et que le temps entre ces pannes suffit à peine à faire tourner un benchmark. Si un CPU tombe en panne en moyenne une fois en 40 ans, en un jour il a la probabilité p=1/14600 de défaillir. La probabilité qu’aucun CPU dans une machine qui en compte 100’000 ne tombe en panne un jour donné est de 0.1%. On est donc assez sûr que notre machine va avoir une panne dans la journée. Ceci est bien sûr une vision simplifiée, mais qui nous donne une bonne idée de la réalité. Mais il faut savoir que ces machines sont au service de la science, et que ce n’est qu’un outil de recherche parmi d’autres. Chaque année des prix sont décernés à des chercheurs qui arrivent à tirer parti des machines les plus performantes pour résoudre des problèmes qui, auparavant, n’étaient pas abordables.
Le logiciel libre s'empare du HPC Les machines dédiées au HPC aujourd’hui pullulent de logiciels libres. On peut dire que le supercalculateur moyen est: un cluster z basé sur GNU/Linux avec z une suite de compilateurs z des bibliothèques de parallélisation z des outils de mesure de performance z des outils d’ordonnancement de tâches (schedulers) z des systèmes de déploiement z des outils de monitoring z des systèmes de fichiers parallèles … tous libres! Dans la suite de cet article, je vais brièvement survoler quelques logiciels qu’on peut trouver sur nos clusters.
GNU/Linux dans le HPC Aujourd’hui, lorsque l’on parle de systèmes HPC, on pense automatiquement à GNU/Linux. Mais cela n’a pas toujours été le cas. Au début, les serveurs de calcul étaient des machines spécifiquement conçues pour la performance, et le système d’exploitation était livré avec la machine: pas question d’avoir un OS générique sur une machine aussi spécialisée! Jusqu’aux années 80, les codes n’étaient pas portables entre machines différentes: la compatibilité était sacrifiée au profit des performances (CPU et accès mémoire). Les systèmes d’exploitation étaient donc faits sur mesure pour les machines, ainsi que les compilateurs et les bibliothèques de parallélisation. Avec l’arrivée du cluster Beowulf, GNU/Linux s’est imposé dans le paysage HPC, à tel point que même les grands acteurs comme Cray et IBM l’ont adopté, parfois partiellement (les BlueGene sont notamment des machines à OS mixte, une partie Linux et une partie spécifique). Dans la figure 4, nous voyons l’évolution des systèmes d’exploitation dans les machines du Top500. Linux, qui dans le Top500 ne concerne pas que les clusters, est bien établi dans le HPC.
400 machines
Dans la figure 3, on voit le dernier Top10. Toutes sont des machines basées GNU/Linux, qu’on peut considérer des clusters, avec parfois des GPUs. On remarque l’énorme nombre de cœurs par machine et la consommation électrique qui se rapproche de celle d’une petite ville.
unix linux mixed other
200
1994
1996
1998
2000
2002
2004
2006
2008
2010
fig. 4 – répartition des systèmes d’exploitation dans les machines du Top500.: historique
Comment installer un cluster Beowulf Supposons pour simplifier que votre cluster dispose d’un master et de N nœuds de calcul (fig. 5). Le nœud master (ou maître) est le cerveau du cluster, les nœuds de calcul n’ont pas d’état et peuvent être considérés comme des consommables. Ils n’ont aucune donnée précieuse. En pratique, lors de l’installation, on passe beaucoup de temps sur le master pour en configurer les services, et ensuite on démarre les nœuds, qui s’installent automatiquement en suivant les directives du nœud maître. Nœud
Nœud
Nœud
Nœud
Nœud
Switch
Master
réseau d’entreprise
fig. 5 – structure d’un cluster
20 DÉCEMBRE 2011 - N° 10
11
Le logiciel libre dans le HPC L’installation du nœud maître n’est pas évidente, car il faut connaître et maîtriser tous les services nécessaires au déploiement et à l’administration d’un cluster. Pour créer un serveur d’installation, il faut configurer un serveur dhcp et un tftp, en plus de nfs ou http ou ftp, en fonction de la méthode pour distribuer les paquetages aux nœuds de calcul. Pour ce qui est du monitoring et reporting, des compétences en serveurs web (pour afficher les données), snmp et ssh sont souhaitables. Ensuite, il faut configurer un ordonnanceur (scheduler). Le nœud maître fait office de firewall et passerelle, une connaissance de iptables est donc nécessaire. Les utilisateurs doivent être authentifiés sur le nœud maître. Il faudra un système d’authentification comme nis ou ldap. Enfin, lorsqu’on exporte les données utilisateur sur les nœuds, il faut installer (au minimum) un serveur nfs.
Systèmes de déploiement Les distributions GNU/Linux disposent déjà de leur propre système de déploiement par directives: KickStart pour RedHat et ses dérivées, FAI pour Debian et Ubuntu, AutoYaST pour SuSE. Chaque système de déploiement est tout à fait utilisable pour installer les nœuds d’un cluster. Pour les administrateurs système qui n’aiment pas les installations par directives, on a aussi une panoplie d’outils libres pour installer les nœuds par image. Parmi ces outils, je citerais partimage et systemImager. Les administrateurs les plus avertis se contentent parfois d’un dd à travers netcat. Pour maintenir les nœuds à jour et synchronisés, des outils tels que cfengine et puppet sont disponibles, ainsi que des shells distribués comme dsh et pdsh, le dernier étant accompagné par dhsbak, qui permet d’afficher la sortie de pdsh d’une façon resumée.
Monitoring Un outil très diffusé dans le monde HPC est Ganglia, qui nous permet d’avoir en un coup d’œil une bonne vue d’ensemble de l’utilisation du cluster (CPU, mémoire, réseau, disques) ainsi que son historique. Ganglia dispose d’une interface web (PHP) et est basé sur XML et RRDtools pour stocker les données. Quand on a beaucoup de nœuds de calcul et des services critiques qui tournent sur le nœud maître, il est nécessaire d’être avertis quand un nœud est en panne, quand les services du master ne sont plus atteignables, mais aussi dans le cas où un utilisateur lance des programmes sur le master ou quand il y a trop d’utilisateurs dans la file d’attente. Pour cela, Nagios nous rend un immense service.
Schedulers Lorsque l’on travaille à plusieurs sur une machine de calcul, il faut la partager de façon transparente. Pour cela, lorsque l’on souhaite lancer un calcul, on passe par un système de files d’attente qui s’occupe de maximiser l’utilisation de la machine moyennant les contraintes dictées par la politique d’utilisation du cluster. L’utilisateur n’a alors qu’à écrire un script qui s’occupera du lancement de son application et de l’allocation des ressources moyennant la commande qsub mon_script ou encore sbatch mon_script
12 flash informatique
en fonction du type d’ordonnanceur utilisé. Dans ce script, l’utilisateur spécifie entre autres les ressources nécessaires (processeurs, mémoire, temps d’exécution, voir figures 6 et 7). Nombre de gestionnaires de ressources et schedulers sont des logiciels libres. Parmi ceux-ci, je citerais Torque et Maui, Son of Grid Engine et Slurm. #PBS -l nodes=2:ppn=8 #PBS -N hellotorque #PBS -l walltime=00:10:00 #!/bin/bash cd $PBS_O_WORKDIR mpirun -np 16 ./hello_mpi fig. 6 – exemple de script pour lancer un job MPI avec Torque #!/bin/sh #SBATCH -J #SBATCH -n #SBATCH -N #SBATCH -t
helloslurm 8 2 00:10:00
mpirun -np 16 ./hello_mpi fig. 7 – exemple de script pour lancer un job MPI avec SLURM
Tout cela n'est pas simple Pour se simplifier la vie et sauter cette longue étape de configuration du master, on peut prendre des raccourcis et faire appel à des outils de déploiement. Parmi les plus connus, je citerais Rocks Cluster Distribution et xCAT. On trouve de plus en plus d’outils de déploiement dans les distributions GNU/Linux, je peux citer Orchestra d’Ubuntu.
Systèmes de fichiers parallèles Lorsque plusieurs machines accèdent à des fichiers sur un serveur de façon asynchrone, NFS est le système de fichiers réseau préféré du Linuxien. Mais si des centaines de machines y accèdent en même temps, les performances chutent et les clients se bloquent. Pour éviter cela, il faut avoir des systèmes de fichiers réseau conçus pour ce type de charge. Bien sûr, tout cluster assez grand nécessite un serveur avec un système de fichiers à accès parallèle (parallel filesystem). Un cluster est souvent utilisé pour des applications qui tournent sur un seul nœud, ou bien dont chaque processus écrit un fichier séparé. Dans ce cas, ils nous faut juste une alternative plus confortable au disque local au nœud. Le système de fichiers parallèle Glusterfs satisfait alors nos exigences. Lorsqu’on exécute un calcul en parallèle, il se peut par contre que tous les processus liés au calcul écrivent dans le même fichier. Alors il faut non seulement un filesystem parallèle, mais en plus il faut qu’il supporte le striping des fichiers. Il faudra alors choisir entre PVFS2 et Lustre. PVFS2 est plus simple à installer et configurer et on peut vite avoir un système de fichiers qui répond à nos attentes, mais il n’est pas compatible POSIX et il faut alors compiler un module noyau sur les clients ou bien passer par des commandes telles que pvfs-cd pour avoir accès aux fichiers. Lustre est plus complet, mais son avenir est encore flou et il n’est pas facile d’installation.
Le logiciel libre dans le HPC Un système de fichiers parallèle répond à une demande complexe, auquel le monde du libre a su répondre avec plusieurs solutions.
Compilateurs Tout développeur connaît GCC, la GNU Compiler Collection. Le projet fut démarré par Richard M. Stallmann en 1985, et au début, il s’agissait uniquement d’un compilateur C (GNU C Compiler). Depuis lors, plusieurs compilateurs se sont rajoutés. Ceux qui intéressent la communauté HPC sont surtout Fortran et C++.
Parallélisation Sous GNU/Linux, on peut paralléliser du code avec plusieurs outils. Si l’on reste sur le même nœud de calcul et qu’on se contente donc de la parallélisation multi-core, GCC nous satisfait entièrement: non seulement il nous permet de faire du POSIX Threads, mais aussi du OpenMP. Si l’on souhaite faire de la programmation parallèle distribuée, le standard aujourd’hui est MPI, qui, malgré les mauvaises langues qui annoncent sa mort depuis des années, va encore être le standard de facto pour la parallélisation sur les clusters pendant quelque temps. include <stdio.h> int main(){ printf("Hello, world!\n"); return 0; } fig. 8 – Hello, world! séquentiel include <stdio.h> #include <omp.h> int main(){ printf("Master thread says: Hello, world!\n"); #pragma omp parallel { printf("Hello from thread %d of %d\n", omp_get_thread_num(), omp_get_ num_threads()); } printf("Master thread says: Hello, world!\n"); return 0; } fig. 9 – Hello, world! parallélisé avec OpenMP #include <stdio.h> #include <mpi.h> int main (int argc, char *argv[]){ int rank, size; MPI_Init (&argc, &argv); MPI_Comm_rank (MPI_COMM_WORLD, &rank); MPI_Comm_size (MPI_COMM_WORLD, &size); printf( "Hello from process %d of %d\n", rank, size ); MPI_Finalize(); return 0; } fig. 10 – Hello, world! parallélisé avec MPI
Mesure de performance Afin de produire des codes rapides, il est nécessaire de mesurer leurs performances dans l’objectif de les améliorer. Quand on connaît bien son algorithme, on peut en prédire le temps d’exécution et l’utilisation mémoire, et si les ressources utilisées par l’implémentation ne correspondent pas, il faut trouver où est le problème dans le code. Ou bien, quand on souhaite paralléliser des parties de code, on aimerait savoir dans quelles fonctions on passe le plus de temps. L’utilitaire gprof est, comme son nom le laisse comprendre, un outil de profiling. Après avoir compilé le code avec les options adéquates, on lance une fois le code à blanc et ensuite on le passe à travers gprof. Cette dernière action va générer un fichier texte lisible par l’être humain, mais pour les mordus du GUI, kprof est capable de visualiser. Un des démons du programmeur est le memory leak. Pour le détecter, le programme valgrind est l’idéal. Ce programme a tant de fonctionnalités que je fig. 11 - logo de Valgrind vous renvoie aux références pour tout explorer. Un autre outil d’analyse des codes est les performance counters. Intégrés au noyau Linux, ils permettent de lire des valeurs de registres spéciaux comme le nombre d’instructions CPU exécutées, les cache misses.
Benchmarks Maintenant que notre cluster est opérationnel, il s’agit de le valider, et quoi de mieux que des benchmarks couramment utilisés dans le monde du HPC. Les plus connus (à tort ou raison) sont le HPL (High Performance LINPACK), qui est utilisé pour rédiger la liste Top500, et le STREAM. Les deux sont disponibles librement, et les développeurs sont même poussés à les modifier pour les adapter à des nouvelles architectures. Plusieurs applications scientifiques sont publiées sous licence libre, je peux citer z QuantumESPRESSO z CP2K z Palabos z Gadget z LAMMPS z NAMD Les utilisateurs sont aussi incités à faire tourner des cas tests sur leurs machines afin de les comparer. Ces applications se transforment donc en benchmarks.
Logiciels de visualisation Des gros calculs engendrent de lourdes données, qu’il faut traiter et afficher de façon compréhensible, par exemple avec une image 2D, 3D ou même un film. Plusieurs logiciels spécialisés en visualisation scientifique existent. Deux exemples sont Paraview qui, comme son nom le suggère, est capable de faire de la visualisation 20 DÉCEMBRE 2011 - N° 10
13
Le logiciel libre dans le HPC en parallèle sur plusieurs nœuds de calcul, et VisIt, qui est aussi capable de faire une partie du post-processing en parallèle en plus de la visualisation in situ.
Conclusion
Logiciel libre > Tribune libre
Vers une informa libre au DIP gene
Marco.Gregori@edu.ge.ch, rédacteur multimédias au Département de l’instr
Le HPC ne peut plus se passer du logiciel libre: du système d’exploitation jusqu’aux applications scientifiques. Aujourd’hui, on peut presque assembler un supercalculateur à partir de pièces disponibles dans les magasins d’informatique, en utilisant des logiciels disponibles librement sur l’Internet. On peut même transformer une salle de PC en un cluster de calcul performant. Nous ne pouvons que nous réjouir d’une telle évolution vu les enjeux du HPC pour la recherche scientifique.
Références z Top500: http://www.top500.org J’espère que certains outils décrits dans cet article seront le sujet d’articles plus approfondis dans le Flash informatique. Certains l’ont déjà été, avant même la naissance de la rubrique Logiciel Libre: z Aperçu de quelques méthodes d’installation: flashinformatique. epfl.ch/spip.php?article1397
z AutoYasT: flashinformatique.epfl.ch/spip.php?article2092 z Valgring: valgrind.org. z VisIt: flashinformatique.epfl.ch/spip.php?article2238.
Article du FI-EPFL 2011 sous licence CC BY-SA 3.0 / V. Rezzonico
GLOSSAIRE
&
Benchmark: point de référence servant à effectuer une mesure. Dans notre cas, un benchmark nous permet de mesurer les performances d'un système pour le comparer à d'autres. Beowulf: le premier cluster de calcul a été nommé d’après le héros d'un poème épique anglo-saxon, qui avait dans le poing la force de trente hommes. fr.wikisource.org/wiki/Beowulf/Botkine. FLOPs (floating-point operations per second): nombre d’opérations à virgule flottante par seconde; c’est une unité de mesure pour évaluer la vitesse des calculateurs. MégaFLOPS = 106 FLOPS GigaFLOPS = 109 FLOPS TéraFLOPS = 1012 FLOPS PétaFLOPS = 1015 FLOPS ExaFLOPS = 1018 FLOPS.
14 flash informatique
By 2015, most of the Geneva’s public school computers will run exclusively free and open source software, based on Open standards. En 2015, la majorité des ordinateurs pédagogiques du Département de l’instruction publique, de la culture et du sport de Genève pourraient fonctionner exclusivement avec des standards ouverts et logiciels libres. Il en va des logiciels libres comme de la paix dans le monde. Le consensus théorique en leur faveur est large. Pourtant, une fois le principe admis, la réalité s’avère vite complexe. Certes, chacun peut, à titre individuel, assez aisément faire le choix de passer d’un système d’exploitation informatique propriétaire à un système basé sur les standards ouverts et logiciels libres (SOLL). Mais on ne change pas l’informatique scolaire d’une institution publique, composée de milliers de postes informatiques, en mettant simplement en avant un idéal. Reste qu’à Genève, dès 2015, la majorité des ordinateurs pédagogiques (et non administratifs) du Département de l’instruction publique, de la culture et du sport (DIP) aura migré vers des solutions libres et ouvertes. À ce titre, la Direction des systèmes d’information et service écoles-médias (DSI-SEM), notamment en charge de l’informatique pédagogique dans les écoles, a élaboré un plan de déploiement dont la deuxième version est consultable en ligne et ouverte au débat. D’emblée, il convient d’éviter tout malentendu: l’objectif n’est pas l’installation de standards ouverts et logiciels libres en tant que tels, mais bien l’amélioration de la qualité et la pérennité des outils informatiques mis à la disposition de l’enseignement et de l’apprentissage. Corollaire, lorsqu’il est avéré qu’un logiciel propriétaire n’a pas son équivalent libre, il sera maintenu. Cette remarque vaut particulièrement pour les écoles professionnelles.
Sept établissements pilotes au primaire Depuis plusieurs années, la DSI-SEM chapeaute et évalue des expériences réalisées avec des logiciels libres. Les avantages que l’on peut en tirer sont évidents: pérennité des documents, adaptation des outils facilitée en fonction des besoins, possibilité de fournir aux élèves les applications dont ils bénéficient à l’école pour les utiliser à leur domicile, etc. Sans compter qu’il existe une identité de valeurs entre le monde du libre et une communauté éducative publique (lire l’encart). Ainsi, une transition vers les SOLL implique des actions non seulement sur les postes de travail, mais également sur l’environnement collaboratif et les ressources pédagogiques numériques.
atique pédagogique evois
ruction publique genevois
Actuellement, 12’000 ordinateurs constituent le parc informatique pédagogique du DIP. Un peu moins d’un quart d’entre eux sont des Macintosh fonctionnant avec MacOS. Les trois quarts sont des PC dotés d’une double configuration: la distribution Ubuntu basée sur GNU/Linux et Windows de Microsoft. Il appartient à l’usager de choisir entre les deux systèmes d’exploitation lors du démarrage de son ordinateur. En outre, de nombreux logiciels libres, tels que l’application de traitement des images GIMP ou la suite bureautique LibreOffice, sont installés sur Windows. Durant l’année scolaire 2012-2013 un premier changement de taille prévu par le plan de déploiement interviendra, puisque tous les postes pédagogiques de l’enseignement primaire (un par classe) seront exclusivement dotés d’une configuration Ubuntu. À ce jour, sept des quatre-vingt-neuf établissements du primaire genevois font office de pilotes. Cette phase permet de tester la configuration, d’y apporter d’éventuelles modifications en fonction des besoins et de mettre au point la gestion à distance des postes informatiques.
Un système développé à l’UNIL Parallèlement, l’analyse des besoins pour les salles informatiques des écoles du secondaire I et II a déjà commencé. Elle ne part pas de zéro, puisque dans plusieurs salles des maîtres, les PC tournent déjà sous Ubuntu. Et les salles informatiques PC de trois établissements possèdent une informatique entièrement libre. Un des enjeux pour l’enseignement secondaire concerne les tableaux numériques interactifs (TNI) qui, à terme, équiperont l’ensemble des salles de classe. Le choix s’est porté sur Uniboard, un système développé par l’Université de Lausanne, entré dans le monde du libre en 2010 sous l’appellation Open-Sankoré (open-sankore.org). Le fait de distinguer le primaire du secondaire et de procéder à chaque fois en trois phases – analyse, expérimentation, finalisation – est certes nécessaire, mais ne garantit pas la réussite du programme. La résistance au changement constitue une réalité à prendre en compte, qu’elle soit basée sur des critères objectifs ou des craintes infondées. Effort d’apprentissage et d’adaptation,
Des valeurs convergentes En cherchant à rendre accessible à la fois les outils informatiques et les contenus réalisés grâce à eux, le monde du logiciel libre vise un objectif de démocratisation du savoir et des compétences, de partage des connaissances et de coopération dans leur mise en œuvre, d’autonomie et de responsabilité face aux technologies, de développement du sens critique et de l’indépendance envers les pouvoirs de l’information et de la communication. Ces valeurs sont clairement convergentes avec celles d’un système éducatif. À Genève, elles sont même inscrites dans la Loi sur l’instruction publique. En outre, les logiciels libres, par leur grande variété, permettent l’acquisition de compétences transposables à d’autres outils plutôt que l’utilisation répétitive d’un nombre limité de fonctions. Cet avantage n’a ainsi pas échappé à de nombreux enseignants qui collaborent à des portails éducatifs en utilisant des logiciels libres. habitudes acquises lors de la formation d’enseignant, difficultés à récupérer des contenus réalisés avec des logiciels propriétaires, complexité à gérer trois environnements informatiques différents (pédagogique proposé par le DIP, administratif de l’État et privé), ressources insuffisantes: ces risques et préoccupations illustrent à quel point un accompagnement au changement s’avère crucial.
Changer de paradigme Il s’agit en premier lieu de rendre très lisibles les objectifs du DIP, à travers une information régulière; une campagne de communication auprès des collaboratrices et collaborateurs de l’enseignement est donc d’ores et déjà prévue. Deuxième point, l’assistance fournie aux usagers devra être facilement repérable et rapide. Enfin, concernant l’aide à l’acquisition de nouvelles compétences, des cours existent. Mais l’analyse des besoins a montré que, pour la prise en main des nouveaux outils, une autoformation basée sur des modules en ligne devrait suffire. La date prévue pour la réalisation complète de ce déploiement – 2015 – se base bien évidemment sur une planification interne. Mais elle dépend également d’une réalité exogène. Microsoft a annoncé la fin du support Windows XP pour 2014. Autrement dit, quel que soit le système d’exploitation retenu, libre ou propriétaire, une migration aura lieu. Le DIP a simplement choisi de changer de paradigme. Aujourd’hui, le standard est Windows et l’exception MacOS. Demain, le standard sera GNU/Linux, les exceptions MacOS et Windows.
Pour en savoir plus Consulter le plan de déploiement (icp.ge.ch/sem/projets/spip. php?article619) où l’on trouve également d’autres liens et documents expliquant la politique du DIP genevois en matière de standards ouverts et logiciels libres. Voir également le site du projet GeLibrEdu (icp.ge.ch/sem/gelibredu/). Article du FI-EPFL 2011 sous licence CC BY-SA 3.0 / M. Gregori 20 DÉCEMBRE 2011 - N° 10
15
Comment faire ?
La téléphonie VoIP privée en pratique Jacques.Menu@epfl.ch, téléphoniste du XXIème siècle
This paper presents the practical usage of VoIP to call users through a software application, i.e. a softphone and combine regular, analogical telephony on a fixed line and the digital one, over the Internet. Cet article présente l’emploi concret de VoIP pour téléphoner au moyen d’une application logicielle, soit la softphonie et combiner la téléphonie analogique traditionnelle sur ligne fixe et celle, numérique, par Internet.
Le problème L’article Télérama de François Roulet dans le FI5/10 (flashinformatique.epfl.ch/spip.php?article2071) présente le cadre général de VoIP (Voice Over IP) et son expérience dans ce domaine. Ce sujet est de plus en plus d’actualité puisque les centraux téléphoniques classiques sont progressivement remplacés par des modèles offrant VoIP. Ce sera d’ailleurs le cas de l’EPFL dans le futur. Quand j’ai voulu faire le passage à VoIP moi-même, je me suis inspiré de l’article de François, ce dont je le remercie ainsi que d'avoir relu cet article. J’ai rencontré quelques difficultés pratiques: en particulier, les différents codes à saisir n’étaient pas toujours clairs pour moi, ni le format à utiliser pour les numéros de téléphone. Le but du présent article est d’éviter ces tâtonnements à d’autres personnes, en montrant les réglages importants pour que ça fonctionne. L'obtention d'un numéro VoIP géolocalisé comme 021… n'est pas abordé dans cet article. Comme moi, vous ne connaissez rien à la téléphonie? Suivez le guide! Pour des raisons de confidentialité, tous les numéros pouvant permettre d’atteindre un correspondant qui figurent dans cet article ont été imaginés: n’essayez pas de les utiliser…
Choix d'un fournisseur d'accès Comme François, j’ai misé sur la nébuleuse Finarea, qui regroupe un certain nombre de portails offrant le service VoIP, à des conditions variées, listées sur la page progx.ch/home-voip-prixbetamax-3-1-1.html. J’ai choisi Rynga, dont les conditions me conviennent: appels gratuits sur les numéros fixes dans nombre de pays dont la Suisse, et appels sur des numéros de portables à un prix assez bas. Par exemple, les SMS pour la suisse sont facturés 3.2 centimes d’€. Les tarifs détaillés figurent à la page www.rynga. com/en/calling-rates.html. La condition chez Rynga est de prépayer 10€, les appels payants étant débités sur ce montant; cela
16 flash informatique
donne droit à quatre mois d’appels gratuits pour les destinations qui s’y prêtent, avec une limite à cinq heures de communication sur sept jours consécutifs. À noter qu'un second appel simultané est lui toujours facturé. Une fois ces quatre mois écoulés, les appels sur les lignes fixes sont débités également. On peut recharger son compte VoIP en tout temps par un versement de 10€ qui nous redonne droit à une période de quatre mois, …
Noms, numéros et codes C’est la difficulté que j’ai eue pour passer à VoIP, et qui justifie l’écriture du présent article. Il y a dans ce contexte: z le Rynga Name, nom de l’utilisateur sur le site de cette société, et aussi son identité lorsqu’il fait des appels ou envoie des SMS; z le mot de passe du compte VoIP Rynga, demandé lorsqu’on s’y connecte pour le gérer. Pour les besoins de cet article, le compte est appelé basbois, et le connection name est donc basbois@rynga; z le caller ID, soit un numéro international +41217896543 qui indique au correspondant qui est son interlocuteur si son équipement le permet; z le système PIN du boîtier Siemens, si on en a un, utilisé lorsqu’on s’y connecte pour le paramétrer. C’est un code de quatre chiffres décimaux, 0000 initialement.
Création d'un compte VoIP auprès de Rynga Elle se fait par la page www.rynga.com/en/index.html. On doit indiquer les numéros de téléphone qui seront utilisés comme étant l’appelant, avec le préfixe international, par exemple +41216934587. On a droit à cinq numéros au maximum. Lors de leur enregistrement depuis la page de profil de l’utilisateur (Personal détails), Rynga appelle le numéro indiqué pour vérifier qu’il est utilisable. Lors de cet appel, on reçoit un code à quatre chiffres *à usage unique*, à saisir dans le dialogue d’enregistrement du numéro. On voit dans la page de profil également un numéro d’appel local dans le pays de résidence choisi, comme 031xxxyyzz pour la Suisse, qu’on obtient en choisissant la ville la plus proche dans une liste. Pour appeler un numéro international depuis n’importe quel type de téléphone, on compose ce numéro local puis le numéro international désiré. Ce faisant, on paie la communication au tarif local jusqu’à ce numéro dans le pays, puis l’accès international se fait en VoIP aux conditions décrites plus haut. Une fois le compte VoIP créé et crédité, on peut faire des appels, depuis au choix: z un logiciel dit softphone, qui tourne sur un ordinateur, un téléphone mobile ou une tablette, et qui permet de faire des appels VoIP;
La téléphonie VoIP privée en pratique z un boîtier de téléphonie hybride analogique/numérique, en dur, comme en propose par exemple Siemens.
Gestion courante du compte VoIP Elle se fait par la page https:// www.rynga.com/myaccount qui, en plus de donner l’accès au profil de l’utilisateur, montre: z les dates et montants des versements réalisés; z les appels récents avec date et heure, numéro appelé, durée et coût, ou FREE pour les appels gratuits; z le moyen de créditer son compte VoIP; z le moyen de télécharger le logiciel softphone MobileVOIP pour iPhone/iPod/iPad, Android, Nokia/Symbian et Windows Phone. On voit ci-contre la colonne de gauche de cette page de gestion.
Où l'on se lance dans la softphonie Comme softphone, j’ai installé X-Lite 4 et MobileVOIP, fournis par Rynga, sur Mac OS X et iPhone/iPod/iPad respectivement. Il en existe bien sûr quantité d’autres, mais qui ne sont pas spécifiques aux portails de Finarea. On voit l’apparence de l’application X-Lite 4 ci-contre. Petit détail: si on supprime un contact qui est dans plusieurs catégories à la fois, comme Christian dans cette figure, il disparaît intégralement. Pour le supprimer dans une seule catégorie, il faut la simplement la décocher dans la définition du contact.
Emploi de la base hybride analogique/ numérique Gigaset Suivant les traces de François, j’ai opté pour un boîtier Siemens, appelé base par ce constructeur. Ce modèle Gigaset C610A IP vient avec un combiné noir et son support pour le recharger, mais ce support ne joue pas d’autre rôle. Le A indique qu’un répondeur est intégré à la base (il y en a trois en fait, un par paire de combinés, voir l’article de François). J’ai aussi un second combiné avec son support, blanc pour pouvoir les distinguer. Ci-dessous, une vue d’ensemble de l’installation, dans laquelle: z la base avec ses deux connexions RJ 11 (téléphonie) et RJ 45 (réseau informatique) est au centre,; z un combiné est montré en bas à droite sur son support; z le boîtier en haut à gauche fournit l’accès à Internet, par exemple sous la forme d’un routeur, modem réseau ou ADSL; z l’ordinateur en haut à droite n’est utile que pour accéder au paramétrage de la base, il n’intervient pas dans les communications téléphoniques.
Le compte VoIP Rynga est enregistré dans les préférences de l’application, comme l’illustrent les deux figures ci-après.
La base est préconfigurée pour obtenir une adresse IP d’un serveur DHCP, comme souvent pour ce genre d’équipement. À la maison, cela se passe donc très bien avec les équipements réseau actuels. Cet équipement héberge un site Web de gestion et de paramé20 DÉCEMBRE 2011 - N° 10
17
La téléphonie VoIP privée en pratique trage, qui s’annonce sur le réseau. Il suffit, pour y accéder, de choisir l’URL www.gigaset-config.com/myDevice/ dans son butineur préféré: cela recherche une base sur le réseau local, qui s’affiche alors avec son adresse IP, comme 10.0.1.42 ici.
Dans le site intégré à la base, on a accès aux différents paramètres de sa configuration. Dans Settings: z sous l’onglet NetWork, IP Configuration, le réglage de la configuration réseau IP (DHCP par défaut) et en cliquant sur Show Advanced Settings, le nom de la base. On peut si nécessaire mettre en place une adresse IP fixe si DHCP ne fait pas l’affaire dans le cas concret. Dans Telephony, on peut spécifier: z sous l’onglet Connections, l’enregistrement d’au maximum six combinés en plus de la ligne fixe analogique et leur activation/désactivation. C’est ainsi que les combinés sont raccordés à la base: leur support ne joue aucun rôle, il ne sert qu’à charger les batteries. Voir les réglages pour le combiné 1 dans l’écran ci-contre. Le bouton Start Configuration Assistant n’est pas utilisable pour Rynga, qui n’est pas connu pour cette fonctionnalité: il a donc fallu fournir à la main les valeurs indiquées sur ce portail; z sous Number Assignment, les réglages des combinés enregistrés pour les appels entrants et sortants. Dans la figure cicontre, tous deux acceptent les appels entrants sur la ligne fixe, mais tous les appels sortants vont sur Internet, en utilisant le compte basbois@rynga. De plus, si l’accès à Internet n’est pas possible, les appels sortants passent automatiquement par la ligne fixe (Automatic Fallback to Fixed Line); z sous Dialing Plans, l’emploi de la ligne fixe ou d’Internet pour certaines gammes de numéros. Ainsi, on peut forcer l’accès à des numéros payants comme 0800… par la ligne fixe, certains n’acceptant pas de connexion VoIP; z sous Advanced VoIP settings, on peut choisir des réglages plus fins, que j’ai laissés inchangés. Dans Directories: z sous Online Directory, on définit si l’on veut que les numéros entrants soient recherchés dans un annuaire sur Internet pour afficher l’identité de l’appelant; c’est tel.search.ch qui est proposé pour la Suisse; z sous Directory Transfer, on peut importer/exporter le contenu du répertoire de numéros pour chaque combiné individuellement. L’exportation se fait par Save, ce qui crée un fichier teledir.vcf qu’on peut renommer à volonté. Après modification
18 flash informatique
réglages pour le combiné 1
Number assignment
du fichier texte sur un ordinateur, il suffit d’effacer le répertoire dans le combiné par Delete puis de le télécharger par Transfer.
La téléphonie VoIP privée en pratique Dans Management: z sous Save & Restore, le plus important peut-être est qu’on peut sauvegarder les réglages complets de la base sur un fichier d’un ordinateur, et les recharger à volonté; z enfin, sous Firmware Update, on peut aller chercher la version la plus récente du logiciel interne de la base chez Siemens sur Internet. Il est conseillé de le faire lors de l’installation du matériel, qui peut avoir été stocké un certain temps avant qu’on le reçoive, et c’est un bon test de la connexion de la base au réseau. Dans l’onglet Status de la page principale du site intégré à la base, on voit l’état de cette dernière, illustré ci-après, et celui des connexions par la ligne fixe et les deux accès par VoIP configurés, illustré ensuite.
Quels avantages? Avec la base Siemens illustrée ici, on peut avoir deux appels en cours, entrants comme sortants, ce qui est très pratique ! Plus généralement, VoIP offre essentiellement: z des communications bon marché, accessibles depuis divers endroits et avec divers outils: combiné ou softphone, sur différents matériels pour ce dernier; z un accès permanent à l’état de son compte, en particulier le nombre de jours de gratuité restant et la listes des appels effectués, par Internet comme depuis les softphones; z la possibilité d’appeler tout numéro de téléphone, sans qu’il doive être accessible par VoIP lui-même; z la possibilité d’envoyer des SMS; z la facilité pour planifier les coûts des appels. Pour certains services ou achats sur Internet, on vous demande un numéro de téléphone dans le pays du prestataire de service: il suffit d’avoir un numéro VoIP dans ce pays, et le tour est joué. En prime, si vous avez un accès Wi-Fi mais pas de communication GPRS possible, parce que vous êtes dans une zone non desservie ou parce que ce serait trop cher, vous pouvez toujours communiquer par VoIP. C’est le cas par exemple en vacances ou en déplacement à l’étranger, il n’y a plus de notion de territoire.
Un monde parfait?
Les autres réglages de la base sont décrits dans la documentation. On peut les laisser tels qu’ils ont été mis en place par le fabricant. Un côté intéressant de la préparation du répertoire des combinés sur un ordinateur est qu’on peut facilement le rendre identique sur tous les combinés en employant le même fichier. Voici un exemple de contenu de ce fichier. BEGIN:VCARD VERSION:2.1 N: Yellow Pages; TEL;HOME:2#91 END:VCARD
BEGIN:VCARD VERSION:2.1 N: [tel.search.ch]; TEL;HOME:1#91 END:VCARD
VoIP a de très bons côtés, mais il faut être bien conscient que: z la disponibilité d’un accès Internet n’est pas comparable à celle du réseau téléphonique fixe, alimenté électriquement par les centraux et très fiable; z au moment où j’écris cet article, le mot de passe de mon compte est stocké en clair par Rynga, une faiblesse. Quelle est la qualité du son? Cela dépend des codecs utilisés pour compresser puis décompresser les paquets contenant le son qui circulent sur Internet. Il y a donc parfois un son moins bon qu’en analogique. Un autre phénomène, déroutant la première fois, est qu’il peut arriver que les paquets provenant du correspondant soient retardés puis arrivent en avalanche: rien ne s’est perdu, mais il faut tout de même demander de répéter. La documentation de la base Siemens utilisée ici est bien faite et disponible en plusieurs langues, y compris en format PDF. Une volée de bois vert toutefois à l’interface utilisateur sur un point: pour changer la langue des répondeurs téléphoniques intégrés, il faut fouiller la documentation pour trouver l’horreur suivante en page 117,
BEGIN:VCARD VERSION:2.1 N:Reamey;Ami TEL;HOME:0294631292 TEL;CELL:0899875321 END:VCARD
Si on est équipé de plusieurs postes reliés à la même base, on peut transférer une communication en cours sur un autre poste. Le petit plus, c’est de pouvoir appeler gratuitement tout client du même fournisseur, avec un identifiant comme 222430994014#9@ sip.gigaset.net.
alors qu’il serait si facile de proposer ça dans le site Web de gestion intégré… Décidément, personne n’est parfait, même dans le monde d’Internet! n 20 DÉCEMBRE 2011 - N° 10
19
Analyse
iPad, une révolution dans la salle de classe ? Bettina Büchel, Professeur à l’IMD et Directrice du Programme OWP et Iain Cooke, CTO, IMD – texte traduit de l’anglais
Question: How can business schools save money on printing, contribute to environmental sustainability, improve networking opportunities among participants and bring cutting edge knowledge into the classroom ? The answer – the iPad. Question: comment une école de management peutelle faire des économies sur les frais d’impression, contribuer au développement durable, augmenter les possibilités de réseautage entre les participants et introduire les dernières innovations technologiques dans une salle de classe ? Réponse : l’iPad. Une expérience pilote avec l’iPad réalisée dans le cadre d’un programme privé pour Allianz Global Investors, nous a convaincus que cette tablette, assez fine pour tenir dans une enveloppe en papier kraft et plus légère qu’un notebook, allait révolutionner le monde de l’enseignement. La veille du programme, chaque participant a reçu un iPad. Celuici contenait toutes les présentations des cours, les cas à étudier, les informations logistiques relatives au programme, sans oublier les applications standards et la possibilité de se connecter au WiFi. La configuration permettait également au coordinateur de programme de rester en contact avec les participants en permanence. Les participants l’ont utilisé tout au long de leur séjour et l’ont rendu à la fin. Ils ont ensuite pu récupérer l’intégralité de leurs documents grâce au portail Web. Les commentaires des évaluations, tant du personnel de l’IMD ou que des participants, ont été très positifs. Certains participants ont même mentionné qu’ils s’achèteraient un iPad dès qu’ils seraient disponibles dans
20 flash informatique
leur pays d’origine, et de plus en plus de professeurs de l’IMD ont décidé d’intégrer ce nouvel outil dans la conception de leurs programmes. Pour les fournisseurs d’information dans le milieu de l’enseignement, l’iPad est le premier pas vers une solution sans papier. Notre bilan:
Avantages Une solution plus économique Les économies financières peuvent en effet être importantes. Par exemple, il arrivait auparavant que les participants de certains longs programmes de l’IMD recevaient des classeurs pouvant contenir plus de 1000 pages, ce qui est loin d’être négligeable en termes de coûts d’impression. En revanche, dès sa première utilisation, l’iPad peut déjà être rentable. Sachant qu’il est rendu à la fin du programme, l’investissement n’est fait qu’une seule fois et non plus lors de chaque session.
Respect de l’environnement En économisant des arbres et l’énergie nécessaire à produire, transporter et imprimer le papier, l’iPad permet aux écoles de management d’apporter une contribution positive au développement durable.
Réseautage et accessibilité permanente Échanges de cartes de visite et de coordonnées peuvent à présent être faits de manière virtuelle, ce qui élargit les possibilités de réseautage et de contact entre participants. Du point de vue logistique, cela permet aux coordinateurs de programme d’être constamment en contact avec leurs participants et de les informer de tout changement.
iPad, une révolution dans la salle de classe ?
Information en temps réel Les participants ont en tout temps accès aux informations les plus récentes sur les performances des entreprises, les rapports et autres documents utiles, ce qui est aussi un avantage pour les professeurs.
Préparation de la session facilitée Imaginons qu’on professeur veuille donner accès à certaines informations seulement après avoir abordé les points-clés de sa session. Il est possible de trouver un équivalent électronique à la distribution des documents qui soit simple, rapide et fiable. Bien entendu, le succès de cette intégration technologique suppose de faire l’effort d’installer les outils, systèmes et serveurs adéquats. Tout doit fonctionner ensemble, de manière sûre et conviviale, tant du point de vue des collaborateurs de l’IMD que des participants.
Inconvénients Potentiel ludique L’introduction des iPad dans une salle de classe n’a bien évidemment pas pour but de permettre aux participants de surfer sur le Web pour prendre connaissance des derniers résultats sportifs ou de chatter avec leurs amis. Il faut donc dès le début du programme les y rendre attentifs et limiter aux pauses ce type d’utilisation. Cependant, c’est un piège que l’on devrait pouvoir éviter, sachant que c’est aujourd’hui un réflexe relativement intégré pour les téléphones portables. L’iPad n’est qu’un nouveau support à prendre en compte et les professeurs peuvent répéter l’avertissement si besoin.
Résistance à la lecture sur écran Certains participants préféreront lire les documents sur papier, dans ce cas, l’école doit donner la possibilité d’imprimer certains documents lorsque c’est approprié. Cette tendance est plus ou moins importante selon l’âge des participants.
Prise de note moins aisée Annoter des documents de façon électronique est un nouveau défi à relever et le programme pilote en a démontré la nécessité.
L’IMD (www.imd.ch) est l’un des pionniers et leaders mondiaux dans la formation des cadres supérieurs. Son rôle dépasse largement celui d’une business school traditionnelle: nous collaborons avec des individus, des équipes et des organisations pour résoudre des problèmes d’entreprise réels, développer des compétences et préparer l’avenir. Nos actions s’appuient sur une approche unique, Real World, Real Learning, née de nos partenariats durables avec des entreprises internationales de premier plan. Sur notre campus au bord du lac Léman en Suisse et dans des endroits clés du monde entier, nous proposons des programmes et des services d’une qualité unique, qui mélangent expérience pratique, stratégie d’innovation et vision mondiale. Les participants à ces programmes choisissent IMD pour son environnement de formation ouvert et stimulant qui leur permet de bousculer leurs a-priori et élargir leurs horizons.
L’IMD développe actuellement une approche qui permet le marquage électronique des documents en lien avec des notes prises sur papier. Nous vivons à une époque où l’écart entre les générations est probablement à son apogée, à savoir entre les plus âgés ayant connu la technologie plus tard dans leur carrière et les jeunes qui ont toujours vécu avec. L’iPad est néanmoins si convivial qu’il devrait permettre une transition agréable et amusante pour les managers peu familiers avec la technologie. Les possibilités de ce support dans une salle de classe sont presque illimitées et il est difficile de prévoir ce qui, à terme, aura le plus de valeur ajoutée pour nous. Nous sommes encore dans la phase de découverte et d’analyse des retours de participants. Toutefois, il ne fait pas de doute que les écoles de management se doivent d’être à la pointe de l’innovation et une utilisation intelligente de l’iPad est un moyen d’atteindre cet objectif. n
20 DÉCEMBRE 2011 - N° 10
21
Actualités
La disparition programmée de l’ordinateur Marielle.Stamm@memoires-informatiques.org & Yves.Bolognini@memoires-informatiques.org, Mémoires Informatiques
An investigation of a different type at the EPFL: programmed computer disappearance. Une enquête d’un autre type à l’EPFL: l’ordinateur disparaît au Musée Bolo.
se cache à l’intérieur d’autres objets et se camoufle derrière un design attractif. Elle se fait oublier derrière la façade ludique des jeux vidéo ou dans les pièges de la réalité virtuelle. Elle se dissout dans le grand nuage informatique dont le meilleur exemple est Internet. Elle s’humanise par le biais d’interfaces nouvelles et devient intelligente en imitant l’homme. Les archéologues du Musée Bolo n’ont cependant pas dit leur dernier mot et poursuivent leur enquête. Car des éléments nouveaux ont surgi tout au long du vernissage de l’exposition qui se tenait au Forum du RLC. Deux pionniers de la première heure, Niklaus
Les archéologues du Musée Bolo ont réuni une brochette de célébrités autour de cet étrange phénomène: la disparition programmée de l’ordinateur. Les pionniers suisses de l’informatique ont apporté leur témoignage au cours de du vernissage de la nouvelle exposition. Une réplique de la première souris au monde a été remise au Musée par le fondateur de Logitech, Daniel Borel. Un ordinateur dinosaure, datant des années soixante et cent pour cent suisse, a été dévoilé par son concepteur. Au cœur du Musée Bolo, sur un mur de vingt et un mètres de long, les fils d’une enquête d’un autre type s’entrecroisent autour de niches de couleur brillamment éclairées où trônent des objets qu’Yves Bolognini, ingénieur informaticien EPFL et co-fondateur du Musée avec Edouard Forler, collectionne depuis plus de quinze ans. Autant d’indices, de preuves et de suspects répartis en cinq chapitres inédits qui jalonnent la disparition programmée de Jean-Daniel Nicoud , pionnier de la micro-informatique suisse l’ordinateur. Les visiteurs sont invités à répondre aux questions posées par les auteurs de l’enquête sous l’œil impassible ou narquois des photos des principaux témoins. Wirth, auteur du langage de programmation Pascal qui a fait le Les exemples foisonnent pour illustrer les cinq pistes autour tour du monde, et Jean-Daniel Nicoud, concepteur des micro-orde cette disparition: réduction, camouflage, oubli, dissolution, dinateurs Smaky sur lequels s’est initiée toute une génération de humanisation. Première piste, devenue désormais classique, la jeunes Suisses, ont montré la filiation entre les premières avancées réduction ou miniaturisation des composants de l’ordinateur de l’informatique et les artefacts de notre monde contemporain. n’est en effet pas la seule cause de sa disparition. Car la machine Créant la surprise car il n’était pas annoncé, Daniel Borel, fondateur de Logitech, a rendu hommage à l’inventeur de la souris, Douglas Engelbart, et mis à disposition du Musée sa réplique de la première souris de 1968. Construite en bois, elle est dotée d’un unique bouton et de deux roues en métal. Enfin, un autre pionnier inattendu et encore inconnu, Peter Toth, a évoqué avec émotion ses recherches pour concevoir, au milieu des années soixante, la Cora, un gigantesque ordinateur Niklaus Wirth, un des principaux témoins de l’enquête sur la disparition de l’ordinateur
22 flash informatique
La disparition programmée de l’ordinateur
Le public découvre la nouvelle exposition du Musée Bolo
destiné à l’armée suisse, oublié puis redécouvert par Yves Bolognini dans les caves de l’EPFL. Les entrailles ouvertes, cette grosse machine exhibe ses composants d’un autre âge face au mur de l’exposition Disparition programmée.
suisse. À sa suite, François Marthaler, conseiller d’Etat, a évoqué les étapes les plus marquantes de l’évolution de l’informatique à l’Etat de Vaud. Martin Vetterli, doyen de la Faculté I&C, a brossé à grands traits et avec maestria l’histoire de l’ordinateur, d’Ada Lovelace, première programmeuse au monde, au nuage informatique. Il incombait à Giovanni Conti, directeur de l’Office fédéral de l’informatique et de la télécommunication (OFIT), d’émettre quelques réserves face à la complexité croissante des systèmes et aux risques qu’elle entraîne. Et d’encourager avec à propos l’EPFL à développer des systèmes capables de s’auto-diagnostiquer et de s’auto-réparer. L’exposition Disparition programmée a été réalisée par la Fondation Mémoires Informatiques, dont la vocation est la sauvegarde du patrimoine informatique, avec l’assistance de l’association des Amis du Musée, l’aBCM. Elle est visible au Musée Bolo dans les bâtiments de la Faculté Informatique et Communications, durant les heures d’ouverture de l’École du lundi au vendredi de 8 heures à 19 heures.
Informations pratiques
Daniel Borel, l'invité-surprise, rend hommage à Douglas Engelbart
Parmi les autres intervenants du vernissage, signalons Philippe Gillet, vice-président de l’EPFL pour les affaires académiques, qui a rappelé, dans son message d’accueil, le rôle important joué par l’École dans les premiers développements de l’informatique
z Visites guidées: www.abcm.ch/visites z Des photos et le film du vernissage sont disponibles à l’adresse: www.bolo.ch/?liens . z Pour tout autre renseignement: Yves Bolognini, 078 748 21 16 NB: les photos illustrant cet article sont avec droits limités: Sébastien Monachon, BSC Association.n
L’Apple Lisa 2 trône de l'autre côté du mur
20 DÉCEMBRE 2011 - N° 10
23
Actualités
Savoir et savoir-faire en algorithmique Christian.Kauth@epfl.ch, EPFL - président de PolyProg & Jonas.Wagner@epfl.ch, EPFL- membre du comité de PolyProg
Problem analysis, conception of a solution approach, followed by an efficient implementation – a job for real engineers. Three EPFL teams, trained by PolyProg, recently took up this challenge and proved their skills at a top level. Décortiquer le problème, chercher une approche conduisant à la solution, implémenter celle-ci de manière efficace – un vrai travail d’ingénieur de A à Z. Ce fut le défi auquel se sont livrées récemment 3 équipes de l’EPFL entraînées par PolyProg, en faisant preuve d’excellente maîtrise.
Ce furent Andrei Giurgiu, Anton Dimitrov et Christian Kauth qui ont su assurer une respectable 18e place parmi 1’500 équipes autour du globe, pendant un marathon de 24 heures de concentration absolue dans le cadre du IEEEXteme 5.0 [1]. Juste un mois plus tard, deux équipes d’étudiants de l’EPFL, Johannes Wüthrich, Mihai Moraru, Przemyslaw Pietrzkiewicz, Cheng Zhong, Le Hung Tran et Cristian Talau, ont décroché des médailles de bronze au SWERC [2] à Madrid. Elles y furent préparées par le formateur de PolyProg, Christian Kauth et ses assistants Jonas Wagner et Andrei Giurgiu. Sans pouvoir émuler ici l’atmosphère sérieuse, pleine de suspense et ardente d’un vrai concours, nous vous proposons de suivre le parcours qui mène d’un problème populaire du SWERC à sa solution. Une pensée analytique, l’ingéniosité et une bonne maîtrise d’un langage de programmation (nous choisissons le C++ ici) sont indispensables au succès. En voici l’énoncé:
g.à.d. Anton Dimitrov, Christian Kauth, Andrei Giurgiu
24 flash informatique
Ce fut le weekend des élections en Espagne et il s’agissait de distribuer les B (B<2’000’000) boîtes de vote parmi les N (N<500’000) villes du pays, de sorte à ce que la pire densité d’électeurs par boîte soit minimisée. À part N et B, on vous donne aussi le nombre d’électeurs par ville ai , ne dépassant pour aucune ville M (M≤5’000’000). Appelons bi le nombre de boîtes attribuées à la ville i. Un minimum d’une boîte par ville est requis. Ce problème, extrait de la vraie vie, admet plusieurs approches correctes d’efficacités différentes. Testez jusqu’où vous auriez su pousser la barre !
La force brute en O(BN) Le problème est facile à résoudre : il faut juste donner les boîtes aux villes qui en ont le plus besoin: Initialiser le nombre de boîtes: bi 1 pour chaque ville Tant qu’il nous reste des boîtes: trouver la ville avec densité ai/bi maximale ajouter une boîte à cette ville: bi bi + 1
Cette stratégie est gloutonne. Elle choisit à chaque étape la solution optimale, sans considérer les prochaines étapes. Les boîtes déjà attribuées ne sont jamais redistribuées. Malgré sa simplicité, elle donne le résultat correct. Pour prouver cela, constatons d’abord que le résultat est correct si B=N, car il faut donner une boite à chaque ville dans ce cas. Si nous ajoutons la boîte suivante à la ville avec le pire rapport habitants/boîtes, nous parlons de densité dans la suite, la solution reste optimale. Par induction, il s’ensuit que la solution est optimale pour chaque B>N. Malheureusement, cette solution est trop lente pour marquer des points dans un concours: pour chaque boîte, il faut parcourir toutes les villes et trouver celle qui recevra la boîte. L’algorithme effectue donc B*N opérations, soit un trillion d’opérations !
Savoir et savoir-faire en algorithmique
Encore brut, mais structuré O(B log(N))
Par hasard O(N log(N))
Nous pouvons améliorer notre algorithme, si à chaque distribution de boîte, nous trouvons la ville la plus dense plus rapidement. Il nous faut une structure de données qui permet d’accéder rapidement au plus grand élément d’une collection. Une telle structure s’appelle un tas (heap) ou une file de priorité (priority queue) [3]. Voilà notre algorithme modifié:
Terminons notre excursion des approches sur une solution extravagante, qui met à profit le hasard et déclasse toutes les approches précédentes ! L’observation de base est la suivante: si P est la population totale de l’Espagne, il faudrait idéalement attribuer 1 boîte par ville (c’est le minimum selon les règles du jeu) et distribuer les (B-N) boîtes restantes sur les villes, proportionnellement à leur population. Etant donné que les boîtes constituent des objets discrets, cette stratégie n’est pas applicable telle quelle, mais nous en tirons néanmoins le nombre minimal de boîtes entières pour chaque ville, !! = !! !!− ! + 1 . Après cette distribution, il nous reste R = (B-∑bi ) boîtes pour améliorer la situation dans R villes au maximum. Il est garanti que R<N, puisqu’autrement, nous pourrions donner une boîte de plus à chaque ville ! Nous en concluons que la ville avec la (R+1)–ième plus grande densité (et toutes les villes avec densité inférieure) ne se verra attribuée plus aucune boîte supplémentaire et nous donne une borne inférieure à la pire densité. Ramassons ensuite de nouveau toutes les boîtes des R villes les plus denses et redistribuons-les, avec les R boîtes restantes, selon ce même schéma ! La fonction solve accomplit ceci de manière récursive. Dans le pire des cas, R=N-1 , et solve est appelé N fois ! En pratique, R suit néanmoins une distribution uniforme, entre 0 et N-1 et l’espérance des appels récursifs de solve vaut O(log(N)). Après le pseudo-code vient l’implémenta! tion en langage de programmation. Une somme ! = !! + !! s’écrit ! en C++ S=accumulate(&x0,&xN,s0) et la partie entière supérieure C d’une fraction de deux entiers a et b s’exprime comme C = a/b + (a%b>0).
Initialiser le nombre de boîtes: bi 1 pour chaque ville Insérer chaque ville dans une file de priorité Q Tant qu’il nous reste des boîtes: extraire la ville avec densité ai/bi maximale de Q ajouter une boîte à cette ville: bi bi + 1 réinsérer la ville dans Q
Les opérations d’extraction et d’insertion prennent un temps logarithmique en taille de la file. Du coup, le coût total de cet algorithme est d’ordre O(B log(N)). Ceci est nettement plus rapide, mais s’élève encore à une centaine de millions d’opérations.
Se poser la bonne question O(N log(M)) Faisons tabula rasa. Au lieu de créer la distribution optimale des boîtes pas par pas, nous allons simplement deviner quel est le nombre de personnes par boîte dans une distribution optimale. Cette stratégie n’est pas juste plus élégante, mais s’avère aussi plus efficace. Appelons X0 notre densité devinée. Se pose ensuite la question si une distribution respectant cette densité existe ou non ! La réponse à cette question est facile à calculer: Connaissant X0 , !! boîtes. Si le nombre total de chaque ville nécessite !! = !! boîtes nécessaires ne dépasse pas B, il existe effectivement une telle distribution. Soyons plus ambitieux alors et essayons une nouvelle densité X1 ≤ X0 . Dans le cas contraire, tentons notre chance avec un objectif plus modeste X1 ≥ X0 . Ceci nous donne une séquence des bornes pour lesquelles nous savons si elles sont trop ambitieuses ou faisables. Si nous faisons une recherche binaire sur X , chaque réponse coupe la taille de notre intervalle de recherche en deux et nous convergeons vers la plus petite densité qui admet une distribution faisable! Une fois l’idée trouvée, l’étape suivante consiste à formaliser l’algorithme sous forme de pseudocode. Initialiser la borne inférieure Xmin 0 Initialiser la borne supérieure Xmax M+1 Tant que Xmax – Xmin > 1: X ceil(avg(Xmin, Xmax)) Calculer le nombre de boîtes qu’il faudrait: Bnecessaire = sum ceil(ai/X) Si Bnecessaire > B: Xmax X Sinon Xmin X Xmin est maintenant la solution recherchée.
Vu qu’à chaque itération, la moitié des solutions possibles peut être écartée et qu’il faut calculer le nombre de boîtes pour chaque ville en chaque itération, la complexité totale de cette approche est O(N log(M)) et elle vous aurait amené des points au SWERC ! Il est vrai que la limite inférieure aurait pu être initialisée à la population de toute l’Espagne P=∑ai , divisée par B. Est-ce que vous trouvez aussi une meilleure estimation pour la borne supérieure ?
int64 solve(int64 N, int64 B) { P = accumulate(&a[0],&a[N],0ll); for (int i=0; i<N; i++) b[i] = (a[i]*(B-N))/P+1; if (N<=0) return 0; if (N==1) return a[0]/b[0]+(a[0]%b[0]>0); R = B-accumulate(&b[0],&b[N],0ll); N = nth_largest(0,N,R+1); B = accumulate(&b[0],&b[N],R); return max( a[N]/b[N]+(a[N]%b[N]>0), solve(N,B) ); }
Pour mener à bien cette approche, solve doit trouver de manière efficace la n-ième densité par appel à la fonction nth_largest. L’intuition de trier les villes selon leur densité en O(N log(N)) et d’en choisir la n-ième ensuite nous tend un piège, car cette solution fait plus de travail que nécessaire. La bonne approche fonctionne comme suit: sélectionnons un pivot et réarrangeons les villes de sorte à ce que celles avec les densités supérieures à celle du pivot se trouvent à sa gauche et celles inférieures, à sa droite. Maintenant seulement la ville pivot est garantie d’être dans sa position ordonnée, que nous appelons m. Si n=m, nous avons trouvé ce que nous cherchions! Si m est inférieur à n, le n-ième élément est dans la partie de droite et à gauche si m est supérieur à n. Par récursivité sur la partie en question, nous trouvons finalement la n-ième ville la plus dense sans opportunité d’amélioration ! Le code ci-dessous rend les choses claires.
20 DÉCEMBRE 2011 - N° 10
25
Savoir et savoir-faire en algorithmique int64 partition(int64 left, int64 right, int64 pivot) { int64 swappos(left), i; swap(a[right-1],a[pivot]); swap(b[right-1],b[pivot]); for (i=left; i<right; i++) if (a[i]*b[right-1] > a[right-1]*b[i]) { swap(a[i],a[swappos]); swap(b[i],b[swappos]); swappos++; } swap(a[right-1],a[swappos]); swap(b[right-1],b[swappos]); return swappos; } int64 nth_largest(int64 left, int64 right, int64 N) { int64 pivot, rank; if (left==right-1) return left; pivot = left + rand()%(right-left); pivot = partition( left, right, pivot ); rank = pivot-left+1; if (rank>N) return nth_largest( left, pivot, N); if (rank<N) return nth_largest( pivot+1, right, N-rank ); return pivot; }
atout. Les programmeurs expérimentés et rusés savent même tirer avantage des propriétés bénéfiques du hasard. N’hésitez pas à faire vous-mêmes l’exercice de l’implémentation et testez votre solution sur un juge automatique [7]. Si vous avez trouvé du plaisir à stimuler vos neurones avec des problèmes similaires, faisant appel à votre créativité et à votre savoir-faire en algorithmique, formez vite votre équipe pour le Helvetic Coding Contest [8] et inscrivez-vous d’ores et déjà sous hc2.ch. PolyProg organisera cette 3e édition avec le soutien de l’EPFL, OpenSystems [9] et AdNovum [10]. Une centaine d’étudiants (de l’école secondaire jusqu’au doctorat) afflueront des quatre coins de la Suisse pour vous défier le 17 mars 2012, ici au campus, dans une atmosphère conviviale et chacun trouvera des problèmes de son niveau !
g.à.d. Johannes Wüthrich, Mihai Moraru
Références [1] IEEEXteme 5.0: concours algorithmique de 24 heures. www. ieee.org/membership_services/membership/students/competitions/xtreme/index.html. g.à.d. Cheng Zhong, Cristian Talau, Le Hung Tran
L’utile théorème de Master [4] prédit une complexité O(N) en moyenne et O(N^2) dans le pire des cas pour la fonction nth_ largest. D’une part, cinq grandes têtes (Blum, Floyd, Pratt, Rivest et Tarjan) y ont trouvé un remède élégant [5] qui garantit toujours une complexité linéaire, et d’autre part le fait d’inclure le hasard dans l’algorithme, rend l’occurrence du pire cas très improbable (1 chance sur N factorielle). Comme les juges du concours ne peuvent aucunement anticiper notre suite de pivots, il n’y a pas de test [6] pour lequel nth_largest ne serait pas de complexité linéaire, donc solve de complexité O(N log(N)). Dans l’hypothèse des éventualités, notre code dépasse le temps d’exécution limite. Il suffit alors de re-soumettre le même code une seconde fois, avec une initialisation aléatoire différente. Comme vous avez pu constater, il existe souvent des approches très différentes à un même problème, se distinguant par leur facilité d’implémentation et efficacité. Dans le cadre d’un concours, le temps est une ressource limitée et les programmeurs sont toujours face au dilemme entre l’efficacité de leur approche et sa difficulté d’implémentation. C’est précisément à ce niveau qu’une excellente maîtrise du langage de programmation est un énorme
26 flash informatique
[2] SWERC: Finales régionales sud-ouest européennes de l’Intenational Collegiate Programming Contest. swerc.eu. [3] File de priorité: fr.wikipedia.org/wiki/File_de_priorité [4] Théorème de Master : Livre de cuisine pour la solution de relations récursives en termes de complexité. [5] Un algorithme très similaire à celui présenté, qui garantit une réduction d’au moins 30% de l’espace de recherche à chaque itération en utilisant la médiane des médianes. [6] Dans les concours, un juge automatique compile le code source et le teste contre différentes entrées. Des points sont ensuite attribués en fonction de l’exactitude de la réponse et la mémoire et temps CPU accaparés. [7] Il s’agit du problem 12390 sur Uva online judge, uva.onlinejudge.org. [8] Le premier concours de programmation suisse depuis 2010. hc2.ch. [9] OpenSystems, sponsor de l’hc2 2012. open.ch. [10] AdNovum, sponsor de l’hc2 2012. www.adnovum.ch.n
Actualités
Echos du ForumIT d’automne Jean-Claude.Berney@epfl.ch, EPFL-Domaine IT, directeur du Domaine IT
Twice a year, ForumIT is meeting point for IT Domain and IT-people from the EPFL labs (more than 200 people). If you could not attend the November 24 Forum IT, you will find here abstracts of the tackled subjects. The presentations are available on the site dit.epfl.ch/forumIT.
Le 24 novembre 2011, un peu plus de 30 responsables informatique d’unités ont assisté au ForumIT, rencontre bisannuelle avec le DIT. Pour ceux qui n’ont pas pu y assister, voici les sujets qui ont été abordés. Les présentations sont disponibles sur le site dit.epfl.ch/forumIT.
IT@EPFL: survol des 6 derniers mois (J.-C. Berney) Généralités Pour aider à la mise en œuvre de la nouvelle politique CSE (Computational Science & Engineering) adoptée par la Direction en décembre 2010, Vittoria Rezzonico, bien connue en Faculté SB, a été engagée comme coordinatrice du CSE. Afin de mieux communiquer sur le sujet du CSE (ou plus généralement du HPC), une nouvelle revue annuelle spécifique, appelée Zetta, paraîtra début février 2012. Une étude sur les communications unifiées (UC) a été menée durant l’été 2011. Une enquête sur les besoins des utilisateurs a montré qu’un tiers des collaborateurs seraient prêts à renoncer à leur téléphone fixe au profit d’un smartphone & ou d’un softphone &. Cette enquête a également montré que l’usage de la vidéoconférence est très important, principalement dans le cadre de collaborations avec des laboratoires externes à l’EPFL. Des solutions de remplacement de la téléphonie actuelle basée sur une technologie désuète avec de la VOIP ont été analysées et une évaluation des coûts sur 10 ans a été présentée. Concernant le problème de la sécurité informatique, 3 types de mesures ont été pris suite à l’exercice de piratage éthique qui a eu lieu fin 2010. Il s’agit de mesures techniques, organisationnelles et sous la forme de cours proposés aux administrateurs système et aux développeurs d’applications. Le CopilSI travaille sur la stratégie IT et développe des axiomes stratégiques. La transparence demandée à tous les services IT centraux permettra de développer un catalogue de services et un portefeuille de projets. Cela aidera à définir les priorités et à établir les budgets IT. Un nouveau moyen de communication a été mis en place: l’heureDIT. Il est destiné en priorité aux nouveaux responsables informatique et il se présente sous la forme d’une présentation d’une heure par mois sur un sujet particulier (sécurité IT, réseau, gestion des identités,…).
Réseau Le DIT a participé à la journée mondiale IPv6 le 8 juin 2011. Dès 2012, il y aura la possibilité de raccorder des serveurs en IPv6 dans certaines salles serveur de l’EPFL. La nouvelle technologie FCoE & fait son apparition dans les datacenters. Le nombre des connexions Wifi simultanées a doublé en une année, la barre des 4000 connexions a été dépassée cet automne. La fiabilité du réseau est excellente, la redondance des équipements a permis d’éviter plus de 95% des pannes.
Serveurs centraux Dans le cadre de la nouvelle politique CSE, un nouveau cluster de calcul mutualisé sera acquis chaque année. Cette année, il s’agit du cluster Ariès, avec des processeurs AMD (1000 cœurs qui pourront être étendus jusqu’à 2000 courant 2012), qui sera mis en production en janvier 2012. Un nouveau datacenter avec une puissance de 1MW est en cours de construction dans le bâtiment INJ. Il sera mis en production en mars 2012. Son efficacité énergétique sera très bonne, car il utilisera des portes réfrigérées grâce à l’eau du lac pour climatiser les racks informatiques. Le groupe DIT-EX a développé de nouveaux outils pour gérer les datacenters (cf.page suivante).
Services de base L’infrastructure de messagerie MS Exchange 2010 a été renouvelée. Le logiciel de distribution de logiciel Distrilog version 2 est en phase pilote au DIT, il sera mis en production pour toute l’EPFL en janvier 2012. La consommation en volume de la prestation d’impression myPrint pour les étudiants a augmenté de 24% par rapport à 2010. La journée Poséidon du 13 octobre 2011 a été un grand succès : 3038 étudiants inscrits au tirage au sort, dont 2399 de l’EPFL (+20% env.). Dès janvier 2012, les étudiants de l’EPFL pourront installer le logiciel Matlab sur leur ordinateur privé.
Support Plus de 25’000 tickets ont été traités cette dernière année par l’équipe du Call Center. Celui-ci, en plus de deux collaborateurs du DIT, fait appel à plus de 30 assistants-étudiants.
KIS Mise à jour importante du logiciel Infoscience. Evolution de Jahia avec un relookage des outils d’édition. Interface Web 2010 pour les blogs. Nouvelle plate-forme Web pour les smartphones (cf. ciaprès). 20 DÉCEMBRE 2011 - N° 10
27
Echos du ForumIT d'automne
Pour 2012 Renouvellement de plusieurs infrastructures de stockage. Le NAS sera séparé en deux avec d’un côté le stockage individuel et de l’autre le stockage applicatif. Une solution d’authentification forte sera mise en production durant le premier semestre 2012.
Outil de gestion des salles serveur (A. Boisseau) La décision prise en 2010 de ne considérer les différentes salles serveur de l’EPFL que comme des composantes d’un unique datacenter virtuel impliquait la nécessité de disposer d’une application permettant de gérer tous les éléments hébergés dans ces différentes salles (fm.epfl.ch). Le projet de développement de cet outil de gestion des salles serveur a ainsi débuté en septembre 2010. Il s’agit d’un portail Web utilisant le même framework développé pour les autres sites backup/sanas/mynas du groupe DIT-EX. L’outil dispose des fonctionnalités suivantes : z gestion des données et des workflows (ajout/suppression/ modification); z gestion des rôles/droits/délégations; z reporting multi-niveaux (sites/salles/racks/faculté/…).
Les évolutions futures concerneront surtout en l’intégration avec d’autres applications comme NAGIOS, CACTI, l’inventaire EBP, un logiciel de modélisation thermique,…
cn=Open Directory @ EPFL (F. Roulet) L’annuaire Open Directory est en exploitation depuis l’été 2010. Avec plus de 2000 Mac sur le site de l’EPFL, cet annuaire offre un potentiel important d’optimisation de la gestion de ces derniers. Deux exemples concrets d’utilisation ont été présentés: z la gestion d’un parc hétérogène de 370 Mac en Faculté SV par Nicolas Michel; z la gestion d’un parc homogène de 50 Mac dans une salle informatique pour étudiants en faculté SB par Yoann Dind.
EPFL Mobile (L. Boatto) Le KIS a développé un portail de services pour Smartphones disponible à l’adresse m.epfl.ch. Ce portail utilise le framework Jquery Mobile (Open Source). Il est multi-plateforme (iPhone, Android, Windows Phone 7+, BlackBerry 6+, etc.) et bilingue (français – anglais). Le DIT ne peut pas et ne souhaite pas développer tous les services mobiles de l’école. Il met à disposition des webmasters toutes les informations nécessaires pour que ceux-ci puissent créer leur propre site mobile (cf. atelierweb. epfl.ch/mobile). L’opération n’est pas très difficile pour tous ceux qui ont déjà des connaissances en HTML / CSS. Un template HTML / CSS est mis à disposition. n
GLOSSAIRE
&
FCoE (Fibre Channel over Ethernet): technique de réseau de stockage consistant à faire passer les trames du protocole Fibre Channel sur un réseau Ethernet. W smartphone: téléphone intelligent mobile qui fournit aussi les fonctionnalités d'agenda, de consultation d'e-mails de GPS et de navigation Web; les plus courants aujourd'hui sont les iPhones d’Apple et les smartphones équipés du système Android.
Avec cet outil, il est déjà possible de connaître la place disponible dans chaque rack de chaque salle serveur, la puissance électrique consommée sur chaque prise électrique, la puissance de refroidissement encore à disposition, la charge en kg/m2 et encore bien d’autres informations très utiles.
28 flash informatique
softphone: logiciel installé sur un ordinateur personnel ou un smartphone qui permet de faire de la téléphonie par Internet, avec éventuellement un périphérique microphone, casque ou haut-parleur. W = tiré de Wikipédia