Skip to content
This repository has been archived by the owner on Oct 20, 2022. It is now read-only.

Commit

Permalink
Finalize thesis
Browse files Browse the repository at this point in the history
  • Loading branch information
heddendorp committed Mar 15, 2020
1 parent 35ba7ad commit 140aced
Show file tree
Hide file tree
Showing 19 changed files with 488 additions and 417 deletions.
94 changes: 94 additions & 0 deletions LaTeX/bibliography.bib
Original file line number Diff line number Diff line change
Expand Up @@ -609,4 +609,98 @@ @online{noauthor_design_nodate
url = {https://webassembly.org/docs/rationale/},
urldate = {2020-03-15},
file = {Design Rationale - WebAssembly:C\:\\Users\\hedde\\Zotero\\storage\\JFSZJE49\\rationale.html:text/html}
}

@software{heddendorp_thesismemory-random_2020,
title = {thesis/memory-random},
url = {https://github.com/Isigiel/bsc-thesis/tree/master/code/platforms/memory-array-random},
abstract = {Contribute to Isigiel/bsc-thesis development by creating an account on {GitHub}.},
author = {Heddendorp, Lukas},
urldate = {2020-03-15},
date = {2020-03-14},
note = {original-date: 2019-11-11T13:44:24Z}
}

@software{heddendorp_thesisnative-return_2020,
title = {thesis/native-return},
url = {https://github.com/Isigiel/bsc-thesis},
abstract = {Contribute to Isigiel/bsc-thesis development by creating an account on {GitHub}.},
author = {Heddendorp, Lukas},
urldate = {2020-03-15},
date = {2020-03-14},
note = {original-date: 2019-11-11T13:44:24Z}
}

@article{roshchupkin_information_2000,
title = {[Information centers as an instrument for behavioral change in order to prevent {HIV} infection]},
issn = {0372-9311},
abstract = {The importance of information and behavioral changes in preventing {HIV} infection in three different groups of people is shown. The content of one of such strategies, the Prochaska-{DiClemente} model of behavior changing, which proved to be good in popular programs realized in many countries, including Russia, is demonstrated. In this model the change of behavior is presented as a process consisting of 5 stages of making definite decisions. The realization of the program has started by such organizations as "Médecins sans Frontières" (Holland) and "{SPID}-infosvyaz" (Russia) in the prevention of {HIV} infection, sexually transmitted diseases (including hepatitides) and drug dependence in 6 regions of Russia. The prospect lying before these activities is the creation in Russia of a network of organizations working in the above-mentioned field.},
pages = {108--111},
number = {4},
journaltitle = {Zh. Mikrobiol. Epidemiol. Immunobiol.},
author = {Roshchupkin, G. V.},
date = {2000-08},
pmid = {10994130},
keywords = {Humans, Behavior, Addictive, Health Education, {HIV} Infections, {HIV}-1, Information Centers, Program Development, Russia}
}

@article{knox_atmel_2013,
title = {Atmel Joins {EEMBC} to Participate in Microcontroller Benchmark Development and to Advocate Low Power.},
volume = {193},
issn = {10994130},
url = {http://search.ebscohost.com.eaccess.ub.tum.de/login.aspx?direct=true&db=bth&AN=85966010&site=ehost-live},
abstract = {The article reports that Atmel, a microcontroller and touch solutions provider, has joined the Embedded Microprocessor Benchmark Consortium's ({EEMC}) Automotive/Industrial subcommittee. Members of the subcommittee define and develop benchmarks targeting low-power automotive and ultra-low power electronics applications. Its {EEMBC} membership will reportedly enable Atmel to use the benchmarks and the {EEMBC} {CoreMark} to validate and publicize the performance of its microcontroller.},
pages = {133 -- 134},
number = {2},
journaltitle = {Automotive Industries},
author = {Knox, Jon},
urldate = {2020-03-15},
date = {2013},
keywords = {Atmel Corp., Automobile industry, Committees, Microcontrollers, Power electronics}
}

@article{knox_atmel_2013-1,
title = {Atmel Joins {EEMBC} to Participate in Microcontroller Benchmark Development and to Advocate Low Power},
volume = {193},
issn = {10994130},
url = {http://search.ebscohost.com/login.aspx?direct=true&db=bth&AN=85966010&site=ehost-live},
abstract = {The article reports that Atmel, a microcontroller and touch solutions provider, has joined the Embedded Microprocessor Benchmark Consortium's ({EEMC}) Automotive/Industrial subcommittee. Members of the subcommittee define and develop benchmarks targeting low-power automotive and ultra-low power electronics applications. Its {EEMBC} membership will reportedly enable Atmel to use the benchmarks and the {EEMBC} {CoreMark} to validate and publicize the performance of its microcontroller.},
pages = {133--134},
number = {2},
journaltitle = {Automotive Industries},
author = {Knox, Jon},
urldate = {2020-03-15},
date = {2013-02},
note = {Publisher: Automotive Industries},
keywords = {Atmel Corp., Automobile industry, Committees, Microcontrollers, Power electronics},
file = {EBSCO Full Text:C\:\\Users\\hedde\\Zotero\\storage\\4D4BWE4F\\Knox - 2013 - Atmel Joins EEMBC to Participate in Microcontrolle.pdf:application/pdf}
}

@inproceedings{kramer_benchmarks_2009,
location = {Los Angeles, California {USA}},
title = {Benchmarks to Find the Optimal Microcontroller-Architecture},
isbn = {978-0-7695-3507-4},
url = {http://ieeexplore.ieee.org/document/5171309/},
doi = {10.1109/CSIE.2009.928},
eventtitle = {2009 {WRI} World Congress on Computer Science and Information Engineering},
pages = {102--105},
booktitle = {2009 {WRI} World Congress on Computer Science and Information Engineering},
publisher = {{IEEE}},
author = {Kramer, Klaus-Dietrich and Stolze, Thomas and Banse, Thomas},
urldate = {2020-03-15},
date = {2009}
}

@inproceedings{kramer_benchmarks_2009-1,
title = {Benchmarks to Find the Optimal Microcontroller-Architecture},
volume = {2},
doi = {10.1109/CSIE.2009.928},
abstract = {Microcontrollers ({MC}) are used in various technical systems (Embedded Control Systems - e.g. in smart control systems, automotive applications, communication systems and so on) to realize optimal and efficient systems. So the developers have to choose {MC}-architectures which are suited best for the target application. Therefore, it is necessary to define special features, like real-time requests, precision, power supply, tool chain, price, etc. This paper describes tools and algorithms to assess microcontroller-architectures in this sense.},
eventtitle = {2009 {WRI} World Congress on Computer Science and Information Engineering},
pages = {102--105},
booktitle = {2009 {WRI} World Congress on Computer Science and Information Engineering},
author = {Kramer, Klaus-Dietrich and Stolze, Thomas and Banse, Thomas},
date = {2009-03},
note = {{ISSN}: null},
keywords = {Automotive engineering, benchmark testing, Benchmark testing, Benchmarks, Communication system control, Computer science, Control systems, Logic testing, Microcontroller, microcontroller-architecture, microcontrollers, Microcontrollers, Optimal control, power supply, precision, price, Pulse width modulation, Random access memory, real-time request, tool chain, universal benchmark and compare system}
}
6 changes: 3 additions & 3 deletions LaTeX/chapters/01_introduction.tex
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ \chapter{Introduction}\label{chapter:introduction}
The Internet of Things (IoT) is the network of physical objects that contain embedded technology to communicate and sense or interact with their internal states or the external environment.
\end{displayquote}

Spending on the Internet of Things is prognosed to increas from \SI{646}[\$]{B} in 2018 to \SI{1100}[\$]{B} in 2023 \autocite{idc_prognosis_2019}. As visible in figure \ref{fig:iot_connections} the number of connected IoT devices is rising steadily as well. This very big market \textquote{is moving beyond the hype}\autocite{gartner_internet_nodate-1} and will continue to see a lot of innovation and interest.
Spending on the Internet of Things is prognosed to increase from \SI{646}[\$]{B} in 2018 to \SI{1100}[\$]{B} in 2023 \autocite{idc_prognosis_2019}. As visible in figure \ref{fig:iot_connections} the number of connected IoT devices is rising steadily as well. This very big market \textquote{is moving beyond the hype}\autocite{gartner_internet_nodate-1} and will continue to see a lot of innovation and interest.

\begin{figure}[h]
\begin{tikzpicture}
Expand All @@ -31,7 +31,7 @@ \chapter{Introduction}\label{chapter:introduction}

If WebAssembly can be used on IoT devices, it opens the programming of embedded devices up for new deployment models and new languages that were previously not supported. Being a universal bytecode that is optimized for being transmitted over the network, it can be used to send the same program to many different devices over the air.

There is not much research available that concerns the usage of WebAssembly in embedded devices or the ESP32 specifically. Most of the research is currently focused on the applications inside the browser. In this thesis, we want to layout a method to assess the feasibility of running WebAssembly and explore it is drawbacks and advantages. Before we explain our approach, we will give some background on the essential parts of the work.
There is not much research available that concerns the usage of WebAssembly in embedded devices or the ESP32 specifically. Most of the research is currently focused on the applications inside the browser. In this thesis, we want to layout a method to assess the feasibility of running WebAssembly and explore its drawbacks and advantages. Before we explain our approach, we will give some background on the essential parts of the work.

\paragraph{Microcontrollers}
Meant for executing specific tasks, microcontrollers are small computers with minimal resources. They are designed with the aim to have just enough resources while keeping costs low. A popular system on a chip in this class is the ESP32 family. They are very affordable and can be used from experimentation and prototyping to production products. Their connectivity options and CPU performance makes them a great fit for IoT devices. We will test running WebAssembly on the ESP32 in this thesis, which uses the realtime operating system FreeRTOS.
Expand All @@ -45,6 +45,6 @@ \section*{Assessing WebAssembly}

In order to assess the current state of WebAssembly on the ESP32, we found a runtime, WASM3, which has support for the ESP32 running FreeRTOS. While other runtimes are available already, most of them only target desktop PCs. The only other runtime for embedded use, the WebAssembly micro runtime, does not support the ESP32 operating system. WASM3 also achieves the best execution speeds amongst WebAssembly runtimes in benchmarks \autocite{shymanskyy_wasm3_2020}.

The comparison we are interested in is between the execution of code compiled to WebAssembly and compiled to native code. For this, we designed a collection of Workloads that are inspired by real-world applications. We ran those tests as WebAssembly and native code and measured the different behavior to gain more insight into the drawbacks and advantages of running WebAssembly.
The comparison we are interested in is between the execution of code compiled to WebAssembly and compiled to native code. For this, we designed a collection of Workloads\footnote{All tests can be accessed at \url{https://github.com/Isigiel/bsc-thesis/tree/master/code/platforms}} that are inspired by real-world applications. We ran those tests as WebAssembly and native code and measured the different behavior to gain more insight into the drawbacks and advantages of running WebAssembly.

After running the test and interpreting results, we will draw some learnings from our measurements and research that can help developers when considering it for a new IoT project. Apart from that, all tests are meant to be reproducible on other hardware platforms or with other engines once they are released to compare the performance and asses WebAssembly in other setups. If a new runtime for embedded devices is published, they can be rerun with minor changes to have an immediate comparison.
Loading

0 comments on commit 140aced

Please sign in to comment.