Difference between revisions of "GPU610/OctoPig"

From CDOT Wiki
Jump to: navigation, search
(Team Members)
(Chad's Profiling Findings)
Line 19: Line 19:
 
====Chad's Profiling Findings====
 
====Chad's Profiling Findings====
  
Chad, fill this in.
+
I started with [http://pointersgonewild.wordpress.com/2012/12/31/turing-drawings/ this] blog post I found and the demo that Maxime Chevalier-Boisvert (the original creator) posted as a github page [http://maximecb.github.com/Turing-Drawings/# here]. Make sure to press random a few times to see the different results. She also posted the source code [https://github.com/maximecb/Turing-Drawings here], the only issue was that it's all written in JavaScript. My biggest task was to somehow port the code into C++. The biggest challenge was migrating from a loosely typed language to a strongly typed one, but I managed in the end to port and compile the code. I'm sure there's a lot of cleaning up I can do with my C++ code, but this first assignment was more just a proof of concept than anything else.
 +
 
 +
I decided to scrap the randomization part of the program for now because I want to have consistent profile results every run. I chose to focus on the seed found [http://maximecb.github.com/Turing-Drawings/#6,4,1,2,0,1,3,1,4,3,3,1,3,0,5,2,1,4,2,0,2,1,1,4,1,0,1,3,0,5,1,3,1,1,3,0,1,1,2,3,3,5,1,1,3,1,0,3,1,2,1,1,1,1,3,3,3,2,2,2,3,3,2,1,3,5,3,0,2,3,2,4,1,1 here].
  
  
Line 36: Line 38:
  
 
'''Resources:'''
 
'''Resources:'''
 
 
  
 
=== Assignment 2 ===
 
=== Assignment 2 ===
 
=== Assignment 3 ===
 
=== Assignment 3 ===

Revision as of 23:14, 20 February 2013


GPU610/DPS915 | Student List | Group and Project Index | Student Resources | Glossary

TBA

Team Members

  1. Chad Pilkey
  2. Justin Robinson

Email All

Progress

Assignment 1

We began by profiling two things: a string-comparison algorithm, and a program which develops quasi-random visuals from an initial seed using a Turing Machine algorithm.


Justin's Findings

String comparison was not a good choice. If anything, it makes more sense to do string comparison in a serial fashion than in parallel. Comparing two strings of over 13,000 characters each in such a fashion as to force the algorithm to compare them all just barely results in a runtime of 0.001 seconds.


Chad's Profiling Findings

I started with this blog post I found and the demo that Maxime Chevalier-Boisvert (the original creator) posted as a github page here. Make sure to press random a few times to see the different results. She also posted the source code here, the only issue was that it's all written in JavaScript. My biggest task was to somehow port the code into C++. The biggest challenge was migrating from a loosely typed language to a strongly typed one, but I managed in the end to port and compile the code. I'm sure there's a lot of cleaning up I can do with my C++ code, but this first assignment was more just a proof of concept than anything else.

I decided to scrap the randomization part of the program for now because I want to have consistent profile results every run. I chose to focus on the seed found here.


Analysis: Of our two selections, the choice to move forward with the pattern generator is clear.

Difficulties Met:

One apparent difficulty is the need to port the pattern-generator from Javascript into C in order to make use of CUDA.


Summary:

  • String comparison is not an efficient use of parallel programming practises.


Resources:

Assignment 2

Assignment 3