Moore's Law and The Future of [Technology] Economy

Why and how innovation should become mainstream economic impetus

Catégorie: IT: the Infrastructure Side

De quoi est fait une infrastructure [5] ? d’ « ilities », propriétés qualitatives d’une infrastructure

Outre les fonctionnalités décrites ci-dessus, indiquant de quoi une infrastructure est faite, celle-ci doit posséder des propriétés qualitatives qui la rendent adaptées à son utilisation. Il y en a de plusieurs types, liés à la performance et à la façon dont elle est atteinte, à la façon dont le système évolue dans le temps, à son adaptation à un usage, à la sûreté et la sécurité.

Regardons les performances tout d’abord. Il est intéressant de constater que certaines mesures de performance constituent un argument publicitaire, comme les gigahertz (GHz), les gigaoctets (Gbytes) ou les gigabits par seconde (Gbit/s). Mais une question essentielle est de savoir comment ces performances sont obtenues, et finalement ce qu’elles signifient. Sans parler des éventuelles publicités mensongères, il y a en fait deux sortes d’informatiques tout à fait distinctes. Lire la suite »

De quoi est fait une infrastructure [4] ? De systèmes de gestion de contenu

Tous les systèmes gèrent des contenus. Dans les cas simples, ou traditionnellement, on parle de données. Sur le web, on parle de musique, de news, de blogs, de vidéos, de données de capteurs divers, etc. Quoiqu’il en soit, la quantité de données, ou de contenu, donc, croît avec la rapidité de la loi de Moore – car les capacités de mémorisation, et plus encore la capacité de mémoire déployée, augmentent au rythme de la loi de Moore.

A la base, gérer des contenus c’est mémoriser des fichiers sur des disques durs, donc rien de très complexe à cela. Seules les grandes fermes de serveurs et les systèmes de cloud computing mentionnés ci-dessus ont contraint à revisiter le middleware servant au système de fichiers.

La chose devient plus intéressante lorsque l’on se pose la question de faire traiter ces contenus par des systèmes sophistiqués ou intelligents, en particulier pour ce qu’ils représentent ou signifient, pas seulement pour la collection d’octets qui les représentent. Lire la suite »

L’infrastructure et les écosystèmes le long de la pyramide de Feynman [6] : le web des objets

De vastes systèmes distribués sont en train de naître dans nos cités et dans nos campagnes à travers le web des objets. C’est une extension vers des infrastructures distribuées encore plus massives que celles décrites précédemment, qui incluent des milliards d’objets digitalisés.

Cela résultera d’un double mouvement : des systèmes sur le web s’étendront en les incluant vers des objets intelligents existants ou nouveaux; des objets digitaux se connecteront au web et commenceront à « parler » à leurs congénères et aux utilisateurs pour former de nouveaux systèmes. Les architectures globales du web ont ainsi tendance à se reproduire à nouveau de façon fractale, mais cette fois « à l’horizontale » dans des systèmes locaux. On n’a pas un seul web des objets, mais des webs de sociétés d’objets.

Par exemple, on parle de réseaux de capteurs. Il s’agit de capteurs disséminés, communicant à la base en proximité les uns avec les autres, et ainsi capables de communiquer à longue distance grâce à des réseaux multi hop. Pour les rendre utiles, ils sont groupés dans des systèmes digitaux étendus complexes et grâce auxquels on sera en mesure de proposer des services. Dans ces systèmes, les capteurs et le système global sont mis en œuvre simultanément. Un exemple pourrait être de semer des capteurs par avion sur une forêt à risque pour prendre en charge l’alerte incendie. Lire la suite »

L’infrastructure et les écosystèmes le long de la pyramide de Feynman [5] : les très petits systèmes

On a rangé à part sous cette catégorie de très petits systèmes des systèmes embarqués d’une nouvelle sorte, aux facteurs de coût, de consommation énergétique et de taille en rupture, et permettant de nouvelles applications.

Ce sont des systèmes qui sont tout en bas dans la pyramide de Feynman dans son état présent. Bien sûr, leurs écosystèmes ne sont en général pas matures, ils sont même quelquefois seulement balbutiants. Ils n’apparaissent donc en particulier pas sous la forme de systèmes distribués. Lire la suite »

L’infrastructure et les écosystèmes le long de la pyramide de Feynman [4] : les systèmes embarqués

Dans le « plus petit », on trouve désormais toutes sortes de systèmes distribués dans les systèmes embarqués.

Les systèmes embarqués sont les systèmes digitaux présents dans les objets « ordinaires » et leur conférant un comportement actif, voire intelligent. Les premiers systèmes embarqués sont nés avec les débuts du PC, lorsque les niveaux de coût ont rendu possible ce genre d’application. Certains objets très chers pouvaient être informatisés assez tôt car ils n’avaient pas de limite de prix à ce niveau, comme les usines, les centrales électriques, etc.

Aujourd’hui les systèmes embarqués tendent à être omniprésents, et représentent une part importante du marché des technologies de l’information.

Ainsi, une voiture comporte aujourd’hui trois infrastructures de systèmes distribués embarqués : pour la partie moteur et propulsion, pour la partie carrosserie, pour la partie habitacle. Lire la suite »

L’infrastructure et les écosystèmes le long de la pyramide de Feynman [3] : les systèmes d’interaction personnelle

Pour interagir avec tous ces systèmes distribués, et dans l’avenir avec les systèmes embarqués et les objets digitaux qui l’entourent, l’utilisateur a besoin de plates-formes d’interaction. On en a aujourd’hui deux principales, le PC et le mobile. La télévision pourrait être recyclée en plate-forme d’interaction fixe, et les tablettes du style iPad constituent peut-être un nouvel outil. La console de jeu ajoute des moyens d’interaction haptique, des accéléromètres liés au geste, etc. Le mobile possède des systèmes propres à la mobilité, comme le GPS, une boussole ou également les accéléromètres.

Dans les voitures, on a également des « écrans » qui marient les propriétés de ces différents appareils, en sus et de plus en plus en substitution des systèmes d’interaction traditionnels. Même le volant ou le jeu de pédales pourraient disparaître, on a des prototypes où ces commandes on été remplacées par des joysticks. Les avions, les systèmes de commande industriels adoptent également de plus en plus ces outils provenant de l’électronique grand public et des jeux. Lire la suite »

L’infrastructure et les écosystèmes le long de la pyramide de Feynman [2] : les infrastructures massivement distribuées

A partir du moment où l’Internet et le web tendaient à être universels, on s’est dit que l’on pouvait s’en servir comme d’une plate-forme d’exécution de services. Pour ce faire, il s’agit de créer une infrastructure au-dessus de l’Internet ou du web tout entiers, mais une infrastructure purement logicielle, qui s’exécute et réutilise les matériels existants et connectés. On construit donc par logiciel des systèmes distribués… au-dessus de systèmes distribués. On retrouve le schéma de répétition fractale de l’universalité de l’infrastructure.

On a souvent du mal à s’imaginer une infrastructure « immatérielle ». Elle consiste en programmes installés sur toutes les ressources de calcul mobilisées dans l’infrastructure qui s’exécutent aux moments opportuns ou en permanence, le plus souvent en concurrence avec les programmes et tâches déjà présents. Ces programmes sont normalement installés de façon volontaire par les propriétaires de ces ressources de calcul, qui doivent d’ailleurs configurer les paramètres de leurs systèmes de sécurité et donner les autorisations nécessaires pour participer à l’infrastructure – sans remettre en cause le niveau de sécurité, les performances ou la fiabilité de leur système.

Plusieurs propositions ont été faites, avec plus ou moins de succès dans la réalisation de leurs objectifs techniques et économiques, et dans leur adoption. Nous décrivons les plus importantes.

Le web

Le web est aujourd’hui universel, et confondu dans la plupart des esprits avec l’Internet. Pourtant, alors que l’Internet a vu ses premiers paquets circuler en 1972 (projet ARPANET démarré en 1969), le web est venu bien après, en 1989. Lire la suite »

L’infrastructure et les écosystèmes le long de la pyramide de Feynman [1] : les grands systèmes centralisés

Supercomputers

En haut de la pyramide, les supercomputers, c’est-à-dire les machines géantes tentant

Le supercpmputer chinois Tianhe-1A1, classé premier fin 2010, 8ème en 2013.

Le supercpmputer chinois Tianhe-1A1, classé premier fin 2010, 8ème en 2013.

d’atteindre les performances maximales possibles à la technologie du moment – et pratiquement sans limite de coût – sont aujourd’hui des systèmes distribués géants, réunissant des dizaines de milliers de serveurs, eux-mêmes composés de dizaines de processeurs, eux-mêmes comportant une dizaine ou plus de cœurs de calcul, pour totaliser des centaines de milliers de cœurs. Les performances sont en 2010 au-delà du petaflop, c’est-à-dire de 1015 opérations flottantes par seconde. Bien sûr la mémoire de ces systèmes est à l’avenant – l’unité est le petaoctet – ainsi d’ailleurs que leur consommation énergétique – aujourd’hui dans les 10 MW pour les plus puissants. On peut trouver la liste des 500 plus puissants supercomputers au monde sur le site http://www.top500.org. La puissance des supercomputers est multipliée empiriquement par mille tous les 11 ans sous l’impulsion de la loi de Moore – le petaflop ayant été franchi en 2008 par le Roadrunner du DoE – US Department of Energy, on devrait ainsi passer à l’exaflop autour de 2019, soit un milliard de milliards d’opérations par secondes ! Lire la suite »

De quoi est fait une infrastructure [3] ? De systèmes mis en réseau : les systèmes distribués…

Qu’est-ce qu’un système distribué ?

Jusqu’à présent nos avons considéré une machine seule, or chacun sait qu’aujourd’hui les nœuds de calcul sont connectés par des réseaux de toutes sortes. Ces réseaux peuvent être très locaux, comme Bluetooth ou les LAN – Local Area Networks – ayant pour support de l’Ethernet, du WiFi ou du CPL[1], ou globaux – on dit WAN, pour Wide Area Network – comme l’Internet à base d’ADSL, de fibre optique ou de réseau sans fil 3G, demain LTE ou WiMax. Sur ces réseaux en tant que supports physiques, on fait circuler de l’information sous forme de paquets en utilisant généralement le protocole de l’Internet, IP – Internet Protocol.

L’Internet, dont il est désormais connu qu’il a été initialement financé par l’armée américaine en 1969 – il s’appelait l’ARPANET – puis utilisé par les universités, a vu son expansion commerciale lancée en 1993 sous l’administration Clinton-Gore. On parlait à l’époque « d’autoroutes de l’information ». En sus des applications de courrier électronique et de transfert de fichiers déjà existantes à l’époque, le fait majeur ayant motivé son décollage a été l’explosion du web à partir de sa création par Tim Berners-Lee en 1991 au CERN, en Suisse. Le web repose aussi sur un protocole, http, et un standard de ce que l’on appelle l’hypertexte, html, et permettent d’échanger du contenu de toute nature, indépendamment des machines supports. Le web est donc une infrastructure logicielle s’exécutant au-dessus de l’infrastructure de l’Internet. Lire la suite »

De quoi est fait une infrastructure [2] ? De logiciel et d’outils logiciels de base…

Le miracle de l’informatique est, si l’on voulait être ironique, que l’on peut réaliser un même système de façon aussi complexe qu’on le souhaite. Evidemment, il n’y aurait pas de gain à cette fuite de la simplicité si elle ne s’accompagnait d’un gain en généralité. Chaque progrès de l’infrastructure correspond à une généralisation de la plate-forme d’exécution et à une extension de ses utilisations potentielles.

Tout d’abord la « machine nue » s’est vite avérée impraticable. Le langage dans lequel le logiciel doit être exprimé (le « langage machine ») est très difficilement appréhendable par l’être humain. On a donc inventé des langages dits « de haut niveau » pour faciliter la tâche du programmeur. Il s’est agi d’assembleurs, qui restent proches de la machine, mais utilisent autre chose que des « 0 » et des « 1 », puis de langages plus évolués, pour lesquels on a conçu des compilateurs et des interpréteurs capables de les exécuter par traduction en langage machine avant ou pendant leur exécution.

L’autre constatation a été qu’il était nécessaire pour tout programme d’introduire de façon répétitive certaines fonctionnalités, qui relevaient de tâches génériques à l’exécution de tout programme – comme la façon dont la machine doit réagir en cas d’erreur, dont elle doit communiquer avec l’extérieur via des périphériques, ou de la façon de structurer la mémoire en fichiers – ou qui facilitaient la gestion de la machine indépendamment des logiciels qui s’exécutent – comme de donner l’accès à plusieurs utilisateurs. On a alors regroupé toutes ces fonctions en un ensemble cohérent et autonome, le système d’exploitation.

Lire la suite »