\title{cs378: Concurrency: GPU K-Means Lab 4 Writeup Template}
\author{
        You \\
        Department of Computer Science\\
        UT Austin
}
\date{\today}

\documentclass[9pt]{article}
\usepackage{graphicx}
\usepackage[margin=1.2in]{geometry}

\begin{document}
\maketitle

\section{Graph}\label{graph}

\begin{figure}[t]
  \centering
  \includegraphics[width=.9\textwidth]{lab4-random-perf.png}
  \caption{Speedup over sequential-CPU for different GPU and CPU implementations
  of K-Means. \emph{NOTE: the data in this graph are random. If your data are different 
  that's GOOD.}}
\end{figure}
\label{fig:graphs}

\emph{Using the random-n2048-d16-c16.txt, random-n16384-d24-c16.txt, and 
random-n65536-d32-c16 sample inputs, create graphs of speedup 
over your sequential CPU kmeans finding 16 centroids (see lab for other parameters).
Include your best performing multi-threaded CPU 
k-means, basic CUDA, CUDA with shared memory, and any additional extra credit 
optimizations you might have explored (successful or not). Be sure to label the
graph clearly. In this sample writeup, all graphs are combined into one grouped 
bar graph: it is fine to do it this way, or to provide separate graphs. }


Questions to answer:
\begin{itemize}
\item Report the GPU hardware details, CPU hardware details, and OS version on the machine where you did your measurements.
\item Which of your implementations is fastest? Does it match your expectations of which should be fastest? Estimate the best-case performance speedup your CUDA implementations should have based on the number of threads in your program and the number of processing contexts actually supported by your hardware. How far of that prediction is your best-case performance?
\item Which of the parallel implementations is slowest, and does it match your expectations? Why or why not?
\item What fraction of the end-to-end runtime in your CUDA versions is spent in data transfer?
\item How much time did you spend on the lab?
\end{itemize}  

\bibliographystyle{abbrv}
%\bibliography{main}

\end{document}
This is never printed
