three_views.tex

Paper VIII: Packet Operator Algorithms, Exact Compilation, and GPU Realization

three_views.tex

Download original file

This is the original TeX manuscript source. Use the paper’s PDF for typeset equations.

Read the typeset paper

Skip source text

1 \begin{tikzpicture}[x=1cm,y=1cm,>=Stealth,line cap=round,line join=round]
2 \path[use as bounding box] (0,-.6) rectangle (14,4.8);
3 \node[font=\small,align=center,font=\small] at (1.76,4.5) {$A$: 36 visible entries};
4 \path[draw=black!30,fill=black!8] (0.2,3.28) rectangle (0.72,3.8);
5 \node[font=\small,align=center,font=\small] at (0.46,3.54) {$4$};
6 \path[draw=black!30,fill=black!8] (0.72,3.28) rectangle (1.24,3.8);
7 \node[font=\small,align=center,font=\small] at (0.98,3.54) {$2$};
8 \path[draw=black!30,fill=black!8] (1.24,3.28) rectangle (1.76,3.8);
9 \node[font=\small,align=center,font=\small] at (1.5,3.54) {$1$};
10 \path[draw=black!30,fill=black!8] (1.76,3.28) rectangle (2.28,3.8);
11 \node[font=\small,align=center,font=\small] at (2.02,3.54) {$1$};
12 \path[draw=black!30,fill=black!8] (2.28,3.28) rectangle (2.8,3.8);
13 \node[font=\small,align=center,font=\small] at (2.54,3.54) {$1$};
14 \path[draw=black!30,fill=black!8] (2.8,3.28) rectangle (3.32,3.8);
15 \node[font=\small,align=center,font=\small] at (3.06,3.54) {$1$};
16 \path[draw=black!30,fill=black!8] (0.2,2.76) rectangle (0.72,3.28);
17 \node[font=\small,align=center,font=\small] at (0.46,3.02) {$2$};
18 \path[draw=black!30,fill=black!8] (0.72,2.76) rectangle (1.24,3.28);
19 \node[font=\small,align=center,font=\small] at (0.98,3.02) {$4$};
20 \path[draw=black!30,fill=black!8] (1.24,2.76) rectangle (1.76,3.28);
21 \node[font=\small,align=center,font=\small] at (1.5,3.02) {$1$};
22 \path[draw=black!30,fill=black!8] (1.76,2.76) rectangle (2.28,3.28);
23 \node[font=\small,align=center,font=\small] at (2.02,3.02) {$1$};
24 \path[draw=black!30,fill=black!8] (2.28,2.76) rectangle (2.8,3.28);
25 \node[font=\small,align=center,font=\small] at (2.54,3.02) {$1$};
26 \path[draw=black!30,fill=black!8] (2.8,2.76) rectangle (3.32,3.28);
27 \node[font=\small,align=center,font=\small] at (3.06,3.02) {$1$};
28 \path[draw=black!30,fill=black!8] (0.2,2.24) rectangle (0.72,2.76);
29 \node[font=\small,align=center,font=\small] at (0.46,2.5) {$1$};
30 \path[draw=black!30,fill=black!8] (0.72,2.24) rectangle (1.24,2.76);
31 \node[font=\small,align=center,font=\small] at (0.98,2.5) {$1$};
32 \path[draw=black!30,fill=black!8] (1.24,2.24) rectangle (1.76,2.76);
33 \node[font=\small,align=center,font=\small] at (1.5,2.5) {$4$};
34 \path[draw=black!30,fill=black!8] (1.76,2.24) rectangle (2.28,2.76);
35 \node[font=\small,align=center,font=\small] at (2.02,2.5) {$2$};
36 \path[draw=black!30,fill=black!8] (2.28,2.24) rectangle (2.8,2.76);
37 \node[font=\small,align=center,font=\small] at (2.54,2.5) {$1$};
38 \path[draw=black!30,fill=black!8] (2.8,2.24) rectangle (3.32,2.76);
39 \node[font=\small,align=center,font=\small] at (3.06,2.5) {$1$};
40 \path[draw=black!30,fill=black!8] (0.2,1.72) rectangle (0.72,2.24);
41 \node[font=\small,align=center,font=\small] at (0.46,1.98) {$1$};
42 \path[draw=black!30,fill=black!8] (0.72,1.72) rectangle (1.24,2.24);
43 \node[font=\small,align=center,font=\small] at (0.98,1.98) {$1$};
44 \path[draw=black!30,fill=black!8] (1.24,1.72) rectangle (1.76,2.24);
45 \node[font=\small,align=center,font=\small] at (1.5,1.98) {$2$};
46 \path[draw=black!30,fill=black!8] (1.76,1.72) rectangle (2.28,2.24);
47 \node[font=\small,align=center,font=\small] at (2.02,1.98) {$4$};
48 \path[draw=black!30,fill=black!8] (2.28,1.72) rectangle (2.8,2.24);
49 \node[font=\small,align=center,font=\small] at (2.54,1.98) {$1$};
50 \path[draw=black!30,fill=black!8] (2.8,1.72) rectangle (3.32,2.24);
51 \node[font=\small,align=center,font=\small] at (3.06,1.98) {$1$};
52 \path[draw=black!30,fill=black!8] (0.2,1.2) rectangle (0.72,1.72);
53 \node[font=\small,align=center,font=\small] at (0.46,1.46) {$1$};
54 \path[draw=black!30,fill=black!8] (0.72,1.2) rectangle (1.24,1.72);
55 \node[font=\small,align=center,font=\small] at (0.98,1.46) {$1$};
56 \path[draw=black!30,fill=black!8] (1.24,1.2) rectangle (1.76,1.72);
57 \node[font=\small,align=center,font=\small] at (1.5,1.46) {$1$};
58 \path[draw=black!30,fill=black!8] (1.76,1.2) rectangle (2.28,1.72);
59 \node[font=\small,align=center,font=\small] at (2.02,1.46) {$1$};
60 \path[draw=black!30,fill=black!8] (2.28,1.2) rectangle (2.8,1.72);
61 \node[font=\small,align=center,font=\small] at (2.54,1.46) {$4$};
62 \path[draw=black!30,fill=black!8] (2.8,1.2) rectangle (3.32,1.72);
63 \node[font=\small,align=center,font=\small] at (3.06,1.46) {$2$};
64 \path[draw=black!30,fill=black!8] (0.2,0.68) rectangle (0.72,1.2);
65 \node[font=\small,align=center,font=\small] at (0.46,0.94) {$1$};
66 \path[draw=black!30,fill=black!8] (0.72,0.68) rectangle (1.24,1.2);
67 \node[font=\small,align=center,font=\small] at (0.98,0.94) {$1$};
68 \path[draw=black!30,fill=black!8] (1.24,0.68) rectangle (1.76,1.2);
69 \node[font=\small,align=center,font=\small] at (1.5,0.94) {$1$};
70 \path[draw=black!30,fill=black!8] (1.76,0.68) rectangle (2.28,1.2);
71 \node[font=\small,align=center,font=\small] at (2.02,0.94) {$1$};
72 \path[draw=black!30,fill=black!8] (2.28,0.68) rectangle (2.8,1.2);
73 \node[font=\small,align=center,font=\small] at (2.54,0.94) {$2$};
74 \path[draw=black!30,fill=black!8] (2.8,0.68) rectangle (3.32,1.2);
75 \node[font=\small,align=center,font=\small] at (3.06,0.94) {$4$};
76 \draw[black!35] (4,0.2) -- (4,4.35);
77 \draw[line width=.6pt] (4.4,0.9) -- (8.1,0.9);
78 \node[font=\small,align=center] at (6.25,4.15) {stored scalars};
79 \path[draw=black,fill=black!12,line width=.6pt] (4.844,0.9) rectangle (5.806,3.4);
80 \node[font=\small,align=center,font=\scriptsize] at (5.325,0.6) {dense};
81 \node[font=\small,align=center,font=\scriptsize] at (5.325,3.62) {$36$};
82 \path[draw=black,fill=black!12,line width=.6pt] (6.694,0.9) rectangle (7.656,2.566667);
83 \node[font=\small,align=center,font=\scriptsize] at (7.175,0.6) {factors};
84 \node[font=\small,align=center,font=\scriptsize] at (7.175,2.786667) {$24$};
85 \draw[black!13,line width=.25pt] (9,0.8) -- (9,3.6);
86 \draw[] (9,0.74) -- (9,0.86);
87 \node[font=\small,align=center,font=\scriptsize] at (9,0.54) {0};
88 \draw[black!13,line width=.25pt] (10.466667,0.8) -- (10.466667,3.6);
89 \draw[] (10.466667,0.74) -- (10.466667,0.86);
90 \node[font=\small,align=center,font=\scriptsize] at (10.466667,0.54) {2};
91 \draw[black!13,line width=.25pt] (11.933333,0.8) -- (11.933333,3.6);
92 \draw[] (11.933333,0.74) -- (11.933333,0.86);
93 \node[font=\small,align=center,font=\scriptsize] at (11.933333,0.54) {4};
94 \draw[black!13,line width=.25pt] (13.4,0.8) -- (13.4,3.6);
95 \draw[] (13.4,0.74) -- (13.4,0.86);
96 \node[font=\small,align=center,font=\scriptsize] at (13.4,0.54) {6};
97 \draw[black!13,line width=.25pt] (9,0.8) -- (13.4,0.8);
98 \node[font=\small,align=center,anchor=east,font=\scriptsize] at (8.84,0.8) {0};
99 \draw[black!13,line width=.25pt] (9,2.2) -- (13.4,2.2);
100 \node[font=\small,align=center,anchor=east,font=\scriptsize] at (8.84,2.2) {5};
101 \draw[black!13,line width=.25pt] (9,3.6) -- (13.4,3.6);
102 \node[font=\small,align=center,anchor=east,font=\scriptsize] at (8.84,3.6) {10};
103 \draw[->,line width=.6pt] (9,0.8) -- (13.52,0.8);
104 \draw[->,line width=.6pt] (9,0.8) -- (9,3.72);
105 \node[font=\small,align=center,font=\scriptsize] at (11.2,0.25) {error budget};
106 \node[font=\small,align=center,anchor=west,font=\scriptsize] at (9,4) {toy compilation cost};
107 \path[fill=black] (9,3.6) circle (0.075);
108 \path[fill=black] (10.466667,3.04) circle (0.075);
109 \path[fill=black] (11.933333,2.76) circle (0.075);
110 \path[fill=black] (13.4,1.08) circle (0.075);
111 \draw[black!35] (8.65,0.2) -- (8.65,4.35);
112 \end{tikzpicture}

Back to source controls

Other PDFs for this work

Original file and source record

This copy matches the recorded source file. Its publication here does not change the work’s review status.

SHA-256: 72fc54eb5ac155f70b827885c3ac90f1ca3ff68c49efbc61eaf1bf39a4834eba

Original source on GitHub

Back to Paper VIII: Packet Operator Algorithms, Exact Compilation, and GPU Realization