Project Ideas

Topics that should be completed by graduate students.


Thread Building Blocks
http://www.threadingbuildingblocks.org/
Present basics from the tutorial.
Create a program that demonstrates TBB.

MPICH
http://www.mcs.anl.gov/research/projects/mpich2/documentation/files/mpich2-1.2.1-userguide.pdf
Present basics from user guide.
Create a program that demonstrates MPICH.

OpenMP
https://computing.llnl.gov/tutorials/openMP/
Present basics from the tutorial.
Create a program that demonstrates TBB.

Xen
http://www.intel.com/technology/itj/2006/v10i3/3-xen/1-abstract.htm
Briefly explain Intel VT and how Xen can take advantage of it
Demonstrate Xen running multiple OSs on a laptop

Java Threads
http://www.javabeginner.com/learn-java/java-threads-tutorial
Explain how Java Threads work.
Create a program that demonstrates Java Threads calculating an interesting problem, e.g., matrix multiplation.

Linux System Calls
http://linux-digest.blogspot.com/2009/01/your-own-system-call-in-5-easy-steps.html
Explain how Linux system calls work.
Create your own system call in linux, compile the kernel, and demonstrate the system call on a laptop or SSH into your own machine.


Undergrad Level topics

Papers
ACM Case Study 2010. Photoshop scalability: keeping it simple. Commun. ACM 53, 10 (Oct. 2010), 32-38. DOI= http://doi.acm.org/10.1145/1831407.1831423


Plan 9: http://www.cs.bell-labs.com/sys/doc/9.html

Microkernel operating system architecture and Mach: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.80.3969

A Fast File System For UNIX: http://www.cs.ucsb.edu/~ravenben/papers/coreos/ffs.pdf

Topics:
Java Virtual Machine

.net Common Language Runtime