1. Calcul hétérogène agile: le calcul hétérogène à plate-forme variable et son flux de conception
- Author
-
Chakraborty, Avishek, University of South Australia [Adelaide], University of South Australia, David Kearney, and chakraborty, avishek
- Subjects
[INFO.INFO-AR]Computer Science [cs]/Hardware Architecture [cs.AR] ,[INFO.INFO-AR] Computer Science [cs]/Hardware Architecture [cs.AR] ,Informatique hétérogène ,computer aided design ,Architecture informatique - Conception ,[INFO.INFO-LG] Computer Science [cs]/Machine Learning [cs.LG] ,conception assistée par ordinateur ,Microprocessors -- Design and construction ,heterogeneous computing ,[INFO.INFO-MO]Computer Science [cs]/Modeling and Simulation ,[INFO.INFO-ES] Computer Science [cs]/Embedded Systems ,systèmes embarqués ,[INFO.INFO-LG]Computer Science [cs]/Machine Learning [cs.LG] ,Microprocesseurs - Conception et construction ,[INFO.INFO-DC] Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC] ,embedded systems ,calcul hétérogène ,[INFO.INFO-ES]Computer Science [cs]/Embedded Systems ,[INFO.INFO-MO] Computer Science [cs]/Modeling and Simulation ,[INFO.INFO-DC]Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC] ,Computer architecture -- Design - Abstract
Agile heterogeneous embedded computing refers to the consideration of platform architectures as a first class design variable in deploying applications on heterogeneous platforms, which constitute one or more of the following compute engines: FPGA, GPU and CPU. Design flows for agile heterogeneous computing are in the early phases of development. Few state of the art design flows that consider variable platform architectures have the following drawbacks: (1) restricted template-based representations, which cannot express all possible architectural topologies, (2) limited support for concurrent tasks on all three compute engines and (3) design space exploration approaches indirectly consider variable platform architectures, because they are derived from fixed platform design flows, where different platform architectures are iteratively evaluated without closely considering the application's computational needs. This research explores solutions to these three major issues that have yet to be addressed in agile heterogeneous computing design flows. The solutions to these issues are encapsulated into a new design flow called agile heterogeneous computing flow (AhcFlow) that can support both design space exploration and deployment. In order to realise AhcFlow, a new representation to express variable platform architectures called parameterised platform graph (PPG) is conceived, a new intermediate data structure called augmented synchronous dataflow (ArcSDF) is created and a new design space exploration algorithm called agile mapping and scheduling algorithm (AMS) is developed. PPG is a constraint based representation, which unlike template-based representations has higher expressive capabilities to represent the different topologies of agile heterogeneous computing. ArcSDF is a new dataflow based intermediate data structure, which is built on the well-known synchronous dataflow graphs (SDF) to express the architectural decisions together with the application. ArcSDF extends the capabilities of the dataflow paradigm to incorporate computation resource analysis and capital cost analysis. Due to these extra analysis capabilities, ArcSDF is used within design space exploration. The design space exploration algorithm is AMS that considers the variable platform architecture in a fully integrated way together with mapping and scheduling decisions. A prototype of the new design flow (AhcFlow) has been created and shown to be valid both for an exhaustive number of synthetic test cases and for a large real life embedded multi-object visual tracking application. The new analysis capabilities of ArcSDF have been validated through its integration within the design flow prototype. The prototype also consists of a deployment module, which is used to validate the design space exploration predictions with the actual deployment results. The results from the real life tracking application show that design space exploration estimates closely match the deployment results. The new mapping and scheduling algorithm, that also makes architecture topology decisions, has shown to be competitive with published results of applications implemented manually to hand crafted architectures., L'informatique embarquée hétérogène agile fait référence à la prise en compte des architectures de plate-forme en tant que variable de conception de première classe dans le déploiement d'applications sur des plates-formes hétérogènes, qui constituent un ou plusieurs des moteurs de calcul suivants: FPGA, GPU et CPU. Les flux de conception pour l'informatique hétérogène agile en sont aux premières phases de développement. Peu de flux de conception de pointe qui prennent en compte les architectures de plate-forme variables présentent les inconvénients suivants: (1) des représentations basées sur des modèles restreintes, qui ne peuvent pas exprimer toutes les topologies architecturales possibles, (2) une prise en charge limitée des tâches simultanées sur les trois moteurs de calcul et (3 ) Les approches d'exploration de l'espace de conception considèrent indirectement les architectures de plate-forme variables, car elles sont dérivées de flux de conception de plate-forme fixes, où différentes architectures de plate-forme sont évaluées de manière itérative sans prendre en compte de près les besoins de calcul de l'application.Cette recherche explore des solutions à ces trois problèmes majeurs qui n'ont pas encore été abordés dans les flux de conception informatique hétérogène agile. Les solutions à ces problèmes sont encapsulées dans un nouveau flux de conception appelé flux de calcul hétérogène agile (AhcFlow) qui peut prendre en charge à la fois l'exploration et le déploiement de l'espace de conception. Afin de réaliser AhcFlow, une nouvelle représentation pour exprimer des architectures de plate-forme variables appelée graphique de plate-forme paramétrée (PPG) est conçue, une nouvelle structure de données intermédiaire appelée flux de données synchrone augmenté (ArcSDF) est créée et un nouvel algorithme d'exploration de l'espace de conception appelé cartographie et planification agiles algorithme (AMS) est développé. PPG est une représentation basée sur des contraintes qui, contrairement aux représentations basées sur des modèles, a des capacités expressives plus élevées pour représenter les différentes topologies de l'informatique hétérogène agile. ArcSDF est une nouvelle structure de données intermédiaires basée sur un flux de données, qui est construite sur les graphiques de flux de données synchrones (SDF) bien connus pour exprimer les décisions architecturales avec l'application. ArcSDF étend les capacités du paradigme de flux de données pour incorporer l'analyse des ressources de calcul et l'analyse des coûts d'investissement. En raison de ces capacités d'analyse supplémentaires, ArcSDF est utilisé dans l'exploration de l'espace de conception. L'algorithme d'exploration de l'espace de conception est AMS qui considère l'architecture de plate-forme variable de manière entièrement intégrée avec les décisions de cartographie et de planification.Un prototype du nouveau flux de conception (AhcFlow) a été créé et s'est révélé valable à la fois pour un nombre exhaustif de cas de test synthétiques et pour une grande application de suivi visuel multi-objets embarquée dans la vie réelle. Les nouvelles capacités d'analyse d'ArcSDF ont été validées grâce à son intégration dans le prototype de flux de conception. Le prototype se compose également d'un module de déploiement, qui est utilisé pour valider les prédictions d'exploration de l'espace de conception avec les résultats réels du déploiement. Les résultats de l'application de suivi réel montrent que les estimations de l'exploration spatiale de conception correspondent étroitement aux résultats du déploiement. Le nouvel algorithme de cartographie et de planification, qui prend également les décisions de topologie d'architecture, s'est révélé compétitif avec les résultats publiés des applications implémentées manuellement sur des architectures artisanales.
- Published
- 2020