Spelling suggestions: "subject:"haut niveau"" "subject:"faut niveau""
81 |
Programmation des architectures hiérarchiques et hétérogènes.Hamidouche, Khaled 10 November 2011 (has links) (PDF)
Les architectures de calcul haute performance de nos jours sont des architectures hiérarchiques et hétérogènes: hiérarchiques car elles sont composées d'une hiérarchie de mémoire, une mémoire distribuée entre les noeuds et une mémoire partagée entre les coeurs d'un même noeud. Hétérogènes due à l'utilisation des processeurs spécifiques appelés Accélérateurs tel que le processeur CellBE d'IBM et les CPUs de NVIDIA. La complexité de maîtrise de ces architectures est double. D'une part, le problème de programmabilité: la programmation doit rester simple, la plus proche possible de la programmation séquentielle classique et indépendante de l'architecture cible. D'autre part, le problème d'efficacité: les performances doivent êtres proches de celles qu'obtiendrait un expert en écrivant le code à la main en utilisant des outils de bas niveau. Dans cette thèse, nous avons proposé une plateforme de développement pour répondre à ces problèmes. Pour cela, nous proposons deux outils : BSP++ est une bibliothèque générique utilisant des templates C++ et BSPGen est un framework permettant la génération automatique de code hybride à plusieurs niveaux de la hiérarchie (MPI+OpenMP ou MPI + Cell BE). Basée sur un modèle hiérarchique, la bibliothèque BSP++ prend les architectures hybrides comme cibles natives. Utilisant un ensemble réduit de primitives et de concepts intuitifs, BSP++ offre une simplicité d'utilisation et un haut niveau d' abstraction de la machine cible. Utilisant le modèle de coût de BSP++, BSPGen estime et génère le code hybride hiérarchique adéquat pour une application donnée sur une architecture cible. BSPGen génère un code hybride à partir d'une liste de fonctions séquentielles et d'une description de l'algorithme parallèle. Nos outils ont été validés sur différentes applications de différents domaines allant de la vérification et du calcul scientifique au traitement d'images en passant par la bioinformatique. En utilisant une large sélection d'architecture cible allant de simple machines à mémoire partagée au machines Petascale en passant par les architectures hétérogènes équipées d'accélérateurs de type Cell BE.
|
82 |
L'action de tir à mi-distance en basket-ball : une approche technologiqueMuguet,, Jean-Pierre 15 December 2009 (has links) (PDF)
Cette étude d'une action particulière du basket-ball a été conduite afin d'approfondir les conditions d'élaboration et de fonctionnement d'une démarche technique. Le sujet qui sert de support à cette exploration, le tir à mi-distance, a été choisi à la fois à cause de l'impossibilité de poursuivre un tel objectif en une seule étude pour l'ensemble du jeu, et parce qu'il en est une des actions typiques et néanmoins problématique dans le monde de l'intervention. La nécessité de différer l'opérationnalisation au profit d'un effort pour mieux comprendre la singularité de la technique corporelle étudiée est affirmée. Cet effort relève de la description, par quoi procède la technique, avant d'être un processus de transmission. Il caractérise en partie l'approche technologique. Des images numérisées de séquences de jeu de haut niveau féminin, auquel il est reconnu un statut de pratique de référence très pertinent pour la formation, ont servi de terrain d'étude. Un cadre théorique a été construit à partir du mot action dont les composantes relatives au contexte et au joueur ont été déclinées avec des savoirs et des connaissances scientifiques diverses utilisées comme " outils ". Il a été conçu pour décrire la structure de quelques actions singulières de tirs en matchs. Il a permis d'affiner l'observation en différé et de conduire un entretien avec une joueuse portant sur les mêmes séquences. Ces deux études ont permis de compléter ou de corriger le discours technique en usage, notamment de la littérature spécialisée, dont l'analyse montre qu'il tend à rester cantonné dans des descriptions formelles de gestes. La thèse selon laquelle le tir à mi-distance doit être envisagé comme une action spécifique, distincte des actions de jeu et des autres actions de tirs, se trouve ici confortée. L'ensemble ouvre des perspectives pour la didactique, aussi bien pour la performance que pour l'éducation physique.
|
83 |
Transformations de programmes et optimisations de l'architecture mémoire pour la synthèse de haut niveau d'accélérateurs matérielsPlesco, Alexandru 27 September 2010 (has links) (PDF)
Une grande variété de produits vendus, notamment de télécommunication et multimédia, proposent des fonctionnalités de plus en plus avancées. Celles-ci induisent une augmentation de la complexité de conception. Pour satisfaire un budget de performance et de consommation d'énergie, ces fonctionnalités peuvent être accélérées par l'utilisation d'accélérateurs matériels dédiés. Pour respecter les délais nécessaires de mise sur le marché et le prix de développement, les méthodes traditionnelles de conception de matériel ne sont plus suffisantes et l'utilisation d'outils de synthèse de haut niveau (HLS) est une alternative intéressante. Ces outils sont maintenant plus aboutis et permettent de générer des accélérateurs matériels possédant une structure interne optimisée, grâce à des techniques d'ordonnancement efficaces, de partage des ressources et de génération de machines d'états. Cependant, les interfacer avec le monde extérieur, c'est-à-dire intégrer des accélérateurs matériels générés automatiquement dans une conception complète, avec des communications optimisées pour atteindre le meilleur débit, reste une tâche très ardue, réservée aux concepteurs experts. Le leitmotiv de cette thèse était d'étudier et d'élaborer des stratégies source-à-source pour améliorer la conception de ces interfaces, en essayant d'envisager l'outil HLS comme back-end pour des transformations front-end plus avancées. Dans la première partie de la thèse, comme étude de cas, nous avons conçu à la main, en VHDL, une logique intelligente permettant l'interfaçage d'un accélérateur, calculant la multiplication de deux matrices, généré par l'outil de synthèse MMAlpha. En utilisant des informations sur les dépendances de données, nous avons implanté des techniques de double tampon et de calcul/transfert par bloc (pavage), pour des mémoires locales SRAM de type scratchpad, pour améliorer la réutilisation des données. Ceci a permis d'augmenter de manière significative les performances du système, mais a également exigé un effort important de développement. Nous avons ensuite montré, sur plusieurs applications de type multimédia, avec un autre outil de HLS, Spark, que le même avantage pouvait être obtenu avec une étape préliminaire semi-automatique de transformations source-à-source (ici de C vers C). Pour cela, nous avons utilisé le front-end d'un compilateur avancé, basé sur le compilateur Open64 et l'outil WRaP-IT de transformations polyédriques. Des améliorations significatives ont été présentées, en particulier pour la synthèse de la conversion de l'espace couleur (extrait d'un benchmark de MediaBench II), dont les données étaient transmises via une mémoire cache. Cette étude a démontré l'importance des transformations des boucles comme étape de pré-traitement pour les outils HLS, mais aussi la difficulté de les utiliser en fonction des caractéristiques de l'outil HLS pour exprimer les communications externes. Dans la deuxième partie de la thèse, en utilisant l'outil C2H HLS d'Altera qui peut synthétiser des accélérateurs matériels communiquant avec une mémoire externe DDR-SDRAM, nous avons montré qu'il était possible de restructurer automatiquement le code de l'application, de générer des processus de communication adéquats, écrits entièrement en C, et de les compiler avec C2H, afin que l'application résultante soit hautement optimisée, avec utilisation maximale de la bande passante mémoire. Ces transformations et optimisations, qui combinent des techniques telles que l'utilisation de double tampon, la contraction de tableaux, le pavage, le pipeline logiciel, entre autres, ont été intégrées dans un outil de transformation automatique source-à-source, appelé Chuba et basé sur la représentation du modèle polyédrique. Notre étude montre que ainsi qu'il est possible d'utiliser certains outils HLS comme des optimiseurs de niveau back-end pour les optimisations effectuées au niveau front-end, comme c'est le cas pour la compilation standard où des transformations de haut niveau sont développées en amont des optimiseurs au niveau assembleur. Nous pensons que ceci est la voie à suivre pour que les outils HLS deviennent viables.
|
84 |
Vers le sens des sons: Modélisation sonore et contrôle haut niveauYstad, Solvi 14 September 2010 (has links) (PDF)
Les travaux présentés dans ce document visent à mieux comprendre la relation entre la structure (ou morphologie) acoustique des sons et le sens communiqué par ces derniers. Ils s'appuient sur une approche pluridisciplinaire associant mathématiques, acoustique, traitement du signal, perception et cognition, dans laquelle la synthèse numérique des sons constitue le point central. Ce travail aborde les aspects fondamentaux liés à la compréhension du traitement cognitif et perceptif des sons mais aussi les aspects appliqués où le contrôle évocateur des processus de synthèse joue un rôle privilégié. Les principaux résultats obtenus ont été déclinés suivant deux axes: les sons musicaux et les sons environnementaux et industriels. Dans le cadre des sons musicaux des questions liées à la caractérisation perceptive des instruments de musique ainsi qu'au contrôle exercé par le musicien lors du jeu instrumental ont été traités. On a notamment montré que l'évaluation subjective de notes isolés de sons de piano dépend de l'expertise des sujets et permet difficilement d'évaluer la musicalité de l'instrument. La prise en compte du contexte musical nous a conduit a étudier l'influence du contrôle du musicien sur le son lors de l'interprétation musicale. On a montré que l'instrumentiste contrôle de façon systématique les variations de timbre de l'instrument et que ces variations influent notablement sur l'interprétation musicale. Dans le cadre plus général de sons environnementaux et industriels, on s'est attaché à mieux comprendre les relations entre la structure morphologique des sons et la perception qui en découle. Par une approche « neuro-acoustique » associant imagerie cérébrale et analyses acoustiques, des invariants caractéristiques de certaines catégories sonores ont été identifiés. Ces invariants sont à la base d'un modèle de contrôle « haut niveau » permettant la synthèse de sons à partir d'évocations. Ces résultats nous permettent d'envisager la construction d'un véritable langage de sons basé sur la génération de métaphores sonores.
|
85 |
Vérification semi-formelle et synthèse automatique de PSL vers VHDLOddos, Y. 27 November 2009 (has links) (PDF)
La vérification à base de propriétés (PBV) est devenue un élément essentiel des flots de conception pour supporter la vérification de circuits complexes. Pour de tels composants où les techniques de vérification formelle ne peuvent s'appliquer, la vérification dynamique à base de propriétés connecte au circuit des moniteurs et des générateurs de test synthétisés à partir de propriétés pour construire de manière simple un environnement de test. Durant cette thèse une partie des travaux à consisté à développer une approche de synthèse de propriétés pour la génération de vecteurs de test. Dans ce contexte, les propriétés décrivent l'environnement du circuit sous test. Elles sont synthétisées en générateurs produisant des séquences de test respectant la propriété correspondante. Il est alors possible de spécifier et d'obtenir un modèle pour tout l'environnement du circuit. Alors que notre approche est modulaire, une méthode à base d'automates a été développée en collaboration avec l'université de McGill. La contribution la plus intéressante de cette thèse tiens dans la méthode qui a été mise en place pour synthétiser une spécification temporelle en un circuit correct par construction. Alors que les approches de l'état de l'art ont une complexité polynomiale, la nôtre est linéaire en la spécification. L'outil SyntHorus a été développé pour supporter cette méthode et synthétise en quelques secondes un circuit correct par construction à partir d'une spécification de plusieurs centaines de propriétés. La correction des générateurs et de la méthode de synthèse a été effectuée à l'aide du prouveur de théorème PVS. Les méthodes et outils développés durant cette thèse ont été validés, renforcés et transférés dans l'industrie grâce à plusieurs coopérations (Thalès Group, Dolphin Integration et ST-Microelectronics) et au projet ANR SFINCS.
|
86 |
Langages Applicatifs et Machines Abstraites pour la Couverture de Code StructurelleWang, Philippe 04 October 2012 (has links) (PDF)
Cette thèse présente une étude qui répond à un besoin industriel d'avoir des outils pour aider à la qualité et au respect des processus de développement de logiciels critiques comme ceux du domaine de l'avionique civile. Il s'agit de l'étude de la couverture de code structurelle pour un langage de la famille ML. Dans ce contexte, ML apparaît comme un langage particulièrement riche en constructions de haut-niveau d'abstraction et expressif. Son utilisation est un élément de progrès mais soulève des problèmes d'adaptation des pratiques du génie logiciel classique pour les systèmes critiques. Notamment, la notion de couverture des conditions et des décisions ainsi que les critères de couverture dérivés se complexifient rapidement. Nous donnons alors en première contribution plusieurs sémantiques pour l'interprétation des définitions des conditions et des décisions pour un langage d'expressions de haut-niveau que nous avons complètement formellement défini. Ensuite, nous donnons la sémantique formelle pour une implantation pour la mesure de couverture par réécriture du code source, ce que nous appelons l'instrumentation intrusive. Puis, nous étudions une technique qui ne réécrit pas le code, ce qui permet d'avoir la possibilité d'utiliser le même binaire pour les tests et pour la production. Cette technique, que nous appelons non intrusive, consiste à générer les informations de correspondance entre le code source et le code machine, et éventuellement d'autres informations, pour que l'environnement d'exécution incluant une machine virtuelle puisse enregistrer les traces nécessaires à l'élaboration des rapports de couverture. Enfin, nous comparons ces deux approches, en terme de sémantique, d'utilisation et d'implantation.
|
87 |
Faciliter le développement des applications de robotiqueKchir, Selma 26 June 2014 (has links) (PDF)
L'un des challenges des roboticiens consiste à gérer un grand nombre de variabilités. Ces dernières concernent les concepts liés au matériel et aux logiciels du domaine de la robotique. Par conséquent, le développement des applications de robotique est une tâche complexe. Non seulement, elle requiert la maîtrise des détails de bas niveau du matériel et du logiciel mais aussi le changement du matériel utilisé dans une application entraînerait la réécriture du code de celle-ci. L'utilisation de l'ingénierie dirigée par les modèles dans ce contexte est une voie prometteuse pour (1) gérer les problèmes de dépendance de bas niveau des applications des détails de bas niveau à travers des modèles stables et (2) faciliter le développement des applications à travers une génération automatique de code vers des plateformes cibles. Les langages de modélisation spécifiques aux domaines mettent en oeuvre les techniques de l'ingénierie dirigée par les modèles afin de représenter les concepts du domaine et permettre aux experts de celui-ci de manipuler des concepts qu'ils ont l'habitude d'utiliser. Cependant, ces concepts ne sont pas suffisants pour représenter tous les aspects d'une application car ils très généraux. Il faudrait alors s'appuyer sur une démarche pour extraire des abstractions à partir de cas d'utilisations concrets et ainsi définir des abstractions ayant une sémantique opérationnelle. Le travail de cette thèse s'articule autour de deux axes principaux. Le premier axe concerne la contribution à la conception d'un langage de modélisation spécifique au domaine de la robotique mobile (RobotML). Nous extrayons à partir d'une ontologie du domaine les concepts que les roboticiens ont l'habitude d'utiliser pour la définition de leurs applications. Ces concepts sont ensuite représentés à travers une interface graphique permettant la représentation de modèles afin d'assurer une facilité d'utilisation pour les utilisateurs de RobotML. On offre ainsi la possibilité aux roboticiens de représenter leurs scénarios dans des modèles stables et indépendants des plateformes cibles à travers des concepts qu'ils ont l'habitude de manipuler. Une génération de code automatique à partir de ces modèles est ensuite possible vers une ou plusieurs plateformes cibles. Cette contribution est validée par la mise en oeuvre d'un scénario aérien dans un environnement inconnu proposé par l'ONERA. Le deuxième axe de cette thèse tente de définir une approche pour rendre les algorithmes résistants aux changements des détails de ba niveau. Notre approche prend en entrée la description d'une tâche de robotique et qui produit : un ensemble d'abstractions non algorithmiques représentant des requêtes sur l'environnment y compris le robot ou des actions de haut niveau , un ensemble d'abstractions algorithmiques encapsulant un ensemble d'instructions permettant de réaliser une sous-tâche de la tâche étudiée , algorithme générique configurable défini en fonction de ces abstractions. Ainsi, l'impact du changement du matériel et des stratégies définies dans les sous-tâches n'est pas très important. Il suffit d'adapter l'implantation de ces abstractions sans avoir à modifier l'algorithme générique. Cette approche est validée sur six variantes d'une famille d'algorithmes de navigation appelée Bug.
|
88 |
Identification d'opérateurs spécifiques pour la synthèse de haut niveauXiao, Chenglong 08 November 2012 (has links) (PDF)
Il est de plus en plus fréquent de faire appel à des opérateurs spécifiques en conception de circuits. Les opérateurs spécifiques peuvent être mis en oeuvre par des unités matérielles dédiées, en vue de réduire la taille du code, d'améliorer les performances et de réduire la surface du circuit. Dans cette thèse, nous proposons un flot de conception basé sur l'identification d'opérateurs spécifiques pour la synthèse de haut niveau. Les points clés de ce flot de conception sont l'énumération automatique et la sélection des opérateurs spécifiques à partir d'un code de l'application de haut niveau et la re-génération du code source intégrant les opérateurs spécifiques sélectionnés. Contrairement aux approches proposées précédemment, notre flot de conception est adaptable et est indépendant des outils de synthèse de haut niveau (il ne nécessite pas d'intervenir sur les algorithmes d'ordonnancement et de projection des outils de synthèse de haut niveau). Les résultats expérimentaux montrent que notre approche permet de réduire la surface du circuit de 19% en moyenne, et jusqu'à 37% dans certains cas, par rapport à une synthèse de haut niveau traditionnelle. La latence du circuit est réduite en moyenne de 22%, et atteint jusqu'à 59%. De plus, la taille du code est réduite de 74% en moyenne.
|
89 |
Méthode de modélisation et de raffinement pour les systèmes hétérogènes. Illustration avec le langage System C-AMSPaugnat, Franck 25 October 2012 (has links) (PDF)
Les systèmes sur puces intègrent aujourd'hui sur le même substrat des parties analogiques et des unités de traitement numérique. Tandis que la complexité de ces systèmes s'accroissait, leur temps de mise sur le marché se réduisait. Une conception descendante globale et coordonnée du système est devenue indispensable de façon à tenir compte des interactions entre les parties analogiques et les partis numériques dès le début du développement. Dans le but de répondre à ce besoin, cette thèse expose un processus de raffinement progressif et méthodique des parties analogiques, comparable à ce qui existe pour le raffinement des parties numériques. L'attention a été plus particulièrement portée sur la définition des niveaux analogiques les plus abstraits et à la mise en correspondance des niveaux d'abstraction entre parties analogiques et numériques. La cohérence du raffinement analogique exige de détecter le niveau d'abstraction à partir duquel l'utilisation d'un modèle trop idéalisé conduit à des comportements irréalistes et par conséquent d'identifier l'étape du raffinement à partir de laquelle les limitations et les non linéarités aux conséquences les plus fortes sur le comportement doivent être introduites. Cette étape peut être d'un niveau d'abstraction élevé. Le choix du style de modélisation le mieux adapté à chaque niveau d'abstraction est crucial pour atteindre le meilleur compromis entre vitesse de simulation et précision. Les styles de modélisations possibles à chaque niveau ont été examinés de façon à évaluer leur impact sur la simulation. Les différents modèles de calcul de SystemC-AMS ont été catégorisés dans cet objectif. Les temps de simulation obtenus avec SystemC-AMS ont été comparés avec Matlab Simulink. L'interface entre les modèles issus de l'exploration d'architecture, encore assez abstraits, et les modèles plus fin requis pour l'implémentation, est une question qui reste entière. Une bibliothèque de composants électroniques complexes décrits en SystemC-AMS avec le modèle de calcul le plus précis (modélisation ELN) pourrait être une voie pour réussir une telle interface. Afin d'illustrer ce que pourrait être un élément d'une telle bibliothèque et ainsi démontrer la faisabilité du concept, un modèle d'amplificateur opérationnel a été élaboré de façon à être suffisamment détaillé pour prendre en compte la saturation de la tension de sortie et la vitesse de balayage finie, tout en gardant un niveau d'abstraction suffisamment élevé pour rester indépendant de toute hypothèse sur la structure interne de l'amplificateur ou la technologie à employer.
|
90 |
Implantation matérielle de chiffrements homomorphiques / Hardware implementation of homomorphic encryptionMkhinini, Asma 14 December 2017 (has links)
Une des avancées les plus notables de ces dernières années en cryptographie est sans contredit l’introduction du premier schéma de chiffrement complètement homomorphe par Craig Gentry. Ce type de système permet de réaliser des calculs arbitraires sur des données chiffrées, sans les déchiffrer. Cette particularité permet de répondre aux exigences de sécurité et de protection des données, par exemple dans le cadre en plein développement de l'informatique en nuage et de l'internet des objets. Les algorithmes mis en œuvre sont actuellement très coûteux en temps de calcul, et généralement implantés sous forme logicielle. Les travaux de cette thèse portent sur l’accélération matérielle de schémas de chiffrement homomorphes. Une étude des primitives utilisées par ces schémas et la possibilité de leur implantation matérielle est présentée. Ensuite, une nouvelle approche permettant l’implantation des deux fonctions les plus coûteuses est proposée. Notre approche exploite les capacités offertes par la synthèse de haut niveau. Elle a la particularité d’être très flexible et générique et permet de traiter des opérandes de tailles arbitraires très grandes. Cette particularité lui permet de viser un large domaine d’applications et lui autorise d’appliquer des optimisations telles que le batching. Les performances de notre architecture de type co-conception ont été évaluées sur l’un des cryptosystèmes homomorphes les plus récents et les plus efficaces. Notre approche peut être adaptée aux autres schémas homomorphes ou plus généralement dans le cadre de la cryptographie à base de réseaux. / One of the most significant advances in cryptography in recent years is certainly the introduction of the first fully homomorphic encryption scheme by Craig Gentry. This type of cryptosystem allows performing arbitrarily complex computations on encrypted data, without decrypting it. This particularity allows meeting the requirements of security and data protection, for example in the context of the rapid development of cloud computing and the internet of things. The algorithms implemented are currently very time-consuming, and most of them are implemented in software. This thesis deals with the hardware acceleration of homomorphic encryption schemes. A study of the primitives used by these schemes and the possibility of their hardware implementation is presented. Then, a new approach allowing the implementation of the two most expensive functions is proposed. Our approach exploits the high-level synthesis. It has the particularity of being very flexible and generic and makes possible to process operands of arbitrary large sizes. This feature allows it to target a wide range of applications and to apply optimizations such as batching. The performance of our co-design was evaluated on one of the most recent and efficient homomorphic cryptosystems. It can be adapted to other homomorphic schemes or, more generally, in the context of lattice-based cryptography.
|
Page generated in 0.0366 seconds