CPT S 483: Final White Paper (instructions and guidelines)

When to submit?                     Noon PDT, December 15, 2015 (Tuesday of Finals week)
Where to submit?                    OSBLE dropbox AND email ananth@eecs.wsu.edu (do both before deadline)
Will there be any extension?    No
Assignment type:                      Individual
Submission file type:                Each submission will be accepted only as a single PDF


This course has a white paper required for all students instead of a final exam. The paper is due at or before Noon of December 16, 2015 (Tuesday of the Finals week). This is an individual assignment (i..e., not team-based).

How it works?

Step 1)  Problem Identification (Due date: November 12, 2015)

You need to pick a PROBLEM first that has a clear potential to benefit from some form of parallelism (e.g., distributed memory, or multicores, or GPUs, etc.). You are encouraged (but not required) to pick a problem that may be related to what you are doing in any other class or for your own thesis research. (Please come see me if you are having trouble identifying a concrete problem.) You will have to get the problem statement approved by me before proceeding on to work on it. It is required that each of you consult with me on this problem identification step, and that we settle on the problem to work on by the above due date.

Step 2) Work on the problem (Recommended completion date: November 30, 2015)

In this phase you are supposed to work on the problem, based on whatever we individually settled upon - develop key ideas, implement, test, or survey papers, etc. This needs to follow our mutually agreed upon expectations from Step 1.

Step 3) Review White Paper (Recommended timeframe: Dead week)

During the dead week you will have the opportunity to go over your white paper (partial or complete) with me for comments and feedback. I can suggest ways to improve it. This doesn't need to happen during the class time. We can set up individual times (please email to schedule).

Step 4) Write and submit white paper (Hard submission deadline: Noon PDT, December 15, 2015)

The white paper should be NOT EXCEED 5 pages including any required references. It should be written like a short scientific paper. The document should use 1.5 line spacing, 11pt Times New Roman font (or comparable font). The final submission should be uploaded as one single PDF.

The white paper should be organized as follows:
Section 1) Introduction
        - provide problem background, motivation (why parallelization is needed)

Section 2) Problem Statement 
        - problem definition (what is the input? what is the output?), use a formal definition to the extent possible. We used formal ways to define a problem in the class. Look at parallel prefix sum or other problems for example. Please use those as examples.

Section 3) Key Challenges in Parallelization
        - State briefly why parallelization poses challenges for this problem

Section 4) Proposed Approach(es)
        -  Propose your key ideas and approach elements here. It is encouraged that you describe your algorithm precisely in the form of a pseudocode. Use figures to help illustrate and articulate the main ideas clearly. This section should also do a complexity analysis of your algorithm - space and run-time complexity. 

Section 5) Critical Evaluation of the Proposed Approach(es)
         - In clearly identified bulleted list, identify the potential strengths and weaknesses of your own approach. For those white papers for which there is an implementation (as we agreed in step 1), this would in sense be your experimental results and evaluation section. For those who did not do an implementation (as we agreed in step 1), this section should discuss what are the pros and cons of your proposed approach if you were to implement and apply it.

Section 6) References
        - This section should consist of citations to any literature that you have cited in the main text (any of the above sections). The bibliography format should be that of IEEE format (other similar ones okay), which means that each reference will be numbered and the numbered entries would appear like this:

[1] [author1_initial}. author1_Lastname,
[author2_initial}. author2_Lastname. "Paper title", {Conference or Journal name}, {page and volume numbers}, {Year of publication}.

If you look up papers on Google Scholar there will be a CITE link next to each paper. If you click that it will show you different formats. You can use one of them.



Confirmed List of White Paper Topics (more details to follow):
Please check and report any discrepancies!

Name Topic Problem statement? Quad chart
Template
Manjot Brar Parallel build (DAG) yes Brar
Dustin Crossman Robotic swarm simulation
yes

Sam Fields Parallel connected component detection
Fields
Priyanka Ghosh Distributed hash tables
Ghosh
Matthew Godmere Multithreaded Vision Processing yes Godmere
Zach Hamm


James Jessen Parallel radix sort yes
Methun Kamruzzaman GPUs for plant biology
Kamruzzaman
Josh Kolasch


Alex Koszarek

Koszarek
Dongjin Lee NoC routing yes

Xian Li NoC simulator
yes
Li
Ritche Long Multithreaded DBSCAN (density clustering)
Long
Rae Marks Parallelizing Huffman encoding yes
Marks
Sumit Purohit Community detection on Spark yes Purohit
Carson Tolleshaug

Tolleshaug
Eric Thomas Parallel histogram yes
Joseph Villareal Scheduling for heterogeneous systems

Forest Weston Parallel object recognition in images yes
Weston