Week 2 Progress Report


Familiarized myself with CUDA concepts by going through some online tutorials, the CUDA manual, and some videos that were posted online. Attempts were also made to familiarize myself with parallel algorithms in the theoretical sense and draw distinction between theory and implementation.

I have read a few papers about Google’s map reduce and Apache’s hadoop in the past month, and many of the concepts can be extended to CUDA. In fact, on the CUDA website, they link to a paper that discusses attempts to write a translator from map/reduce to CUDA with reported 157x increase in performance.

Lectures Watched

The internet is littered with quality video lectures that are easier to understand than standard documentation. I usually opt for such forms of media whenever possible.

I was able to locate video lectures relating to CUDA that were originally meant for people attending Workshop on General Purpose Computation on Graphics Processing Units in Astronomy and Astrophysics at Institute for Advanced Study in Princeton. I thus watched the following lectures:

I plan on completing the video lectures after dabbling with CUDA on my own. As an aside, video lectures exist from UIUC and can be found at the bottom of the CUDA website.


In an attempt to “liberate” myself from the SUN machine, I configured a virtual machine on my system to my liking. I have installed the CUDA toolkit and its visual profiler, Syszgy, and the WiiMote. The virtual machine was placed on b1.

I have also contacted Dr. Zoi Rapiti and got a TeX copy of the notes she promised. I plan to dissect the notes over the next few days and write a summary of what she talked about.

Dr. Francis also provided me with the IGL programs that needed to be ported to OGL. He also explained OpenGL’s lighting model.


Started migrating the IGL program to OGL.


Finished porting ltor-solo.c to OpenGL. This required using OpenGL materials. I am currently writing how I did that in a separate document. I also found references to Navier Stokes Equations in Wolfram’s New Kind of Science, as well as some of the papers Wolfram has published.

Went to Dr. Francis’s house an enjoyed quality barbecue. Thank you.


Most of the time was spent looking at the Navier Stokes equation, understand its parameters.

Papers Read


Read a few more pages about Navier Stokes equation, went through its derivation, and I am planning on writing the algorithm detailed in the Solid Fluids paper by Jos Stam. I have already read and understood the algorithm. All that is left is implementing it.

First CUDA group meeting (minus Chase) is today, and we plan on writing the matrix addition program.

Lectures Watched

Papers Read

Plan for Weekend


What is the policy on printing. I did print many pages, but that is because I have yet to activate my library card (they need two forms of ID and a copy of the sublease). Even if I do activate my library account, I doubt I would find antique or recent articles in the library.

  1. Angel, E., Shreiner, D., and Shreiner, V. 2007. An interactive introduction to OpenGL programming. In ACM SIGGRAPH 2007 Courses (San Diego, California, August 05 - 09, 2007). SIGGRAPH ’07. ACM, New York, NY, 1–124. DOI= http://doi.acm.org/10.1145/1281500.1281596

  2. Bridson, R., Fedkiw, R., and Muller-Fischer, M. 2006. Fluid simulation: SIGGRAPH 2006 course notes In ACM SIGGRAPH 2006 Courses (Boston, Massachusetts, July 30 - August 03, 2006). SIGGRAPH ’06. ACM, New York, NY, 1–87. DOI= http://doi.acm.org/10.1145/1185657.1185730