Multi-objective Computing Cluster Scheduling and Resource Reservation Optimization

dc.contributorAalto-yliopistofi
dc.contributorAalto Universityen
dc.contributor.advisorMalykhina, Tetiana
dc.contributor.authorVahvanen, Eetu
dc.contributor.schoolPerustieteiden korkeakoulufi
dc.contributor.supervisorSavioja, Lauri
dc.date.accessioned2024-05-28T08:18:22Z
dc.date.available2024-05-28T08:18:22Z
dc.date.issued2020-05-08
dc.description.abstractThis research is a literature review that concludes multi-objective computing cluster optimization. Computing clusters have been developed since 1970s but the significance has risen in the global drive for digitalization. Modern clusters are generic, heterogenic systems that are capable of heavy computing. Their computing power is enormous compared to customer computers even though the components work in similar ways. This vast computing power is useful for at least research purposes, weather forecasting, and material innovations. The goal of this study is to analyze and conclude important techniques used for optimizing clusters. Study focuses on job scheduling and resource reservation which are essential factors in optimization. To further understand problems regarding optimization the study discusses three perspectives: configuration, system characteristics, and performance metrics. Clusters are compositions of several computers each capable for independent computing work. These computational units are called nodes which are interconnected in a very fast local network. The huge number of nodes modern computing clusters have call for a need for careful optimization. The main results of this study are as follows. Optimization regarding cluster resource reservation is necessary for the stability and utilization of the system. This enables fast execution of even heavier jobs. The visible part of optimization for a user is software that is responsible for schedules and dividing work to nodes. This part of a cluster is often called its real operating system for its central role in the system. Modern supercomputers, which are important use cases for clusters, are typically optimized with a FIFO algorithm. Other techniques, such as backfilling, are used to improve performance and resource utilization. The processing is typically done in batches where the users specify their needs. Other clusters, such as data centers, may use techniques capable of real-time optimization, and such techniques are actively researched.en
dc.description.abstractTämä kandidaatin tutkielma on kirjallisuustutkimus, jossa käsitellään monitavoitteisten tietokoneklustereiden optimointia. Klustereita on kehitetty jo tietokoneen synnyn alkuajoilta lähtien, mutta niiden merkitys nopeasti digitalisoituvassa maailmassa on keskeinen. Nykyiset supertietokoneet ovat geneerisiä, heterogeenisiä ja monitavoitteisia laskennallisia kokonaisuuksia. Niiden laskentateho on huomattavasti kuluttajatietokoneita korkeampi, vaikka ne koostuvatkin samanlaisista peruskomponenteista. Suurta laskentatehoa hyödynnetään muun muassa tutkimuksessa, sään mallintamisessa ja uusien materiaalien kehityksessä. Tutkielman tavoitteena on analysoida ja esittää klustereiden optimointiin käytettäviä tekniikoita. Tutkielmassa keskitytään prosessien aikataulutukseen ja klusterin resurssien varaamiseen liittyviin haasteisiin, jotka ovat olennaisia osa-alueita klustereiden optimoinnissa. Optimointiin liittyvien haasteiden ja tekniikoiden ymmärtämiseksi tutkielmassa esitellään klustereiden tyypillisiä konfiguraatioita, ominaisuuksia, tyyppejä ja tehokkuuden mittareita. Klusterit ovat usean tietokoneen muodostamia kokonaisuuksia. Klusterit koostuvat vaihtelevasta määrästä pieniä laskennallisia yksiköitä eli noodeja, jotka ovat yhteydessä toisiinsa nopeassa lähiverkossa. Koska klusterit muodostuvat erittäin suuresta määrästä omatoimiseen laskentaan kykeneviä yksiköitä, niiden toiminnan tarkka optimointi on välttämätöntä. Tämän tutkimuksen keskeiset tulokset ovat yhteenvetoja tärkeimmistä tekniikoista erityisesti klusterien optimoinnissa. Resurssien hallintaan liittyvä optimointi vakauttaa järjestelmää ja varmistaa, että myös raskaat tehtävät saadaan tehokkaasti suoritettua. Käyttäjälle näkyvä osa klustereiden optimointia on aikataulutusohjelmisto, joka vastaa työn jakamisesta noodeille. Tätä osaa klustereissa on kutsuttu niiden todellisiksi käyttöjärjestelmiksi, koska niillä on erittäin keskeinen asema klusterin toiminnassa. Nykyajan tehokkaimmat klusterit on optimoitu tyypillisesti FIFO algoritmilla käyttäen hyödyksi erilaisia tukialgoritmeja vakauttamaan järjestelmää. Prosessointi suoritetaan tyypillisesti usean prosessin sarjoissa. Tutkimuskäytössä käyttäjät määrittelevät tarpeen tyypillisesti hyvinkin tarkasti etukäteen, mutta myös reaaliajassa aikatauluttavia algoritmeja on olemassa ja niitä kehitetään aktiivisesti.fi
dc.format.extent29
dc.format.mimetypeapplication/pdfen
dc.identifier.urihttps://aaltodoc.aalto.fi/handle/123456789/128286
dc.identifier.urnURN:NBN:fi:aalto-202405283888
dc.language.isoenen
dc.programmeTeknistieteellinen kandidaattiohjelmafi
dc.programme.majorTietotekniikkafi
dc.programme.mcodeSCI3027fi
dc.subject.keywordcomputing clusteren
dc.subject.keywordHPCen
dc.subject.keywordmulti-objective optimizationen
dc.subject.keywordscheduling algorithmsen
dc.titleMulti-objective Computing Cluster Scheduling and Resource Reservation Optimizationen
dc.typeG1 Kandidaatintyöfi
dc.type.dcmitypetexten
dc.type.ontasotBachelor's thesisen
dc.type.ontasotKandidaatintyöfi

Files

Original bundle

Now showing 1 - 1 of 1
No Thumbnail Available
Name:
Vahvanen_Eetu_2020.pdf
Size:
928.18 KB
Format:
Adobe Portable Document Format