Vis enkel innførsel

dc.contributor.advisorJahre, Magnus
dc.contributor.authorAase, Eirik Vale
dc.date.accessioned2021-09-15T16:11:35Z
dc.date.available2021-09-15T16:11:35Z
dc.date.issued2020
dc.identifierno.ntnu:inspera:57320302:21902917
dc.identifier.urihttps://hdl.handle.net/11250/2777808
dc.description.abstractTingenes Internett (Internet of Things (IoT)) gjør at milliarder of ultra-lav-effekt-enheter (ultra-low-power (ULP) devices) blir deployert i alle deler av samfunnet vårt. Slike enheter utfører en rekke funksjoner, periodisk leser inn data fra sensorene deres, potensielt prosesserer og sender denne dataen videre før de går inn i en sovemodus. Disse enhetene representerer en interessant krysning av motsigende mål. De har ofte minimalt med ressurser når det kommer til minne og energibudsjett, samtidig som de i større grad enn før får i oppgave å utføre beregningsintensive maskinlæringsapplikasjoner (machine learning (ML) applications) som må holde seg innenfor sanntids-ytelseskrav. I det siste har ULP-enheter også blitt utstyrt med flere prosesseringsenheter som øker beregningsevnene, men som også utfordrer energibudsjettet. Det er derfor viktig at disse enhetene utnytter sine ressurser med tanke på klokkefrekvens, forsynningsspenning og antall kjerner på en slik måte at de minimierer energiforbruket samtidig som de møter ytelseskravene. Å tillate ULP-enheter å utføre prosesserings-intensivt arbeid lokalt i stedet for å kommunisere med Internett-servere muliggjør en rekke interessante applikasjoner som unngår sikkerhetshensyn og forsinkelser assosiert med Internett-kommunikasjon. I dette arbeidet betrakter vi slowdown gjennom dynamisk spennings- og frekvensskalering (dynamic voltage-frequency scaling (DVFS)) kontra race-to-halt som strategier for å minimere energiforbruket gitt ytelseskrav for en flerkjernet ULP-enhet i en myk sanntidskontekst. Vi implementerer tre applikasjoner som blir deployert på en prototype fra Nordic Semiconductor. Den første bruker SeeDot-rammeverket for å deployere kvantiserte nevralnett (quantized neural networks (QNNs)) på ULP-enheter og de to andre er matrisemultiplikasjon-applikasjoner. Alle applikasjonene er implementert i en en- og flerkjernet kontekst. Vi måler ytelse og enerigforbruk relatert til klokkefrekvens, forsynningsspenning og antall kjerner. Vi analyserer også den teoretiske gevinsten av å bruke flere nedskalerte kjerner i stedet for en enkelt nedskalert kjerne. Vi finner at en slowdown-strategi som bruker den laveste konfigurasjonen som fortsatt møter ytelseskravet minimerer energiforbruket mest, og at å støtte dynamisk skalering av forsyningsspenning og klokkefrekvens kan kreve ingeniørarbeid uten å bidra til å redusere energiforbruket i noen særlig grad. Dette antar at den utførte arbeidslasten innenfor tidsperioden ikke endrer seg vesentlig. Vi finner også at en race-to-halt-strategi gjøre at enheten avslutter raskest mulig ved å forbruke mest energi uten å forbedre ytelsen på en meningsfull måte gitt ytelseskravet. I analysen av å bruke flere nedskalerte kjerner i stedet for en enkelt nedskalert kjerne så finner vi at det er potensial for ytelsesforbedringer og signifikante energibesparelser ved å bruke flere nedskalerte kjerner.
dc.description.abstractInternet of Things (IoT) sees billions of ultra-low-power (ULP) devices deployed into all parts of our society. Such devices perform a variety of functions, periodically reading in data through their sensors, possibly processing this data in some way and transmitting them before the period is over and finally entering a sleep mode. These devices pose an interesting intersection of conflicting objectives. They often sport minimal resources when it comes to memory and energy budgets, while at the same time being increasingly often times tasked with running compute-intensive machine learning (ML) applications that must adhere to real-time performance requirements. In recent times increasingly more ULP devices also come equipped with multiple processing cores that increase the computing capabilities, but challenge the energy budget. It is therefore important that these devices utilize their resources in terms of clock frequency, supply voltage and the number of cores in such a way as to minimize their energy consumption while still meeting the performance requirements. Allowing ULP devices to perform processing-intensive work locally instead of communicating with Internet servers enable a range of interesting applications that avoid the security concerns and latencies of Internet communication. In this work we consider slowdown through dynamic voltage-frequency scaling (DVFS) versus race-to-halt as strategies for minimizing energy consumption under performance requirements for a multi-core ULP device in a soft real-time context. We implement three applications that are deployed to a prototype provided by Nordic Semiconductor. The first makes use of the SeeDot framework for deploying quantized neural networks (QNNs) on ULP devices and the other two are matrix multiplication applications. All applications are implemented in a single-core and multi-core context. We measure the performance and energy consumption in terms of clock frequency, supply voltage and the number of cores. We also analyze the theoretical benefit of using multiple scaled-down cores versus a single scaled-down core. We find that a slowdown strategy using the lowest configuration that still meets the performance requirement minimizes energy consumption the most, and that supporting dynamic scaling of supply voltage and clock frequency might involve more engineering work without any real benefit to energy savings. This assumes that the workload performed within the time period does not exhibit significant variation. We also find that a race-to-halt strategy allows the device to finish as early as possible by consuming the most energy without improving the performance of the application in any meaningful way given the performance requirement. In the analysis of using multiple scaled-down cores versus a single scaled-down core we found that there is potential for performance improvements and significant energy savings when using multiple scaled-down cores.
dc.language
dc.publisherNTNU
dc.titleMinimizing the Energy Consumption of Soft Real-Time Applications on a Multi-Core Ultra-Low-Power Device
dc.typeMaster thesis


Tilhørende fil(er)

Thumbnail

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

Vis enkel innførsel