Vis enkel innførsel

dc.contributor.advisorElster, Anne C.
dc.contributor.authorValen, Ruben Solvang
dc.date.accessioned2024-01-24T18:19:42Z
dc.date.available2024-01-24T18:19:42Z
dc.date.issued2023
dc.identifierno.ntnu:inspera:142737689:20645894
dc.identifier.urihttps://hdl.handle.net/11250/3113657
dc.description.abstractStensilalgoritmer er en familie av algoritmer som oppdaterer punkter i et flerdi- mensjonalt datanett med naboverdiene som vekter. De er beregningsintensive og brukes i mange domener, og utgjør dermed en betydelig del av arbeidsbelastnin- gen innen høy-ytelses databehandling. Denne avhandlingen presenterer et verktøy for benchmarking av 2D stensil- kalkulasjoner på GPUer. Arbeidet bygger på A. Hammer’s arbeid med flerkjernede 3D-stensiler. Vår implementasjon bruker MPI og inkluderer tre forskjellige op- timaliseringsteknikker: dype haloer, synkroniserte kantutvekslinger og overlap- pende kommunikasjon og beregning. Dype haloer grupperer kommunikasjon sammen for å redusere overhead, men med økt beregning per iterasjon som en avveining. Denne optimaliseringen forbedrer ytelsen når halo-størrelsen øker, inntil reduksjonen i kommunikasjonstid blir over- skygget av økningen i beregningstid. Vi viser at overlappende kommunikasjon og beregning er en svært effektiv optimalisering som forbedrer ytelsen i nesten alle tilfeller, spesielt for større prob- lemstørrelser. På de største rutenettene som ble testet, skjulte overlappende kom- munikasjon og beregning 83% av den parallelle kommunikasjonen. Synkronisert kantutvekslingsoptimaliseringen fungerer som forventet, enten med eller uten samspill med de andre optimaliseringene. Den asynkrone versjonen vår viser evnen til overlapp av kommunikasjon og beregning optimaliseringen til å redusere effekten av uventede forsinkelser i kommunikasjon mellom noder ved lave halo-dybder. Totalt sett gir disse tre parallelle optimaliseringene betydelig ytelsesforbedring i stensilkalkulasjoner på GPUer med MPI-kommunikasjon. Merk imidlertid at ytelses- gevinstene som oppnås med disse optimaliseringene avhenger i stor grad av prob- lemstørrelsen og maskinvarekonfigurasjonen. På den største problemstørrelsen som ble testet, ga alle tre optimaliseringene i kombinasjon en hastighetsøkning på 1,09 når man brukte noder med V100 GPUer og 1,17 hastighetsøkning når man brukte noder med A100 GPUer. Våre resultater gir innsikt for beslutningstakere når de vurderer implementerin- gen av disse optimaliseringene i ulike problemområder. Forslag til videre arbeid med dette benchmark-verktøyet er også inkludert.
dc.description.abstractStencils are a family of algorithms that update points of a multi-dimensional data mesh with the neighbouring values as inputs. They are compute-intensive and used in many domains and thus account for a significant portion of High- Performance Computing workloads. This thesis presents a benchmarking tool for 2D stencil computations on GPUs. Our work builds on A. Hammer´ s work on Multicore 3D stencils. Our implemen- tation uses MPI, and includes three different optimisation techniques: Deep halos, Synchronous halo exchanges, and overlapping communication and computation. Deep halos group communication together to reduce overhead traded off with increased computation per iteration. This optimisation improves performance as the halo size increases until the decrease in communication time is eclipsed by the increase in computation time. We show that overlapping communication and computation is a highly im- pactful optimisation that improves performance over our serial version in almost all cases, particularly for larger problem sizes. On the largest grid sizes tested, overlapping communication and computation hides 83% of the parallel commu- nication. The synchronous halo exchange optimisation works as expected with or with- out interacting with the other optimisations. Our asynchronous version highlights the ability to overlap communication and computation optimisation to mitigate the impact of unexpected inter-node communication slowdowns at low halo depths. Overall, these three parallel optimisations offer significant performance im- provement in stencil computations on GPUs with MPI communication. Note, however, that the performance gains achieved with these optimisations depend highly on the problem size and hardware configuration. On the largest problem size tested, all three optimisations in conjunction gave a 1.09 speedup when using nodes with V100 GPUs and a 1.17 speedup when using nodes with A100 GPUs. Our results provide insight for decision-makers when considering the imple- mentation of these optimisations given different problem domains. Suggestions for future work on this benchmarking tool is also included.
dc.languageeng
dc.publisherNTNU
dc.titleAnalysing Deep Halos on Modern GPUs
dc.typeMaster thesis


Tilhørende fil(er)

Thumbnail

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

Vis enkel innførsel