master-thesis/thesis/chapters/introduction.tex
Daniel 250da02353
Some checks are pending
CI / Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }} - ${{ github.event_name }} (x64, ubuntu-latest, 1.10) (push) Waiting to run
CI / Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }} - ${{ github.event_name }} (x64, ubuntu-latest, 1.6) (push) Waiting to run
CI / Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }} - ${{ github.event_name }} (x64, ubuntu-latest, pre) (push) Waiting to run
updated introduction: background and motivation
2025-02-14 12:42:42 +01:00

16 lines
2.3 KiB
TeX

\chapter{Introduction}
\label{cha:Introduction}
This chapter provides an entry point for this thesis. First the motivation of exploring this topic is presented. In addition, the research questions of this thesis are outlined. Lastly the methodology on how to answer these questions will be explained.
\section{Background and Motivation}
Optimisation of program code is a crucial part in many different fields. For example video games need a lot of optimisation to lower the minimum hardware requirements which allows more people to run the game. Another example for optimisation are computer simulations. For those, optimisation is even more crucial, as this allows the scientists to run more detailed simulations or get the simulation results faster. Equation learning is another field that can heavily benefit from optimisation. One part of equation learning, is to evaluate the expressions generated by the algorithm. This thesis is concerned with optimising that part to increase the overall performance of the equation learning algorithm. The free lunch theorem as described by \textcite{adam_no_2019} states that optimising a program which runs on a single core will eventually lead to a performance plateau as no further optimisations can be done. Therefore, these algorithms need to utilise the other cores on a processor. In some cases the speed-up achieved by this is still not large enough and another approach is needed. One of these approaches is the utilisation of a Graphics Processing Unit (GPU) to further increase the performance. \textcite{michalakes_gpu_2008} have shown a noticeable speed-up when using the GPU for weather simulation. In addition to simulation GPU acceleration also can be found in other places like networking \parencite{han_packetshader_2010} or structural analysis of buildings \parencite{georgescu_gpu_2013}.
With these successful implementations of GPU acceleration, this thesis also attempts to improve the performance of evaluating mathematical equations using GPUs. The baseline to compare against is an expression evaluator running in parallel on the CPU. (talk a bit more about what will be attempted I think. Look at other papers to see what they write in this section.)
\section{Research Question}
What are the research questions and how they will be answered
\section{Methodology}
Will give an overview of the chapters and what to expect