Search engine for discovering works of Art, research articles, and books related to Art and Culture
ShareThis
Javascript must be enabled to continue!

Efficient scheduling of applications onto cloud FPGAs

View through CrossRef
Ordonnancement efficace des applications sur cloud FPGAs Cette thèse a été faite à Télécom Paris et a été financée par Nokia Bell Labs France. Les contributions de la thèse trouvent leur motivation d'une part dans l'usage croissant d'accélérateurs matériel, comme les FPGAs pour décharger les processeurs de fonctions complexes. D'autre part, ces accélérateurs sont de plus en plus intégrés dans des centre de calculs ("cloud") [1][2]. Ces FPGAs peuvent être loués aux utilisateurs, et leur coût d'utilisation dépend alors de la durée allouée. Ainsi, il devient intéressant de mettre en place des techniques permettant de minimiser le temps d'exécution des applications. Dans cette thèse, nous considérons des applications "flots de données", c'est à dire qu'une tâche attend des données d'une tâche précédente avant de s'exécuter, et produit des données en sortie qui sont utilisées en entrée d'autres tâches. Nous prenons aussi comme hypothèse que ces applications sont pré-caractérisées par leur temps d'exécution sur FPGA ainsi que par les éléments matériels dont elles ont un besoin exclusif sur le FPGA (par exemple : les éléments logiques). Il existe déjà des travaux pour choisir un bon ordonnancement de tâches sur FPGA. Malheureusement, ces derniers utilisent une recherche exhaustive de la meilleur solution, ce qui est très coûteux en temps de calcul, soit ils reposent sur des heuristiques rapides mais dont la solution produite en en règle générale assez éloignée de la solution optimale. De nombreux travaux considèrent aussi des modèles de FPGA trop abstraits : par exemple, le FPGA est modélisé uniquement sous la forme d'un ensemble d'éléments logiques, omettant par exemple les DSPs intégrés aux FPGAs, rendant ainsi la solution calculée éventuellement non utilisable sur un FPGA (concret).La solution que nous proposons dans notre thèse repose sur une modélisation plus réaliste des FPGAs et sur une nouvelle heuristique d'ordonnancement. Cette dernière est itérative sur le graphe : elle extrait du graphe de tâches  la tâche les plus complexes en termes de temps de calcul, puis utilise un système d'évaluation pour identifier les tâches les plus pertinentes à grouper avec la tâche la plus complexe. Notre évaluation effectuée sur un grand nombre de graphes d'applications fictives montre que notre heuristique est tout aussi rapide qu'une autre heuristique de référence, tout en offrant de meilleurs résultats. De plus, notre contribution a été intégrée à un environnement orienté modèles pour la conception de systèmes embarqués. De plus, nous dressons des perspectives intéressants pour l'utilisation de notre heuristique dans d'autres contextes.Références:[1] A. M. Caulfield et al., "A cloud-scale acceleration architecture," 2016 49th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO), Taipei, 2016, pp. 1-13, doi: 10.1109/MICRO.2016.7783710[2] Amazon Web Services Elastic Compute Cloud, https://docs.aws.amazon.com/ec2/index.html?nc2=h_ql_doc_ec2[3] Matteo Bertolino, Andrea Enrici, Renaud Pacalet, Ludovic Apvrille. Efficient Scheduling of FPGAs for Cloud Data Center Infrastructures. Euromicro DSD 2020, Aug 2020, Portorož, Slovenia. Proceedings will be published on IEEExplore, paper available on HAL of Télécom Paris: https://hal.telecom-paris.fr/hal-02894662v1
Agence Bibliographique de l'Enseignement Supérieur
Title: Efficient scheduling of applications onto cloud FPGAs
Description:
Ordonnancement efficace des applications sur cloud FPGAs Cette thèse a été faite à Télécom Paris et a été financée par Nokia Bell Labs France.
Les contributions de la thèse trouvent leur motivation d'une part dans l'usage croissant d'accélérateurs matériel, comme les FPGAs pour décharger les processeurs de fonctions complexes.
D'autre part, ces accélérateurs sont de plus en plus intégrés dans des centre de calculs ("cloud") [1][2].
Ces FPGAs peuvent être loués aux utilisateurs, et leur coût d'utilisation dépend alors de la durée allouée.
Ainsi, il devient intéressant de mettre en place des techniques permettant de minimiser le temps d'exécution des applications.
Dans cette thèse, nous considérons des applications "flots de données", c'est à dire qu'une tâche attend des données d'une tâche précédente avant de s'exécuter, et produit des données en sortie qui sont utilisées en entrée d'autres tâches.
Nous prenons aussi comme hypothèse que ces applications sont pré-caractérisées par leur temps d'exécution sur FPGA ainsi que par les éléments matériels dont elles ont un besoin exclusif sur le FPGA (par exemple : les éléments logiques).
Il existe déjà des travaux pour choisir un bon ordonnancement de tâches sur FPGA.
Malheureusement, ces derniers utilisent une recherche exhaustive de la meilleur solution, ce qui est très coûteux en temps de calcul, soit ils reposent sur des heuristiques rapides mais dont la solution produite en en règle générale assez éloignée de la solution optimale.
De nombreux travaux considèrent aussi des modèles de FPGA trop abstraits : par exemple, le FPGA est modélisé uniquement sous la forme d'un ensemble d'éléments logiques, omettant par exemple les DSPs intégrés aux FPGAs, rendant ainsi la solution calculée éventuellement non utilisable sur un FPGA (concret).
La solution que nous proposons dans notre thèse repose sur une modélisation plus réaliste des FPGAs et sur une nouvelle heuristique d'ordonnancement.
Cette dernière est itérative sur le graphe : elle extrait du graphe de tâches  la tâche les plus complexes en termes de temps de calcul, puis utilise un système d'évaluation pour identifier les tâches les plus pertinentes à grouper avec la tâche la plus complexe.
Notre évaluation effectuée sur un grand nombre de graphes d'applications fictives montre que notre heuristique est tout aussi rapide qu'une autre heuristique de référence, tout en offrant de meilleurs résultats.
De plus, notre contribution a été intégrée à un environnement orienté modèles pour la conception de systèmes embarqués.
De plus, nous dressons des perspectives intéressants pour l'utilisation de notre heuristique dans d'autres contextes.
Références:[1] A.
M.
Caulfield et al.
, "A cloud-scale acceleration architecture," 2016 49th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO), Taipei, 2016, pp.
1-13, doi: 10.
1109/MICRO.
2016.
7783710[2] Amazon Web Services Elastic Compute Cloud, https://docs.
aws.
amazon.
com/ec2/index.
html?nc2=h_ql_doc_ec2[3] Matteo Bertolino, Andrea Enrici, Renaud Pacalet, Ludovic Apvrille.
Efficient Scheduling of FPGAs for Cloud Data Center Infrastructures.
Euromicro DSD 2020, Aug 2020, Portorož, Slovenia.
Proceedings will be published on IEEExplore, paper available on HAL of Télécom Paris: https://hal.
telecom-paris.
fr/hal-02894662v1.

Related Results

CLOUD COMPUTING - NAVIGATING THE DIGITAL SKY
CLOUD COMPUTING - NAVIGATING THE DIGITAL SKY
“Cloud Computing – Navigating the Digital Sky” is an extensive guide designed to provide a thorough understanding of cloud computing, an essential technology in today’s digital age...
Hybrid Cloud Scheduling Method for Cloud Bursting
Hybrid Cloud Scheduling Method for Cloud Bursting
In the paper, we consider the hybrid cloud model used for cloud bursting, when the computational capacity of the private cloud provider is insufficient to deal with the peak number...
FPGAs in The Cloud
FPGAs in The Cloud
As cloud computing grows,  the types of computational hardware available in the cloud are diversifying. Field Programmable Gate Arrays (FPGAs) are a relatively new addition to high...
Workflow Scheduling Based on Mobile Cloud Computing Machine Learning
Workflow Scheduling Based on Mobile Cloud Computing Machine Learning
In recent years, cloud workflow task scheduling has always been an important research topic in the business world. Cloud workflow task scheduling means that the workflow tasks subm...
Scheduling under Open stack – The Current State and Future Enhancements
Scheduling under Open stack – The Current State and Future Enhancements
Cloud computing is being heavily used for implementing different kinds of applications. Many of the client applications are being migrated to cloud for the reasons of cost and e...
Reinforcement Learning-Based Framework for Optimal Task Scheduling in Cloud Computing
Reinforcement Learning-Based Framework for Optimal Task Scheduling in Cloud Computing
Cloud computing enables the execution of large-scale computing tasks in a pay-per-use manner, allowing users worldwide to submit diverse workloads to cloud infrastructures. In this...
AI-driven zero-touch orchestration of edge-cloud services
AI-driven zero-touch orchestration of edge-cloud services
(English) 6G networks demand orchestration systems capable of managing thousands of distributed microservices under sub-millisecond latency constraints. Traditional centralized app...
Advancing Medical Technology Using FPGAs
Advancing Medical Technology Using FPGAs
Field Programmable Gate Arrays (FPGAs) have dramatically changed the design of medical devices in the past decade. FPGAs offer the flexibility of writing software on a standard mic...

Back to Top