Saturday, December 10, 2011

Time step bug solved

I forgot to mention yesterday that I managed to figure out what was causing that bug.  I was sending a float* to the device, but the device was interpreting it as a just a float.  I'm surprised this wasn't a compile time error because the signatures of the command in my .cpp file and .cu file did not match.

Moving on.

Thursday, December 8, 2011

A GPU simulation at last!

Yesterday I finally managed to get around all the various compile and run-time errors, and actually get an AI simulation running on the GPU using steersuite!  This is just the simple AI, and so I have many more hard hours to go in order to get something really worth getting excited about, but after weeks of little to no measurable progress this is pretty huge. 

That said I still have an annoying bug that mystifies me.  The simulation runs fine if I hard-code a time-step on the device, but this isn't ideal because the time-step is not actually a constant.  If I try to send down the actual value of the time-step to the device, the simulation does not move, as if it's paused.  I eventually discovered that somewhere along the line the value I sent to the device was being decreased by many many orders of magnitude.  I would send a value of .049, and the device would receive a value of .49e-39.  I would like to resolve this issue before I move on to a more complicated steering algorithm, but I also don't want to spend too much time on it when I have so many other things to do.

Friday, December 2, 2011

Progress at last! Sort of...

So my code compiles, and even runs sort of.  The error I'm getting now if an error that steersuite actually catches itself, so I feel like I must be making progress.  Any day now I'll actually run a for real GPU simulation.