 Implement a parallel discreteevent simulation of your choosing
 More on discrete event simulations: http://en.wikipedia.org/wiki/Discrete_event_simulation
 Parallel discreteevent simulation
 Common systems to model include queueing service systems such as network traffic, bank tellers, or car washes, but how about...
 MTA transit (starting with the 123 subway lines)
 Starbucks or your favorite takeout restaurant
 Some other system of your choosing
 Parallelizing support vector machines
 SVM overview here
 Related papers:
 Bryan Catanzaro, Narayanan Sundaram and Kurt Keutzer, “Fast Support Vector Machine Training and Classification on Graphics Processors”. International Conference on Machine Learning 2008.
 Implement a X10 heart simulation
 Overview of simulation of human systems (pdf)
 There is an existing Titanium implementation described here (doc)
 Parallelize Huffman decode
 The Huffman decode step is the serial bottleneck in JPEG decode
 Overview here
 Possible: Parallelize kernel in rendering a full head of hair (ongoing, getting info from Prof. Eitan Grinspun)
 Implement a parallel SAT solver and compare performance with entries in SAT competition
 Parallel Go player
 Parallel face recognition algorithm
 See implementation on NVIDIA GPUs (pdf)
 Implement a parallel SAT solver and compare performance with entries in SAT competition
 Improve parallel performance, scalability of standard datamining programs on Hadoop
 Implement a workstealing scheduler. We will be discussing various implementation techniques in class.
 Propose your own!
