29 research outputs found

    Scheduling and Buffer Sizing of n-Synchronous Systems: Typing of Ultimately Periodic Clocks in Lucy-n

    Get PDF
    International audienceLucy-n is a language for programming networks of processes communicating through bounded buffers. A dedicated type system, termed a clock calculus, automatically computes static schedules of the processes and the sizes of the buffers between them. In this article, we present a new algorithm which solves the subtyping constraints generated by the clock calculus. The advantage of this algorithm is that it finds schedules for tightly coupled systems. Moreover, it does not overestimate the buffer sizes needed and it provides a way to favor either system throughput or buffer size minimization

    Interactive Programming of Reactive Systems

    No full text
    The language ReactiveML is an extension of the general purpose programming language OCaml with synchronous reactive constructs. It is dedicated to program reactive systems such as video games or simulators. This paper presents rmltop, the ReactiveML counterpart of the OCaml toplevel. This toplevel allows a programmer to interactively write ReactiveML programs which are typechecked, compiled and loaded on the fly. The user can then progressively run concurrent processes and observe the interactions between them. The main strength of rmltop is that all valid ReactiveML expressions are executed in the toplevel with the same semantics and efficiency as in the compiler. This allows to use the ReactiveML toplevel for design and debugging purposes. To illustrate the usefulness of this tool, we present some experiments on dynamic reconfiguration, done with the help of the toplevel. We finally describe an originality of rmltop: being itself a reactive system, it has been implemented in ReactiveML

    Algorithmes parallèles de simulation physique pour la synthèse d'images (application à l'animation de textiles)

    No full text
    Cette thèse combine le calcul haute performance à la réalité virtuelle par son apport de méthodes de calcul parallèle pour l'animation d'objets 3D en synthèse d'image. Son application vise plus particulièrement le domaine de la simulation de textiles par modèles physiques. Les lois fondamentales de la dynamique ont en effet été employées pour modéliser le mouvement de plusieurs objets dans un souci de réalisme. Les modèles employés étant numériquement complexes,le calcul d'une image en séquentiel varie de la seconde à plusieurs minutes suivant la complexité du modèle. L'objectif a été de diminuer ce temps par la parallélisation des algorithmes et l'exécution sur grappes de machines multiprocesseurs afin d'obtenir des animations en temps réel. Différentes méthodes d'intégration des équations du mouvement ont été implantées en parallèle. Dans le cas de l'emploi de méthodes implicites, les opérations coûteuses en calcul proviennent de la résolution de systèmes linéaires par la méthode du Gradient Conjugué impliquant des opérations d'algèbre linéaire de type multiplications de matrices creuses et de vecteurs. Ce projet de thèse a contribué à l'obtention de nouvelles structures algorithmiques parallèles efficaces avec l'obtention d'algorithmesasynchrones. Il a également permis de valider l'approche de l'environnement de programmation parallèle Athapascan (projet INRIA-APACHE)avec la mise au point d'applications avec des contraintes temps réel mou ainsi que le contrôle dynamique de son ordonnanceur. Durant ce projet de thèse, un couplage entre la simulation parallèle de textiles et son affichage utilisant l'environnement de visualisation multi-écrans Net Juggler a également été réalisé en faisant communiquer efficacement ces deux programmes parallèles.GRENOBLE1-BU Sciences (384212103) / SudocNANCY-INRIA Lorraine LORIA (545472304) / SudocSudocFranceF

    Modèle n-synchrone pour la programmation de réseaux de Kahn à mémoire bornée

    No full text
    ORSAY-PARIS 11-BU Sciences (914712101) / SudocSudocFranceF

    Lucy-n~: une extension n-synchrone de Lustre

    Get PDF
    International audienceLes langages synchrones flot de données permettent de programmer des réseaux de processus communicant sans buffers. Pour cela, chaque flot est associé à un type d'horloges, qui indique les instants de présence de valeurs sur le flot. La communication entre deux processus \verb+f+ et \verb+g+ peut être faite sans buffer si le type du flot de sortie de \verb+f+ est égal au type du flot d'entrée de~\verb+g+. Un système de type, le calcul d'horloge, infère des types tels que cette condition est vérifiée. Le modèle n-synchrone a pour but de relâcher ce modèle de programmation en autorisant les communications à travers des buffers de taille bornée. En pratique, cela consiste à introduire une règle de sous-typage dans le calcul d'horloge. Nous avons présenté l'année dernière un article décrivant comment abstraire des horloges pour vérifier la relation de sous-typage. Cette année, nous présentons un langage de programmation n-synchrone~: Lucy-n. Dans ce langage, l'inférence des types d'horloges est paramétrable par l'algorithme de résolution des contraintes de sous-typage. Nous montrons ici un algorithme basé sur les travaux de l'an dernier et comment programmer en Lucy-n à travers l'exemple d'une application de traitement multimédia

    Static Scheduling of Latency Insensitive Designs with Lucy-n

    No full text
    International audienceLucy-n is a data-flow programming language similar to Lustre extended with a buffer operator. It is based on the n-synchronous model which was initially introduced for programming multimedia streaming applications. In this article, we show that Lucy-n is also applicable to model Latency Insensitive Designs (LID). In order to model latency introduced by wires, we add a delay operator. Thanks to this new operator, a LID can be described by a Lucy-n program. Then, the Lucy-n compiler automatically provides static schedules for computation nodes and buffer sizes needed in shell wrappers

    Static Scheduling of Latency Insensitive Designs with Lucy-n

    Get PDF
    International audienceLucy-n is a data-flow programming language similar to Lustre extended with a buffer operator. It is based on the n-synchronous model which was initially introduced for programming multimedia streaming applications. In this article, we show that Lucy-n is also applicable to model Latency Insensitive Designs (LID). In order to model latency introduced by wires, we add a delay operator. Thanks to this new operator, a LID can be described by a Lucy-n program. Then, the Lucy-n compiler automatically provides static schedules for computation nodes and buffer sizes needed in shell wrappers
    corecore