Dynamic setup for clusters with multi-master architecture
Dynamic setup for clusters with multi-master architecture
diplomová práce (OBHÁJENO)
Zobrazit/ otevřít
Trvalý odkaz
http://hdl.handle.net/20.500.11956/30690Identifikátory
SIS: 68641
Kolekce
- Kvalifikační práce [11264]
Autor
Vedoucí práce
Oponent práce
Hnětynka, Petr
Fakulta / součást
Matematicko-fyzikální fakulta
Obor
Softwarové systémy
Katedra / ústav / klinika
Katedra softwarového inženýrství
Datum obhajoby
2. 2. 2010
Nakladatel
Univerzita Karlova, Matematicko-fyzikální fakultaJazyk
Angličtina
Známka
Výborně
Diplomová práce se zabývá problémem multi-master konfigurace pro počítačové clustery, na kterých běží systém PROOF. PROOF je framework postavený na master-worker architektuře, který se používá především na analýzu fyzikálních dat v CERNu (Evropská organizace pro jaderný výzkum). Cílem práce je určit optimální počet masterů, při jejichž použití je daná úloha zpracována v nejkratším čase. Na základě analýzy průběhu zpracování úlohy je představen a naimplementován tzv. merger-based algoritmus, tedy algoritmus založený na konceptu mergera. Merger je uzel, který se během výpočtu chová jako worker, ale během poslední, a nezřídka velmi náročné fáze slučování mezivýsledků plní roli mastera. Počet a přesné určení mergerů probíhá dynamicky během zpracování úlohy a je určeno jak velikostí clusteru, tak i jeho aktuálním výkonem. Na závěr práce je provedeno srovnání merger-based algoritmu s dosavadním klasickým přístupem, a to na různých úlohách a pro různé velikosti clusteru. Naměřené zrychlení je srovnáno s teoretickými hodnotami.
The work deals with the problem of multi-master setup for clusters running PROOF, which is a master-worker based framework used at CERN (European Organization for Nuclear Research), preferably for analysis of high energy physics data. The goal is to determine an optimal number of masters for the given task in order to make the task execution time as short as possible. Based on the analysis of PROOF processing work-flow, the merger-based algorithm is designed and implemented. It introduces a concept of the merger, which is a node acting as a worker during the computation phase, and as a master during the final phase of sub-results merging. The number and selection of merger nodes is performed dynamically, and depends both on the cluster size and it's recent performance. The performance of the merger-based algorithm is compared to the standard approach on several queries and several sizes of the cluster. The measured speed-up is confronted with the previously invented theory.