755 research outputs found

    Algorithmes évolutionnaires parallèles sur GPU

    Get PDF
    National audienceLes algorithmes d'optimisation tels que les algorithmes évolutionnaires sont des méthodes efficaces pour résoudre des problèmes complexes en sciences et en industrie. Même si ces heuristiques permettent de réduire de manière significative le temps de calcul de l'exploration de l'espace de recherche d'une solution, ce dernier coût reste exorbitant lorsque de très grandes instances d'un problème sont résolues. Ainsi, l'utilisation du calcul parallèle à base de GPU est requise comme une façon complémentaire d'accélérer la recherche. Dans ce papier, on se concentra ainsi sur leur reconception, leur implémentation et les difficultés associées relatifs au contexte d'exécution du GPU. Les résultats expérimentaux obtenus démontrent l'efficacité des approches proposées et leur capacité d'exploiter pleinement l'architecture du GPU

    Heuristique statique améliorée d'ordonnancement de tâches: impact sur le tri des tâches et sur l'allocation de processeur

    Get PDF
    National audienceL'ordonnancement de tâches est une étape importante dans le prototypage rapide d'applications de traitement d'images sur des systèmes parallèles embarqués. Nous présentons ainsi dans cet article une heuristique statique améliorée d'ordonnancement par liste : d'une part, cette heuristique intègre de nouvelles règles de priorité de tâches, tenant compte de la contention sur les communications entre tâches ; d'autre part, cette heuristique affine l'allocation d'un processeur à une tâche courante, en impactant le choix du processeur par un ordonnancement partiel de la tâche successeur critique (" critical child ") à la tâche courante. Nos résultats expérimentaux soulignent une accélération effective de l'application implantée, dans un contexte de moyenne comme de forte communication

    Heuristique statique améliorée d'ordonnancement de tâches: impact sur le tri des tâches et sur l'allocation de processeur

    Get PDF
    National audienceL'ordonnancement de tâches est une étape importante dans le prototypage rapide d'applications de traitement d'images sur des systèmes parallèles embarqués. Nous présentons ainsi dans cet article une heuristique statique améliorée d'ordonnancement par liste : d'une part, cette heuristique intègre de nouvelles règles de priorité de tâches, tenant compte de la contention sur les communications entre tâches ; d'autre part, cette heuristique affine l'allocation d'un processeur à une tâche courante, en impactant le choix du processeur par un ordonnancement partiel de la tâche successeur critique (" critical child ") à la tâche courante. Nos résultats expérimentaux soulignent une accélération effective de l'application implantée, dans un contexte de moyenne comme de forte communication

    Contribution au calcul sur GPU: considérations arithmétiques et architecturales

    Get PDF
    L’optimisation du calcul passe par une gestion conjointe du matériel et du logiciel. Cette règle se trouve renforcée lorsque l’on aborde le domaine des architectures multicoeurs où les paramètres à considérer sont plus nombreux que sur une architecture superscalaire classique. Ces architectures offrent une grande variété d’unité de calcul, de format de représentation, de hiérarchie mémoire et de mécanismes de transfert de donnée.Dans ce mémoire, nous décrivons quelques-uns de nos résultats obtenus entre 2004 et 2013 au sein de l'équipe DALI de l'Université de Perpignan relatifs à l'amélioration de l’efficacité du calcul dans sa globalité, c'est-à-dire dans la suite d’opérations décrite au niveau algorithmique et exécutées par les éléments architecturaux, en nous concentrant sur les processeurs graphiques.Nous commençons par une description du fonctionnement de ce type d'architecture, en nous attardant sur le calcul flottant. Nous présentons ensuite des implémentations efficaces d'opérateurs arithmétiques utilisant des représentations non-conventionnelles comme l'arithmétique multiprécision, par intervalle, floue ou logarithmique. Nous continuerons avec nos contributions relatives aux éléments architecturaux associés au calcul à travers la simulation fonctionnelle, les bancs de registres, la gestion des branchements ou les opérateurs matériels spécialisés. Enfin, nous terminerons avec une analyse du comportement du calcul sur les GPU relatif à la régularité, à la consommation électrique, à la fiabilisation des calculs ainsi qu'à laprédictibilité

    Quantification du taux d'invalidité d'applications temps réel : une approche géométrique

    No full text
    International audienceCe travail s'intègre dans un projet de conception d'outils d'aide à la spécification d'applications temps-réel à contraintes strictes : il s'agir, lorsqu'une application est invalide, d'identifier les causes de l'invalidité. Nous nous basons sur un modèle géométrique pour les applications temps-réel. Une mesure est définie à partir de ce modèle sur la base d'une distance géométrique. Les systèmes que nous traitons utilisent des ressources critiques et fonctionnent sur des architectures multiprocesseurs. Les tâches sont périodiques, non réentrantes, à départ différés

    Calcul haute performance avec OpenCL sur GPU

    Get PDF
    National audienceL'équipe de recherche MOAIS s'interesse depuis une dizaine d'année au paralellisme de tache. Le programme XKaapi développé par cette équipe à récemment été amélioré pour permettre le calcul sur carte graphique. L'extension à été faite sur CUDA limitant ainsi les calculs sur carte NVIDIA. Une alternative à CUDA, OpenCL, developpé par un consensius permettrait d'exécuter les programmes sur d'autre matériels (Intel Xeon phi, carte graphique AMD...)

    Utilisations des compteurs matériels dans les multiprocesseurs : estimation de l'accélération et contrôle-commande d'exécution

    Get PDF
    Cet article présente des résultats sur l'utilisation des compteurs matériels présents sur les processeurs et pour les machines multiprocesseurs à faible coût. La première utilisation consiste à déduire l'accélération obtenue sur les applications parallèles de l'observation du débit de certains événements. Cette estimation est ensuite utilisée pour piloter un mécanisme de contrôle-commande afin d'augmenter le rendement d'exécution des multiprocesseurs

    Un ordonnanceur flexible pour machines multiprocesseurs hiérarchiques

    Get PDF
    National audienceL'évolution des machines multiprocesseurs vers des architectures de plus en plus hiérarchiques impose, pour en tirer la quintessence, de répartir les flots d'exécution et les données avec une extrême précaution afin de réduire au maximum les accès mémoire non locaux. Les bibliothèques de multithreading actuelles fournissent très peu de fonctionnalités pour exprimer des directives de répartition au niveau applicatif, ce qui contraint les programmeurs à effectuer cette répartition explicitement en fonction de l'architecture sous-jacente, et donc de manière non portable. Dans cet article nous présentons: (1) un modèle permettant au programme d'exprimer dynamiquement la structure du calcul; (2) un ordonnanceur capable d'interpréter cette modélisation afin de prendre de judicieuses décisions de placement hiérarchisé ; (3) une implémentation au sein de la bibliothèque de threads utilisateur Marcel. Une expérimentation a été menée sur une application scientifique exécutée par une machine ccNUMA Bull NovaScale à 16 processeurs Intel Itanium II; les résultats obtenus montrent un gain de 50% par rapport à un ordonnanceur classique et sont comparables à ceux que l'on obtient en effectuant le placement « à la main », ce qui n'est pas portable

    Management of reconfigurable multi-standards ASIP-based receiver

    No full text
    International audienceThe emergence of multiple wireless standards is introducing the need of flexible platforms which are able to self-adapt to various environments depending on the application requirements. Our work lies in the domain of self-adaptive heterogeneous multiprocessor architectures. In this paper, we present our ideas about the management of an ASIP-based multi-standards iterative receiver, which includes the support for turbo-decoding. In this context, the management of a multi-standards receiver provides the services for the self-adaptation mechanisms based on a collect and an analysis of information, a decision making process and a fast reconfiguration of the platform
    • …
    corecore