21 |
KerA : Un Système Unifié d'Ingestion et de Stockage pour le Traitement Efficace du Big Data : Un Système Unifié d'Ingestion et de Stockage pour le Traitement Efficace du Big Data / KerA : A Unified Ingestion and Storage System for Scalable Big Data ProcessingMarcu, Ovidiu-Cristian 18 December 2018 (has links)
Le Big Data est maintenant la nouvelle ressource naturelle. Les architectures actuelles des environnements d'analyse des données massives sont constituées de trois couches: les flux de données sont acquis par la couche d’ingestion (e.g., Kafka) pour ensuite circuler à travers la couche de traitement (e.g., Flink) qui s’appuie sur la couche de stockage (e.g., HDFS) pour stocker des données agrégées ou pour archiver les flux pour un traitement ultérieur. Malheureusement, malgré les bénéfices potentiels apportés par les couches spécialisées (e.g., une mise en oeuvre simplifiée), déplacer des quantités importantes de données à travers ces couches spécialisées s’avère peu efficace: les données devraient être acquises, traitées et stockées en minimisant le nombre de copies. Cette thèse propose la conception et la mise en oeuvre d’une architecture unifiée pour l’ingestion et le stockage de flux de données, capable d'améliorer le traitement des applications Big Data. Cette approche minimise le déplacement des données à travers l’architecture d'analyse, menant ainsi à une amélioration de l’utilisation des ressources. Nous identifions un ensemble de critères de qualité pour un moteur dédié d’ingestion des flux et stockage. Nous expliquons l’impact des différents choix architecturaux Big Data sur la performance de bout en bout. Nous proposons un ensemble de principes de conception d’une architecture unifiée et efficace pour l’ingestion et le stockage des données. Nous mettons en oeuvre et évaluons le prototype KerA dans le but de gérer efficacement divers modèles d’accès: accès à latence faible aux flux et/ou accès à débit élevé aux flux et/ou objets. / Big Data is now the new natural resource. Current state-of-the-art Big Data analytics architectures are built on top of a three layer stack:data streams are first acquired by the ingestion layer (e.g., Kafka) and then they flow through the processing layer (e.g., Flink) which relies on the storage layer (e.g., HDFS) for storing aggregated data or for archiving streams for later processing. Unfortunately, in spite of potential benefits brought by specialized layers (e.g., simplified implementation), moving large quantities of data through specialized layers is not efficient: instead, data should be acquired, processed and stored while minimizing the number of copies. This dissertation argues that a plausible path to follow to alleviate from previous limitations is the careful design and implementation of a unified architecture for stream ingestion and storage, which can lead to the optimization of the processing of Big Data applications. This approach minimizes data movement within the analytics architecture, finally leading to better utilized resources. We identify a set of requirements for a dedicated stream ingestion/storage engine. We explain the impact of the different Big Data architectural choices on end-to-end performance. We propose a set of design principles for a scalable, unified architecture for data ingestion and storage. We implement and evaluate the KerA prototype with the goal of efficiently handling diverse access patterns: low-latency access to streams and/or high throughput access to streams and/or objects.
|
22 |
Efficient support for data-intensive scientific workflows on geo-distributed clouds / Support pour l'exécution efficace des workflows scientifiques à traitement intensif de données sur les cloud géo-distribuésPineda Morales, Luis Eduardo 24 May 2017 (has links)
D’ici 2020, l’univers numérique atteindra 44 zettaoctets puisqu’il double tous les deux ans. Les données se présentent sous les formes les plus diverses et proviennent de sources géographiquement dispersées. L’explosion de données crée un besoin sans précédent en terme de stockage et de traitement de données, mais aussi en terme de logiciels de traitement de données capables d’exploiter au mieux ces ressources informatiques. Ces applications à grande échelle prennent souvent la forme de workflows qui aident à définir les dépendances de données entre leurs différents composants. De plus en plus de workflows scientifiques sont exécutés sur des clouds car ils constituent une alternative rentable pour le calcul intensif. Parfois, les workflows doivent être répartis sur plusieurs data centers. Soit parce qu’ils dépassent la capacité d’un site unique en raison de leurs énormes besoins de stockage et de calcul, soit car les données qu’ils traitent sont dispersées dans différents endroits. L’exécution de workflows multisite entraîne plusieurs problèmes, pour lesquels peu de solutions ont été développées : il n’existe pas de système de fichiers commun pour le transfert de données, les latences inter-sites sont élevées et la gestion centralisée devient un goulet d’étranglement. Cette thèse présente trois contributions qui visent à réduire l’écart entre les exécutions de workflows sur un seul site ou plusieurs data centers. Tout d’abord, nous présentons plusieurs stratégies pour le soutien efficace de l’exécution des workflows sur des clouds multisite en réduisant le coût des opérations de métadonnées. Ensuite, nous expliquons comment la manipulation sélective des métadonnées, classées par fréquence d’accès, améliore la performance des workflows dans un environnement multisite. Enfin, nous examinons une approche différente pour optimiser l’exécution de workflows sur le cloud en étudiant les paramètres d’exécution pour modéliser le passage élastique à l’échelle. / By 2020, the digital universe is expected to reach 44 zettabytes, as it is doubling every two years. Data come in the most diverse shapes and from the most geographically dispersed sources ever. The data explosion calls for applications capable of highlyscalable, distributed computation, and for infrastructures with massive storage and processing power to support them. These large-scale applications are often expressed as workflows that help defining data dependencies between their different components. More and more scientific workflows are executed on clouds, for they are a cost-effective alternative for intensive computing. Sometimes, workflows must be executed across multiple geodistributed cloud datacenters. It is either because these workflows exceed a single site capacity due to their huge storage and computation requirements, or because the data they process is scattered in different locations. Multisite workflow execution brings about several issues, for which little support has been developed: there is no common ile system for data transfer, inter-site latencies are high, and centralized management becomes a bottleneck. This thesis consists of three contributions towards bridging the gap between single- and multisite workflow execution. First, we present several design strategies to eficiently support the execution of workflow engines across multisite clouds, by reducing the cost of metadata operations. Then, we take one step further and explain how selective handling of metadata, classified by frequency of access, improves workflows performance in a multisite environment. Finally, we look into a different approach to optimize cloud workflow execution by studying some parameters to model and steer elastic scaling.
|
23 |
Réseaux domestiques et mobiles : Mesures,analyses, et modèles / Domestic and mobile networks Measurements,analyses, and patternsReggani, Ahlem 07 January 2014 (has links)
Cette thèse est structurée autour de contributions dans les domaines des réseaux domestiques et mobiles. Dans le contexte des réseaux domestiques, nous nous occupons à la fois de la caractérisation du trafic et de la dégradation des performances des applications. Dans le cas des réseaux mobiles, nous sommes intéressés par comprendre la relation entre la technologie sans fil et les opportunités de contact entre les nœuds mobiles. Nous résumons les principales contributions de cette thèse dans ce qui suit. Partie I (Optimisation des performances des applications dans les réseaux domestiques). L?augmentation du taux d'accès à Internet à la maison conduit à plus de populations avec des réseaux domestiques. Un réseau domestique connecte plusieurs appareils à l'internet permettant aux différents membres d'un ménage de partager l'accès à Internet et aux ressources du réseau local. Par conséquent, les applications fonctionnant en parallèle peuvent interférer les unes avec les autres. Par exemple, les enfants peuvent jouer à des jeux en ligne ralentissant la navigation sur le web de leurs parents. Le premier objectif de cette thèse est de contrôler l'utilisation des ressources du réseau domestique afin d'optimiser la performance des applications concurrentes. La passerelle domestique est responsable de la connexion du réseau domestique au reste de l'Internet. Parce que la passerelle a une vue d'ensemble de tout le trafic en provenance et vers le réseau domestique, elle est le point de départ idéal pour l'optimisation des applications. Dans cette thèse, nous proposons un système qui fonctionne sur la passerelle domestique pour détecter des dégradations de performances et optimiser l'allocation des ressources pour obtenir les meilleures performances des applications. En même temps, les passerelles résidentielles classiques ne comportent aucun mécanisme pour garantir une performance optimale aux applications. Une autre contribution de cette thèse est donc de proposer une approche d'optimisation des performances des applications pour les réseaux domestiques. En particulier, nous étudions la faisabilité du suivi des performances des applications sur les passerelles résidentielles. Nous montrons que, bien que la passerelle domestique a des ressources limitées, elle a encore la capacité de faire plus que simplement la transmission des paquets. Elle peut recueillir et exporter toutes les informations nécessaires pour effectuer notre méthode d'optimisation des performances. Partie II (Reproduction de traces de mobilité). La meilleure façon d'analyser ou de valider un protocole ou même le choix de conception dans les réseaux tolérants aux perturbations est à travers un déploiement réel. Néanmoins, en raison des difficultés de mise en œuvre et même de coûts financiers, I seulement quelques expérimentations ont été rapportées dans la littérature. En conséquence, plusieurs travaux s'appuient toujours sur des modèles de mobilité synthétiques. Alors que les modèles de mobilité synthétiques sont utiles pour isoler les paramètres spécifiques d'une solution ou aider à enquêter sur l'évolutivité d'un système, ils ne peuvent pas toujours refléter les conditions réelles. D'autre part, les traces de contact sont connues pour mieux représenter la mobilité de la vie réelle, mais aussi d'être difficile à obtenir. Et si une trace réelle était suffisante pour obtenir plusieurs autres, comme si nous avions effectué plusieurs expérimentations ? à cette fin, nous nous appuyons sur la mobilité plausible, un algorithme capable d'inférer un mouvement spatial à partir de traces de contact et nous proposons un système de reproduction de traces de mobilité qui, à partir d'une unique trace de contact réelle, offre de multiples traces de contact inspirées de la trace originale. / This thesis is structured around contributions in the areas of domestic and mobile networks. In the context of home networks, we deal with both home traffic characterization and application performance degradation. In the case of mobile networks, we are interested in understanding the relationship between wireless technology and contact opportunities among nodes on the move.
|
24 |
Stratégies de Cache basées sur la popularité pour Content Centric Networking / Popularity-Based Caching Strategies for Content Centric NetworkingBernardini, César 05 May 2015 (has links)
Content Centric Networking (CCN) est une architecture pour l'Internet du futur. CCN inclut des fonctionnalités de cache dans tous les noeuds du réseau. Son efficacité dépend largement de la performance de ses stratégies de cache. C'est pour cela que plusieurs études proposent des nouvelles stratégies de cache pour améliorer la performance d'un réseau CCN. Cependant parmi toutes ces stratégies, ce n'est pas évident de décider laquelle fonctionne le mieux. Il manque un environnement commun pour comparer ces stratégies. De plus, il n'est pas certain que ces approches soient les meilleures alternatives pour améliorer la performance du réseau. Dans cette thèse, on vise le problème de choisir les meilleures stratégies de caches pour CCN et les contributions sont les suivantes. On construit un environnement commun d'évaluation dans lequel on compare via simulation les stratégies de caches disponibles: Leave Copy Everywhere (LCE), Leave Copy Down (LCD), ProbCache, Cache "Less For More" et MAGIC. On analyse la performance de toutes ces stratégies et on décide la meilleure stratègie de cache pour chaque scénario. Ensuite, on propose deux stratégies de cache basées sur la popularité pour CCN. On commence avec un étude de la popularité de contenu et on présent la stratégie Most Popular Caching (MPC). MPC privilèges la distribution de contenu populaire dans les caches afin d'ameliorer les autres stratégies de cache. Dans une deuxième étape, on présent une stratègie de cache basé dans l'information des réseaux sociaux: Socially-Aware Caching Strategy (SACS). SACS privilèges la distribution de contenu publié par les utilisateurs les plus importantes / Content Centric Networking (CCN) is a new architecture for a future Internet. CCN includes in-network caching capabilities at every node. Its effciency depends drastically on performances of caching strategies. A lot of studies proposing new caching strategies to improve the performances of CCN. However, among all these strategies, it is still unclear which one performs better as there is a lack of common environment to compare these strategies. In this thesis, we address the challenge of selecting the best caching strategies for CCN. The contribution of this thesis are the following. We build a common evaluation scenario and we compare via simulation the state of the art caching strategies: Leave Copy Everywhere (LCE), Leave Copy Down (LCD), ProbCache, Cache "Less" For More and MAGIC. We analyze the performance of all the strategies in terms of Cache Hit, Stretch, Diversity and Complexity, and determine the cache strategy that fits the best with every scenario. Later on, we propose two novel caching strategies for CCN based on popularity. First, we study popularity of content and we present Most Popular Caching (MPC) strategy. MPC privileges distribution of popular caches into the caches and thus, it overcomes other caching strategies. Second, we present an alternative caching strategy based on social networks: Socially-Aware Caching Strategy (SACS). SACS privileges distribution of content published by influential users into the network. Both caching strategies overcome state of the art mechanisms and, to the best of our knowledge, we are the first to use social information to build caching strategies
|
25 |
Run-time scalable NoC for virtualized FPGA based accelerators as cloud services / NoC évolutif à l'exécution pour les accélérateurs basés sur FPGA virtualisés en tant que services cloudKidane, Hiliwi Leake 05 November 2018 (has links)
Ces dernières années, les fournisseurs de cloud et les centres de données ont intégrés les FPGA dans leur environnement à des fins d'accélération. Cela est dû au fait que les accélérateurs à base de FPGA sont connus pour leur faible puissance et leurs bonnes performances par watt. En outre, l'introduction de la capacité de reconfiguration partielle dynamique (DPR) de certains FPGA incite les chercheurs de l'industrie et des universitaires à proposer des services de cloud FPGA virtualisés baser sur DPR. Dans la plupart des travaux existants, l'interconnexion entre les vFPGA repose soit sur les réseaux BUS ou OpenFlow. Cependant le bus et OpenFlow ne sont pas des solutions optimales pour la virtualisation.Dans cette thèse, nous avons proposé un NoC évolutif à l'exécution pour les accélérateurs basés sur FPGA virtualisés dans un cloud computing. Les composants NoC s'adapteront dynamiquement aux nombres d'accélérateurs virtualisés actifs en ajoutant et en supprimant des sous-noC. Pour minimiser la complexité de la conception de l'architecture NoC à un niveau inférieur (implémentation HDL), nous avons proposé un langage de modélisation unifié de haut niveau (UML) basé sur une ingénierie dirigée par les modèles. Une approche basée sur UML / MARTE et IP-XACT est utilisée pour définir les composants de la topologie NoC de haut niveau et générer les fichiers HDL requis. Les résultats des expériences montrent que le NoC évolutif à l'exécution peut réduire la consommation d'énergie de 17%. La caractérisation NoC sur la modélisation de haut niveau basée sur MDE réduit également le temps de conception de 25%. / In the last few years, cloud providers and data centers have been integrating FPGAs in their environment for acceleration purpose. This is due to the fact that FPGA based accelerator are known for their lower power and good performance per watt. Moreover, the introduction of the ability for dynamic partial reconfiguration (DPR) of some FPGAs trigger researchers in both industry and academics to propose DPR based virtualized FPGA (vFPGA) cloud services. In most of the existing works, the interconnection between the vFPGAs relies either on BUS or OpenFlow networks. However, both the bus and OpenFlow are not virtualization-aware and optimal solutions. In this thesis, we have proposed a virtualization-aware dynamically scalable NoC for virtualized FPGA accelerators in cloud computing. The NoC components will adapt to the number of active virtualized accelerator dynamically by adding and removing sub-NoCs. To minimize the complexity of NoC architecture design at a low level (HDL implementation), we have proposed a Model-Driven Engineering (MDE) based high-level unified modeling language (UML). A UML/MARTE and IP-XACT based approach are used to define the NoC Topology components at a high-level and generate the required HDL files. Experiment results show that the dynamically scalable NoC can reduce the power consumption by 17%. The MDE based high-level modeling based NoC characterization also reduce the design time by 25%.
|
26 |
Ανάπτυξη αρχιτεκτονικών και τεχνικών μεταφραστών για διαχείριση μνήμης σε ενσωματωμένα συστήματαΜηλιδώνης, Αθανάσιος 21 November 2007 (has links)
- / -
|
27 |
Διαχείριση κοινών πόρων σε πολυπύρηνους επεξεργαστέςΑλεξανδρής, Φωκίων 27 June 2012 (has links)
Οι σύγχρονες τάσεις της Επιστήμης Σχεδιασμού των Υπολογιστικών Συστημάτων έχουν υιοθετήσει την χρήση των Κρυφών Μνημών ή Μνημών Cache, αποβλέποντας στην απόκρυψη της Καθυστέρησης της Κύριας Μνήμης των Συστημάτων (Memory Latency) και την γεφύρωση του χάσματος της απόδοσης του Επεξεργαστή και της Κύριας Μνήμης (Processor – Memory Performance Gap). Οι Μνήμες Cache έτσι έχουν αποκτήσει αδιαμφισβήτητα πρωτεύοντα ρόλο στην Ιεραρχία Μνήμης των Ηλεκτρονικών Υπολογιστών.
Οι νέες τάσεις Σχεδιασμού ανέδειξαν την Έννοια του Παραλληλισμού σε πρωτεύοντα ρόλο. Αρχικά διερευνήθηκε ο Παραλληλισμός Επιπέδου Εντολών, ωστόσο η αύξηση της Απόδοσης των Υπολογιστών σύντομα έφτασε ένα μέγιστο. Την τελευταία δεκαετία το κέντρο του ενδιαφέροντος των σχεδιαστών έχει και πάλι μετατοπιστεί, καθώς ένας νέος τύπος Επεξεργαστών έχει εισέλθει στο προσκήνιο, οι Πολυπύρηνοι Επεξεργαστές, ή όπως είναι αλλιώς γνωστοί on-chip Multiprocessors (CMP). Αυτές οι εξελίξεις, σε συνδυασμό με την ολοένα αυξανόμενη πολυπλοκότητα της “συμπεριφοράς” των εκτελούμενων Εφαρμογών, ώθησαν το σχεδιαστικό ενδιαφέρον προς την εκμετάλλευση ενός νεοσύστατου τύπου Παραλληλισμού. Ο Παραλληλισμός Επιπέδου Μνήμης ή Memory Level Parallelism (MLP) αποτελεί τα τελευταία χρόνια, το πλέον ισχυρό μέσο αύξησης της απόδοσης των Υπολογιστικών Συστημάτων και μαζί με τους Πολυπύρηνους Επεξεργαστές θα κυριαρχήσει στο προσκήνιο των εξελίξεων τα επόμενα χρόνια.
Σκοπός της παρούσας Διπλωματικής Εργασίας είναι η ανάπτυξη ενός Στατιστικού – Πιθανοτικού Μοντέλου για μελέτη και πρόβλεψη των φαινομένων που αναπτύσσονται σε Μνήμες Cache, στις οποίες αποθηκεύονται δεδομένα από εκτελούμενες Εφαρμογές, με έντονο Παραλληλισμό Επιπέδου Μνήμης. Θα οριστεί ένας Εκτιμητής του Φόρτου που επιβάλλεται στο Σύστημα, από φαινόμενα Παραλληλισμού Επιπέδου Μνήμης (MLP). Στην συνέχεια, με βάση το Μοντέλο που αναπτύσσουμε, θα διερευνηθεί ένα ικανοποιητικό σύνολο Εφαρμογών, και θα εξαχθεί μια Εκτίμηση – Πρόβλεψη για τον Φόρτο (MLP) του Συστήματος. Εφόσον οι Προβλέψεις μας κριθούν επιτυχής, το Μοντέλο Πρόβλεψης Φόρτου MLP που αναπτύξαμε, μπορεί να αποτελέσει χρήσιμο Εργαλείο στα χέρια των Σχεδιαστών που ασχολούνται με την αύξηση της Απόδοσης των Σύγχρονων Υπολογιστικών Συστημάτων. / -
|
28 |
A reference architecture for archival systems with application to product models / Une architecture de référence pour les systèmes d'archivage avec application aux modèles de produitsBarbau, Raphaël 05 July 2013 (has links)
Pas de résumé en français / Nowadays, a major part of the information is in digital form. Digital preservation is essential to allowpeople to access information over time. From a computer science perspective, two major objectiveshave to be met to enable digital preservation: developing archival systems to manage the preserveddigital information, and select information representations that will facilitate the preservation. For complexinformation such as product models, these two objective are particularly hard to meet. Archivalsystems have to operate in a complex environment, interact with many different systems, and supportmay different business functions. Product model representations do not use all the possibilitiesof computer interpretation.Regarding the development of archival systems, the key is to determine what has to be described toprove that the archival system can effectively support the digital preservation. The Reference Modelfor an Open Archival Information System (OAIS) proposes a terminology to describe and comparearchives. The Audit and Certification of Trustworthy Digital Repository (ACTDR) provides criteria forthe certification of archives. One issue with these efforts is that there is not guidance on how to usethem within archival system descriptions.This thesis proposes a method called Reference Architecture for Archival Systems (RAAS) to describearchival systems implementations. RAAS relies on the DoD Architecture Framework to describethe various aspects of the archival systems. Moreover, RAAS provides an archival-specificterminology inspired by the OAIS Reference Model. RAAS also explains how the archival systemdescription can help for the ACTDR certification.RAAS is applied to a product model preservation case, to describe the various aspects of the archivalsystem. This description includes the interactions involving the archival systems, the archival systemfunctions, the definition of the preserved content, and the definition of the metadata. This descriptionformally refers to the OAIS terminology, and provides ACTDR certification evidence.This thesis also address the representation of product models by proposing the translation of productmodels from STEP to OWL. STEP is a standard for product model representation. The use ofOWL enables semantic relationship to enrich product information, and improve the search and theunderstanding of this information using data integration.The methodology used in this thesis can apply to other types of information, such as medical records
|
29 |
Formalisation et évaluation de stratégies d’élasticité multi-couches dans le Cloud / Formalization and evaluation of cross-layer elasticity strategies in the CloudKhebbeb, Khaled 29 June 2019 (has links)
L'élasticité est une propriété qui permet aux systèmes Cloud de s'auto-adapter à leur charge de travail en provisionnant et en libérant des ressources informatiques, de manière autonomique, lorsque la demande augmente et diminue. En raison de la nature imprévisible de la charge de travail et des nombreux facteurs déterminant l'élasticité, fournir des plans d'action précis pour gérer l'élasticité d'un système cloud, tout en respectant des politiques de haut niveau (performances, cout, etc.) est une tâche particulièrement difficile.Les travaux de cette thèse visent à proposer, en utilisant le formalisme des bigraphes comme modèle formel, une spécification et une implémentation des systèmes Cloud Computing élastiques sur deux aspects : structurel et comportemental.Du point de vue structurel, le but est de définir et de modéliser une structure correcte des systèmes Cloud du côté " backend ". Cette partie est supportée par les capacités de spécification fournies par le formalisme des Bigraphes, à savoir : le principe de "sorting" et de règles de construction permettant de définir les desiderata du concepteur. Concernant l'aspect comportemental, il s'agit de modéliser, valider et implémenter des stratégies génériques de mise à l'échelle automatique en vue de décrire les différents mécanismes d'auto-adaptation élastiques des systèmes cloud (mise à l'échelle horizontale, verticale, migration, etc.), en multi-couches (i.e., aux niveaux service et infrastructure). Ces tâches sont prises en charge par les aspects dynamiques propres aux Systèmes Réactifs Bigraphiques (BRS) notamment par le biais des règles de réaction.Les stratégies d'élasticité introduites visent à guider le déclenchement conditionnel des différentes règles de réaction définies, afin de décrire les comportements d'auto-adaptation des systèmes Cloud au niveau service et infrastructure. L'encodage de ces spécifications et leurs implémentations sont définis en logique de réécriture via le langage Maude. Leur bon fonctionnement est vérifié formellement à travers une technique de model-checking supportée par la logique temporelle linéaire LTL.Afin de valider ces contributions d'un point de vue quantitatif, nous proposons une approche à base de file d'attente pour analyser, évaluer et discuter les stratégies d'élasticité d'un système Cloud à travers différents scénarios simulés. Dans nos travaux, nous explorons la définition d'une "bonne" stratégie en prenant en compte une étude de cas qui repose sur la nature changeante de la charge de travail. Nous proposons une manière originale de composer plusieurs stratégies d'élasticité à plusieurs niveaux afin de garantir différentes politiques de haut-niveau. / Elasticity property allows Cloud systems to adapt to their incoming workload by provisioning and de-provisioning computing resources in an autonomic manner, as the demand rises and drops. Due to the unpredictable nature of the workload and the numerous factors that impact elasticity, providing accurate action plans to insure a Cloud system's elasticity while preserving high level policies (performance, costs, etc.) is a particularly challenging task. This thesis aims at providing a thorough specification and implementation of Cloud systems, by relying on bigraphs as a formal model, over two aspects: structural and behavioral.Structurally, the goal is to define a correct modeling of Cloud systems' "back-end" structure. This part is supported by the specification capabilities of Bigraph formalism. Specifically, via "sorting" mechanisms and construction rules that allow defining the designer's desiderata. As for the behavioral part, it consists of model, implement and validate generic elasticity strategies in order to describe Cloud systems' auto-adaptive behaviors (i.e., horizontal and vertical scaling, migration, etc.) in a cross-layer manner (i.e., at service and infrastructure levels). These tasks are supported by the dynamic aspects of Bigraphical Reactive Systems (BRS) formalism (through reaction rules).The introduced elasticity strategies aim at guiding the conditional triggering of the defined reaction rules, to describe Cloud systems' auto-scaling behaviors in a cross-layered manner. The encoding of these specifications and their implementation are defined in Rewrite Logic via Maude language. Their correctness is formally verified through a model-checking technique supported by the linear temporal logic LTL.In order to quantitatively validate these contributions, we propose a queuing-based approach in order to evaluate, analyze and discuss elasticity strategies in Cloud systems through different simulated execution scenarios. In this work, we explore the definition of a “good” strategy through a case study which considers the changing nature of the input workload. We propose an original way de compose different cross-layer elasticity strategies to guarantee different high-level policies.
|
30 |
Compilation pour machines à mémoire répartie : une approche multipasse / Compilation for distributed memory machines : a multipass approachLossing, Nelson 03 April 2017 (has links)
Les grilles de calculs sont des architectures distribuées couramment utilisées pour l'exécution de programmes scientifiques ou de simulation. Les programmeurs doivent ainsi acquérir de nouvelles compétences pour pouvoir tirer partie au mieux de toutes les ressources offertes. Ils doivent apprendre à écrire un code parallèle, et, éventuellement, à gérer une mémoire distribuée.L'ambition de cette thèse est de proposer une chaîne de compilation permettant de générer automatiquement un code parallèle distribué en tâches à partir d'un code séquentiel. Pour cela, le compilateur source-à-source PIPS est utilisé. Notre approche a deux atouts majeurs : 1) une succession de transformations simples et modulaires est appliquée, permettant à l'utilisateur de comprendre les différentes transformations appliquées, de les modifier, de les réutiliser dans d'autres contextes, et d'en ajouter de nouvelles; 2) une preuve de correction de chacune des transformations est donnée, permettant de garantir que le code généré est équivalent au code initial.Cette génération automatique de code parallèle distribué de tâches offre également une interface de programmation simple pour les utilisateurs. Une version parallèle du code est automatiquement générée à partir d'un code séquentiel annoté.Les expériences effectuées sur deux machines parallèles, sur des noyaux de Polybench, montrent une accélération moyenne linéaire voire super-linéaire sur des exemples de petites tailles et une accélération moyenne égale à la moitié du nombre de processus sur des exemples de grandes tailles. / Scientific and simulation programs often use clusters for their execution. Programmers need new programming skills to fully take advantage of all the available resources. They have to learn how to write parallel codes, and how to manage the potentially distributed memory.This thesis aims at generating automatically a distributed parallel code for task parallelisation from a sequential code. A source-to-source compiler, PIPS, is used to achieve this goal. Our approach has two main advantages: 1) a chain of simple and modular transformations to apply, thus visible and intelligible by the users, editable and reusable, and that make new optimisations possible; 2) a proof of correctness of the parallelisation process is made, allowing to insure that the generated code is correct and has the same result as the sequential one.This automatic generation of distributed-task program for distributed-memory machines provide a simple programming interface for the users to write a task oriented code. A parallel code can thus automatically be generated with our compilation process.The experimental results obtained on two parallel machines, using Polybench kernels, show a linear to super-linear average speedup on small data sizes. For large ones, average speedup is equal to half the number of processes.
|
Page generated in 0.021 seconds