forked from BeocatKSU/raspberrypi-cluster-software
-
Notifications
You must be signed in to change notification settings - Fork 0
/
handout.tex
72 lines (66 loc) · 3.13 KB
/
handout.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
\documentclass[letterpaper,10pt]{article}
\pagestyle{empty}
\usepackage{color}
\usepackage[margin=0.9in]{geometry}
\usepackage{hyperref}
\usepackage{graphicx}
\usepackage[scaled]{helvet}
\renewcommand*\familydefault{\sfdefault}
\usepackage[T1]{fontenc}
\begin{document}
\begin{minipage}[t]{0.33\textwidth}
\begin{center}
\textcolor[RGB]{81,40,136}{\Large{\textbf{Kansas State University}}}
\end{center}
\end{minipage}
\begin{minipage}[t]{0.33\textwidth}
\begin{center}
\textcolor[RGB]{81,40,136}{\Large{\textbf{Computing and Information Sciences}}}
\end{center}
\end{minipage}
\begin{minipage}[t]{0.33\textwidth}
\begin{center}
\textcolor[RGB]{81,40,136}{\Large{\textbf{Beocat}}}
\end{center}
\end{minipage}
\section{Raspberry Pi Cluster Computing (Beokitten)}
\subsection{Theory/Hardware}
This was mostly done as a demonstration tool as to what a Beowulf-style compute cluster consists of.
\begin{enumerate}
\item We have readily available computing resources running Linux (6 Raspberry Pis)
\item We have some form of networking interconnect allowing the computing resources to communicate (100Mb Ethernet in this case)
\item We have a ``headnode'' handing out the work to be done (The Raspberry Pi sitting on its own)
\item We have 5 ``compute nodes'' running the simulations and sending their results to be viewed (The Raspberry Pis in the tower)
\end{enumerate}
Beowulf style clusters are economical because we can use off-the-shelf components to produce remarkable results, and use multiples of those components to get more work done than any one would on its own.
In this case, the fractals could not be calculated and displayed as quickly if we were only using one Pi.
Each fractal takes about 2 seconds to calculated, and we are displaying new ones every half second.
\subsection{Software}
These Raspberry Pis are running Raspbian, a distribution of Debian Linux for the Pis.
On them, we are running Pypy, a version of Python that was written in Python and compiled into a fully functional Linux binary.
The advantage of Pypy is that it can do JIT allowing even greater speedups than running this in CPython.
The fractal generation code can be viewed/used/abused/improved at \url{https://github.com/BeocatKSU/raspberrypi-cluster-software} or with the QR Code below
\subsection{Cost}
\begin{center}
\begin{tabular}{|l|r|l|r|}
\hline
\textbf{Quantity}&\textbf{Unit Cost}&\textbf{Description}&\textbf{Total}\\
\hline
6&\$35.00&Raspberry Pi&\$210.00\\
6&\$7.71&SD Cards&\$46.26\\
6&\$1.03&USB Cables&\$6.18\\
6&\$0.53&Ethernet Cables&\$3.18\\
4&\$5.95&Power Supplies&\$23.80\\
1&\$7.91&100Mb Switch&\$7.91\\
1&\$2.50&HDMI Cable&\$2.50\\
?&\$0.00&Assorted Legos (preexisting)&\$0.00\\
\hline
&&&\textbf{\$299.83}\\
\hline
\end{tabular}
\end{center}
\subsection{QR Code}
\begin{center}
\includegraphics[width=100pt]{qrcode.png}
\end{center}
\end{document}