755 research outputs found
Algorithmes évolutionnaires parallèles sur GPU
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
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
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
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
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
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
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
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
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
- …