Vis enkel innførsel

dc.contributor.advisorMeyer, Jan Christian
dc.contributor.authorReinfjell, Jørgen Bele
dc.date.accessioned2023-12-13T18:19:55Z
dc.date.available2023-12-13T18:19:55Z
dc.date.issued2023
dc.identifierno.ntnu:inspera:142737689:21962966
dc.identifier.urihttps://hdl.handle.net/11250/3107436
dc.description.abstractI denne oppgaven benyttes parvise målinger for å automatisk oppdage nettverkstopologi for MPI. PLogP modellen blir benyttet for å modellere ytelsen til kommunikasjon mellom to ranks. PLogP parameterne mellom to ranks finner vi gjennom å kjøre en mikro-benchmark som ble lagd ved bruk av LGate test rammeverket. Vi lager en avstandsmatrise ved å kjøre parvise målinger mellom alle par. Klyngeanalyse blir brukt for å hente ut topologi-informasjon på flere nivåer. Flere forskjellige topologier blir funnet gjennom å bruke et automatisk parameter-søk. Resultatene viser at man kan oppdage både nettverkstopologi og interne node topologier ved bruk av klyngeanalyse på PLogP mikro-benchmark resultatene. Vi kjører flere tester og med forskjellig antall målinger. En analyse av resultatene viser hvordan antallet målinger påvirker både kjøretiden og detaljnivået i avstandsmatrisen vi finner. Vi finner at ved å øke antallet målinger så får man ut flere detaljer i avstandsmatrisen. Vi lager en topologi-bevisst MPI_Bcast implementasjon som utnytter topologiene som blir automatisk funnet ved bruk av klyngeanalyse. En mikro-benchmark blir benyttet for å velge ut den broadcast algoritmen som har best ytelse for en gitt meldingsstørrelse. Målingene fra denne micro-benchmarken blir benyttet for å automatisk lage en parameterisert versjon av broadcast-operasjonen. Meldingsstørrelsen blir brukt som parameter i den parametriske versjonen. Resultatene våre viser en 1,5x+ speedup for opp til P=512 på flere dataklynger når vi sammenlikner med OpenMPI og Intel MPI. For én-node systemet ARM1, som har en ukjent topologi, oppnår vi en 1,5x+ speedup sammenlignet med OpenMPI.
dc.description.abstractIn this thesis, pair-wise measurements are used to automatically detect the topology of a network using MPI. The PLogP model is applied to model the performance of communication between two ranks. The PLogP parameters between two ranks are found by a micro-benchmark that was created using the LGate test harness. Clustering techniques are applied to the results of the micro-benchmark and used to extract topology information on several levels. Using an automatic parameter search, many different topologies can be extracted. Results show that applying clustering algorithms to the PLogP micro-benchmark measurements is accurate at detecting both network topology and node-internal topologies. We run tests with different measurement counts. Analysis shows how that has an impact on the runtime of the micro-benchmark and the impact on the level of detail. They also show that increasing the number of repetitions used to get our measurements can be used to increase the detail in the distance matrices. We create a topology-aware MPI_Bcast implementation that can use the topologies that were automatically detected. A micro-benchmark is used to find the best broadcast implementation from a set of algorithms and topologies for a given message size. We generate a parameterized version of the broadcast operation that uses the results for a given message size. Our results show a relative speedup greater than or equal to 1.5 for up to P=512 for several clusters when compared to OpenMPI and Intel MPI. We apply the technique for the single-node system ARM1 with a currently unknown topology and achieve a speedup of 1.5 over OpenMPI.
dc.languageeng
dc.publisherNTNU
dc.titleAutomatic Detection of Interconnect Topologies and Optimization of the Broadcast Operation for MPI-based systems
dc.typeMaster thesis


Tilhørende fil(er)

Thumbnail
Thumbnail

Denne innførselen finnes i følgende samling(er)

Vis enkel innførsel