Skip to content

Commit 81d83f4

Browse files
paulkocialkowskitpetazzoni
authored andcommitted
slides: graphics: Add introduction slides
Signed-off-by: Paul Kocialkowski <[email protected]>
1 parent 101b831 commit 81d83f4

File tree

1 file changed

+80
-0
lines changed

1 file changed

+80
-0
lines changed
Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
\input{../common/graphics-title.tex}
2+
3+
\titleframe
4+
5+
\begin{frame}{\trainingtitle{} training overview}
6+
7+
Goals:
8+
\begin{itemize}
9+
\item Understand how \textbf{pictures and colors} are represented in digital systems
10+
\item Understand the role and operation of different \textbf{graphics hardware devices}
11+
\item Know about the good practices for \textbf{performance and system integration}
12+
\item Distinguish the different \textbf{parts of the graphics stack} and their individual role
13+
\item Know about the various \textbf{implementations} used in Linux-based stacks
14+
\item Know about the \textbf{modern replacements} to legacy technologies
15+
\end{itemize}
16+
~\\
17+
18+
Prerequisites:
19+
\begin{itemize}
20+
\item Familiarity with basic concepts about digital hardware
21+
\item Familiarity with the C programming language and low-level programming
22+
\end{itemize}
23+
24+
\end{frame}
25+
26+
\begin{frame}{Base Theory and Concepts About Graphics}
27+
28+
Lecture:
29+
\begin{itemize}
30+
\item \textbf{Image Representation} \textit{how pictures are represented spatially}
31+
\item \textbf{Color Representation} \textit{how colors are represented}
32+
\item \textbf{Layouts and Formats} \textit{how pictures are stored in memory}
33+
\item \textbf{Pixel Drawing} \textit{basic methods for drawing pixels}
34+
\item \textbf{Pixel Operations} \textit{basic operations on pixels}
35+
\end{itemize}
36+
~\\
37+
38+
Demos:
39+
\begin{itemize}
40+
\item Frequency domain visualization example
41+
\item Pixel drawing and operations implementation walk-through
42+
\end{itemize}
43+
44+
\end{frame}
45+
46+
\begin{frame}{Hardware Aspects}
47+
Lecture:
48+
\begin{itemize}
49+
\item \textbf{Overview} \textit{different types of hardware components}
50+
\item \textbf{Pipelines} \textit{connecting hardware components together}
51+
\item \textbf{Display Devices} \textit{how display technologies work}
52+
\item \textbf{Display Interfaces} \textit{transmitting pixels over to displays}
53+
\item \textbf{Render Accelerators} \textit{hardware architectures for rendering pixels}
54+
\item \textbf{System Integration, Memory and Performance}\\\textit{interactions between graphics devices, the CPU and the system}
55+
\end{itemize}
56+
\end{frame}
57+
58+
59+
\begin{frame}{Software Aspects}
60+
Lecture:
61+
\begin{itemize}
62+
\item \textbf{Stack Overview} \textit{the software components and their relationships}
63+
\item \textbf{Linux Kernel: TTY} \textit{dealing with graphics/input seats}
64+
\item \textbf{Linux Kernel: Framebuffer Device} \textit{the deprecated display uAPI}
65+
\item \textbf{Linux Kernel: DRM} \textit{the modern display uAPI}
66+
\item \textbf{Userspace: X Window} \textit{the deprecated display server API}
67+
\item \textbf{Userspace: Wayland} \textit{the modern display server API}
68+
\item \textbf{Userspace: Mesa 3D} \textit{the reference 3D stack implementation}
69+
\end{itemize}
70+
~\\
71+
Demos:
72+
\begin{itemize}
73+
\item DRM uAPI implementation walk-through
74+
\item Wayland implementation walk-through
75+
\item Other illustration examples
76+
\end{itemize}
77+
\end{frame}
78+
79+
\input{../slides/first-slides/paul-kocialkowski.tex}
80+
\input{../slides/about-us/about-us.tex}

0 commit comments

Comments
 (0)