La haute performance ainsi que la basse consommation d’énergie offertes par lesField-Programmable Gate Arrays (FPGAs) contribuent à leur popularité en tant queaccélérateurs matériels. Cet argument a été soutenu par les intégrations récentes des FPGAs dans des systèmes cloud et centre de données. Toutefois, le potentiel d’une architecture reconfigurable peut être encore optimisé en traitant les FPGAs comme une ressource virtualisée et en les offrant une capacité de multitâche. La solution pour interrompre une tâche sur FPGAs à pour objectif d’effectuer un changement de contexte matériel (hardware context switch) a été un sujet de recherche depuis des nombreuses années. Les travaux précédents ont principalement proposé une stratégie pour extraire le contexte d’une tâche en cours de son exécution d’un FPGA pour offrir la possibilité de sa reprise plus tard. Cependant, la communication tout au long du processus n’a pas reçu autant d’attention.Dans cette thèse, nous étudions la gestion de communication d’une tâche matérielle durant son changement de contexte. Cette gestion de communicationest nécessaire pour garantir la cohérence de la communication d’une tâche dans un système reconfigurable avec la capacité de changement de contexte. Autrement, un changement de contexte matériel est seulement autorisé sous des contraintes restrictifs; il est possible après que les flux de communication soient fini et que toutes les données d’entrées/de sorties sont déjà consommées. De plus, certaines techniques demandent l’homogénéité au sein de la plate-forme pour qu’un changement de contexte matériel puisse se réaliser.Nous présentons içi un mécanisme qui conserve la cohérence de communication durant un changement de contexte matériel dans une architecture reconfigurable. Les données de communication sont gérées avec le contexte de tâche pour assurer leur intégrité. La gestion du contexte et les données de communication suivent un protocole spécifique pour des architectures hétérogènes reconfigurables. Ce protocole permet donc un changement de contexte matériel pendant que la tâche a encore des flux de communication. À partir des expérimentations, nous découvrons que le surcoût de la gestion de communication devient négligeable car notre mécanisme fournit une grande réactivité nécessaire pour l’allocation de tâche de façon préemptive - outre que sa consistance de communication. Enfin, les applications de solution proposée sont présentées dans un prototypage de tâche migration et dans un système utilisant un hyperviseur. / Field-Programmable Gate Arrays (FPGAs) have been gaining popularity as hardware accelerators in heterogeneous architectures thanks to their high performance and low energy consumption. This argument has been supported by the recent integration of FPGA devices in cloud services and data centers. The potential offered by the reconfigurable architectures can still be optimized by treating FPGAs as virtualizable resources and offering them multitasking capability. The solution to preempt a hardware task on an FPGA with the objective of context switching it has been in research for many years. The previous works mainly proposed the strategy to extract the context of a running task from the FPGA to provide the possibility of its resumption at a later time. The communication during the process, on the contrary, has not been receiving much attention.In this work, we study the communication management of a hardware task whileit is being context switched. This communication management is necessary to ensure the consistency in the communication of a task with context switch capability in a reconfigurable system. Otherwise, a hardware context switch can only be allowed under restrictive constraints which may lead to a considerable penalty in performance; context switching a task is possible after the communication flows finish and the input/output data have been consumed. Furthermore, certain techniques demand homogeneity in the platform for a hardware context switch can take place.We present a mechanism which preserves the communication consistency during ahardware context switch in a reconfigurable architecture. The input/output communication data are managed together with the task context to ensure their integrity. The overall management of the hardware task context and communication data follows a dedicated protocol developed for heterogeneous reconfigurable architectures. This protocol thus allows a hardware context switch to take place while the task still has ongoing communication flows on Reconfigurable System-on-Chips (RSoCs). From the experiments, we discover that the overhead due to managing the communication data becomes negligible since our mechanism provides the necessary high responsiveness for preemptive scheduling, besides the consistency in communication. Finally, the applications of the proposed solution are presented in a task migration prototyping and in a hypervisor-based system.
Identifer | oai:union.ndltd.org:theses.fr/2018GREAT088 |
Date | 02 October 2018 |
Creators | Wicaksana, Arief |
Contributors | Grenoble Alpes, Rousseau, Frédéric, Sasongko, Arif |
Source Sets | Dépôt national des thèses électroniques françaises |
Language | English |
Detected Language | French |
Type | Electronic Thesis or Dissertation, Text |
Page generated in 0.0015 seconds