Modélisation et programmation d'ordinateurs amorphes

Collection

Informatique

Citation

Valvassori, Moïse, “Modélisation et programmation d'ordinateurs amorphes,” Bibliothèque numérique Paris 8, accessed July 7, 2020, https://octaviana.fr/document/158471954.

About

Nous présentons des méthodes nouvelles de configurations des ordinateurs dits amorphes qui les doteront de capacités de duplications et d’évolutions. Inspirés par leurs aspects auto-organisationnels, notamment lors de leur embryogenèse, nous appliquerons nos méthodes de configurations en fonction de calculs spécialisés. Notre recherche comporte trois contributions : Un simulateur d’ordinateurs amorphes. Un ordinateur amorphe est un ensemble de processeurs élémentaires statiques, spatialement distribués et communiquant sur de courtes distances de manière omnidirectionnelle avec leurs voisinages. Les éléments de calcul contiennent tous le même programme et leurs capacités de calculs et de stockages sont supposées faibles. Nous avons réalisé le simulateur d’ordinateurs amorphes le plus véloce à l’heure actuelle. Nous simulons ainsi des ordinateurs amorphes composés de plus de éléments de calcul. -Un langage pour la programmation amorphe bas niveau orienté aspect et composant ainsi que son compilateur. Nous appelons Tical ce langage de programmation. La programmation d’un ordinateur amorphe consiste à spécialiser les éléments de calcul au début de l’exécution du programme afin de distribuer les informations et la puissance de calcul. Notre approche de la programmation amorphe est inspirée de la biologie cellulaire et de la biologie du développement. Nous avons commencé par explorer un modèle multi-agents de P-systems (calcul par membranes) à l’aide de la plate-forme de simulation Fungus que nous avons réalisé à cet effet. À partir des enseignements de cette expérience, nous développons Tical, notre langage dédié. Il découpe le programme en une bibliothèque de composants (réutilisables). Les différentes facettes d’un programme amorphe y sont représentées par des aspects : initialisation, réaction aux messages, réaction à certains états, programme traditionnel. Le programme ainsi exprimé est compilé vers un programme C équivalent. Les algorithmes de bas niveau implémentés à l’aide de ce langage sont : création de gradient, élection de leader, agrégation et propagation d’informations. -Trois primitives haut niveau de la machine abstraite Blob. Nous proposons une implémentation des trois primitives de la machine abstraite Blob dans notre langage. Une machine abstraite Blob est une machine parallèle abstraite s’organisant spatialement pour y effectuer ses calculs. Un blob est alors un groupe d’éléments de calcul. Les blobs sont organisés hiérarchiquement et peuvent être liés entre eux. Les primitives de haut niveau que nous développons comprennent la constitution d’un blob à partir d’éléments de calcul dispersés, la création de canaux de communication et la duplication d’un blob en deux blobs. Toutes ces implémentations sont inspirées de la biologie du développement : rupture de symétrie par des gradients, chimiotaxie et mitose.

We present new methods of configurations of computers said amorphous to equip them of capabilities of duplication and developments. Inspired by their self-organizational aspects, especially during their embryonic development, we apply our methods of configurations on specialized calculations. Our research have three contributions : An amorphous computer simulator. An amorphous computer is a set of static elementary processors, spatially distributed and whose omnidirectionally communicate over short distances with their neighborhoods. All the computing elements contain the same program and their computing and storage resources are assumed low. We have build the fastest amorphous computer simulator at the moment. We simulate amorphous computers made of more than processing elements. -A low level aspect and component oriented language for amorphous programming and its compiler. We call this programming language Tical. Programming a amorphous computer is to specialize their computing elements when the program starts in order to distribute the computing power and the data. Our approach to amorphous programming is inspired by biology and cell biology development. We began by exploring a multi-agent model of P-systems (membrane computing) using the Fungus simulation platform. Learning from this experience, we develop Tical, our domain specific language. It partitions the program in a library of (reusable) components . The concerns of an amorphous program are represented by aspects : initialization, messages handling, reaction to some states, the conventional program. Tical programs compile into a equivalent C program. The low-level algorithms implemented in this language are : gradient generation, leader election, aggregation and data propagation. -Three high-level primitives of the Blob abstract machine. We propose an implementation three primitives of the Blob abstract machine in our language. An Blob abstract machine is an abstract parallel machine spatially organized to perform its calculations. A blob is a group of computing elements. The blobs are organized hierarchically and may be linked. The high-level primitives are formation of a blob from dispersed computing elements, the creation of communication channels and duplication of a blob into two blobs. All these implementations are inspired from developmental biology : symmetry breaking by gradients, chemotaxis and mitosis.

Subject

Multiprogrammation Bioinformatique Traitement réparti Compilation (informatique) Langages de programmation

Creator

Valvassori, Moïse

Contributor

Ali Chérif, Arab (sous la direction de)

Source

Paris 8, BU - Saint-Denis, Magasin 2, TH2949

Date

2009

Identifier

158471954

Is Replaced By

2009PA083325

License

Toute reproduction même partielle est interdite sans accord exprès de l'auteur

Index

Informatique

Domain (Dewey)

004 Traitement des données. Informatique. Généralités. Dictionnaires