added thesis structure
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

This commit is contained in:
2025-01-04 10:38:27 +01:00
parent 8d129dbfcc
commit 9702fe2343
30 changed files with 3101 additions and 0 deletions

View File

@ -0,0 +1,33 @@
\chapter{Concept and Design}
\label{cha:conceptdesign}
introduction to what needs to be done. also clarify terms "Host" and "Device" here
\section[Requirements]{Requirements and Data}
short section.
Multiple expressions; vars for all expressions; params unique to expression; operators that need to be supported
\section{Interpreter}
as introduction to this section talk about what "interpreter" means in this context. so "gpu parses expr and calculates"
\subsection{Architecture}
talk about the coarse grained architecture on how the interpreter will work. (.5 to 1 page probably)
\subsection{Host}
talk about the steps taken to prepare for GPU interpretation
\subsection{Device}
talk about how the actual interpreter will be implemented
\section{Transpiler}
as introduction to this section talk about what "transpiler" means in this context. so "cpu takes expressions and generates ptx for gpu execution"
\subsection{Architecture}
talk about the coarse grained architecture on how the transpiler will work. (.5 to 1 page probably)
\subsection{Host}
talk about how the transpiler is implemented
\subsection{Device}
talk about what the GPU does. short section since the gpu does not do much

View File

@ -0,0 +1,7 @@
\chapter[Conclusion]{Conclusion and Future Work}
\label{cha:conclusion}
Summarise the results
\section{Future Work}
talk about what can be improved

View File

@ -0,0 +1,14 @@
\chapter{Evaluation}
\label{cha:evaluation}
\section{Test environment}
Explain the hardware used, as well as the actual data (how many expressions, variables etc.)
\section{Results}
talk about what we will see now (results only for interpreter, then transpiler and then compared with each other and a CPU interpreter)
\subsection{Interpreter}
Results only for Interpreter
\subsection{Transpiler}
Results only for Transpiler
\subsection{Comparison}
Comparison of Interpreter and Transpiler as well as Comparing the two with CPU interpreter

View File

@ -0,0 +1,13 @@
\chapter{Implementation}
\label{cha:implementation}
\section{Technologies}
Short section; CUDA, PTX, Julia, CUDA.jl
Probably reference the performance evaluation papers for Julia and CUDA.jl
\section{Interpreter}
Talk about how the interpreter has been developed.
\section{Transpiler}
Talk about how the transpiler has been developed

View File

@ -0,0 +1,10 @@
\chapter{Introduction}
\label{cha:Introduction}
Introduction into topic and why someone would want to evaluate expressions on the GPU. Also include "Non-Goals"
\section[Research Question]{Research Question and Methodology}
What are the research questions and how they will be answered
\section{Overview}
Will give an overview of the chapters and what to expect

View File

@ -0,0 +1,19 @@
\chapter{Fundamentals and Related Work}
\label{cha:relwork}
\section{Equation learning}
Section describing what equation learning is and why it is relevant for the thesis
\section[GPGPU]{General Purpose Computation on Graphics Processing Units}
Describe what GPGPU is and how it differs from classical programming. talk about architecture (SIMD) and some scientific papers on how they use GPUs to accelerate tasks
\subsection[PTX]{Parallel Thread Execution}
Describe what PTX is to get a common ground for the implementation chapter. Probably a short section
\section{GPU Interpretation}
Different sources on how to do interpretation on the gpu (and maybe interpretation in general too?)
\section{Transpiler}
talk about what transpilers are and how to implement them. If possible also gpu specific transpilation. Also talk about compilation and register management. and probably find a better title