Server Crash

July 25th, 2010 by Barrett

Unfortunately about 36hours ago the Hard Drive in my web server decided to end its little spinning life. Although the site has been restored from a couple of backups some of the file download links are not working.

The files are still available but I need to fix the download links - please be patient :)

For anyone running download monitor out there, the newer update changed the DB table names. Don’t do what I did or rather didn’t….  and forget to change the SQL backup scripts to reflect these changes.

PC Design Lab - new case

July 7th, 2010 by Barrett

I just got an email update from PC Design Lab regarding their new case. Those of you who follow the blog will know my ComputeCube machine is built into their QMicro2 case, which has been really good with only one or two tiny niggles. Although in fairness they are caused by the the amount of power cables and the heat emitted by the Asus rampage 2 gene northbridge arrangement and the Tesla C1060.

The new case looks good and their have adopted the suggestions from their clients. You may have a look at the new pre-order case here.  Even though they have raised the cage I would have liked it to be slightly taller to help with airflow over the GPU’s and power cable routing.  Strangely they mention it can now support 750w power supplies, but I have been running a 1250w one in the older case for a while now with no problems.

The radiator bracket is a really good idea and would have helped sort out the Rampage 2 Genes overheating northbridge rather nicely.

If you are looking for a SFF case in my opinion there is nothing better out there and this new model raises the bar even further.  Now if I could only get my hands on the new one and a watercooling kit :)

Windows 7

July 6th, 2010 by Barrett

While ordering a replacement power supply for one of my machines I decided to add a Windows 7 to the shopping cart.

This was in no small part prompted by the NVidia parallel nsight addin for visual studio which would not work on my XP machines. An additional contributing factor was the lack of SP3 for Windows XP Pro x64. Of course the new office 2010 will only run on XP SP3, Vista and Windows 7.

Having had a brief and scary encounter with Windows Vista I am pleasantly surprised with the new version of Windows.  Microsoft have done a good job with this one.

The installation process had to be a “clean” one as there is no upgrade path from winXP x64. I took a full backup of my “ComputeCube” machine and without bothering to format the C drive just popped the DVD in and rebooted.

Read the rest of this entry »

Site Changes

June 30th, 2010 by Barrett

Yes….. I sold out.   There is now a google adwords space on the top right on the sidebar and at the bottom of individual posts.  I went for what I think is the most unobtrusive design they offered.

Google have emailed me adwords related stuff for ages and I have resolutely resisted as this site is in no way a marketing site. However, in the last few months the site and related equipment failures (power supply, hard drive, mail server etc) have cost me quite a bit and hopefully this will help me recoup some of that.

Looking at what they seem to be placing as ads on the pages I have been starting to wonder how good their contextual advertising is… still it’s early days.

In related site news the forums are now permanently removed, although there are still some links left over as I write this.  With the amount of spam / hacking etc its just not worth maintaining a forum on a small site like this.

Catch up

June 22nd, 2010 by Barrett

No apologies for the long delays between posts, or even checking the blog. It just has to fit in with life at the moment and there is so much going on!

Those of you who have left comments on the blog and emails for me should have got an answer last night or this morning. A bit of a delay for some of you.  I do apologise for those of you who sent an email and haven’t got a reply back. My computer that used to handle all my email died and I haven’t had a chance to fix it yet. I think its just the power supply…. hopefully! so will get the emails back in a few weeks when I eventually get around to fixing it.

I’ve subsequently upgraded my email server - so any forthcoming mails will get to me. 

In development work I’ve been working on my SPH simulations, and some GP stuff whenever I get a chance. GP stuff is traditionally recursive - well the equation trees anyway and have needed a substantial amount of reworking to get working efficiently on the GPU.

Speaking of recursive…. in order to be Turing Complete (assuming infinite memory for now) do you need to support / include recursion? Some posters on certain forums seem to think it is needed, but personally I can’t see why?  Most recursion with a bit of effort can be iterative - although possibly not very pretty or efficient.

For example. A GPU doesn’t really support recursion*, but I would consider cuda / GPU combination as Turing complete. Admittedly not very efficient in certain cases - single thread for example. And again ignoring the infinite memory issue.  *You can if you implement your own stack type system in global memory…

I’d be interested in knowing others views on this - email the normal place or comment here :)

To all the regular readers of the blog - anyone else being amazed by the absolute explosion of GPU / CUDA related code / products / hardware.  Very exciting indeed!

SPH Screenshot

March 19th, 2010 by Barrett

Finally the promised screenshot :)

SPH with symmetry

SPH with symmetry

It’s not all that impressive to look at as I’ve restricted all the particles to 2d although it does use 3d calculations. I do this to help look for any issues in the code as I find it hard to spot errors in a 3d particle rendering.

This particular screenshot has 64000 particles that have been dropped into the box in a column formation and are now starting to slosh around at the bottom.

The unusual thing with regards to a CUDA implementation is that it is using symmetry in the interactions thereby decreasing the memory/processing load. I’ve still got more work to do but its showing a lot of promise in running superfast particle interaction simulations.

I’ve aso been doing a bit of work on my second version of my raytracer. I’ve once again stepped away from KD-trees and Octrees and am using a type of BVH, ray marching system. Screenshots once I have a decent scene rendered :)

In other news I’m now compiling all my new C++/CUDA code in 64bit with the CUDA 3.0 beta. Although I think putting in c++ object support into CUDA was a mistake the new version does produce decent code.

Poor neglected blog…

February 26th, 2010 by Barrett

Nearly 3 months since my last post :(

Work has been exceptionally busy: In the last two months on top of my normal product maintenance and improvement duties I have prepared and filed a patent application, architected and largely completed a distributed, resilient document processing framework and found a bit of time to eat and sleep!

I’ve noticed other blogs in the raytracing / graphics / visualization space have been very quiet lately - maybe everyone else is also working like crazy?

Not a huge amount has happened in my raytracer and SPH projects although got some interesting effects running with a non-uniform mass particle system when I had time over Christmas. Screenshots soon.

I do have the beta release of Nexus (the NVidia Visual Studio plugin)  but sadly it only runs on Windows Vista or Windows 7 which leads nicely on to my next point:

I am a bit irritated with Microsoft for two reasons:  Even though I purchased a 64 bit Windows XP professional about 6 or 8 months ago there is no upgrade path to Windows 7…  Secondly even though visual studio 2008 standard has a switch for openMP it doesnt contain the openmp headers. Only the more expensive professional version does. Not something that was immediately obvious from the documentation before I purchased…

Although I also run Linux (centos) I prefer to develop on a Windows GUI - less buggy and more responsive than gnome / kde in my opinion. For running code the Linux os does usually win though! I would really like to run Nexus so am a bit stuck about what to do….  Succumb and buy Windows 7 and get Nexus on Visual Studio? or just forget entirely about Windows development / environment and use Linux / gcc / Intel compilers instead?  While the Intel compilers are great (if a bit expensive) for an IDE I really do like Visual Studio.  Most of my code is cross platform and for graphics I mostly use openGL so could switch without too much trouble…    But direct compute is so tempting…..

Arrrrgh what to do!

Mandelbulb

December 3rd, 2009 by Barrett

I noticed this linked from both Atom and Real-time Rendering blogs. Cyril Crassin, the guy behind the amazing gigavoxels raytracing, has got a 3d Mandelbrot fractal rendering in real time.

As we know there isn’t actually a 3rd dimension to the imaginary plane so some manipulation is required. The chap who discovered a good way of transforming it to 3d ( the Mandelbulb ) has a website which you can find here. Well worth reading and some pretty amazing images!

As a side note: I’ve owned the book: “Real-time Rendering” for a number of years now and it is an invaluable resource. The Real-time Rendering blog mentioned above is the blog by the authors of the book.

C / C++ and STL

October 28th, 2009 by Barrett

Before everyone gets really upset with the rest of this post, as is the trend in the OO community…  I thought I’d start, rather than end, with a disclaimer:  I use C++ and STL on a daily basis in my job, although I don’t use all of what stl has to offer it does make coding in c++ much easier. C++ in itself does allow fairly elegant code (if constructed carefully) whilst providing a decent level of code performance. So I do actually like C++ and stl and they make my life at work much better :)

But this blog isn’t about my day job….  It’s about my tinkering with the wonderful world of parallel algorithms and CUDA code.

What a lot of people don’t realize is that you *can* use stl, c++ classes and templates in a .cu file. As long as its client side code you should be fine. I’ve had a few compiler crashes when using stl especially the sort. To sort this out I used the overloaded < operator in your class, don’t try and define a custom < method it will crash the compiler.

Read the rest of this entry »

GPU Temperature Monitor

October 27th, 2009 by Barrett

As of writing the combined download count of the GPU Thermal Monitor has hit 520 :)

So far I’m yet to receive any major feedback on bugs etc which leads me to believe it: a) works perfectly or b) no-one is bothering to report issues. As I’m an optimist I’m going with option a  :)

I’ve had more requests for remote monitoring of the GPU temperature via a simple http request. This is something I need myself in order to keep track of temperatures in remote machines. This is now built in and in testing and bug fixing, hopefully to be released soon. I’ve not used completion ports as they seemed like overkill for what should be a light traffic application but as the source is included and under creative commons license please feel free to add them if needed. Secondly having it open source allows for some code review, which is important for security reasons as it now allows remote connections.

If you have found a bug or would like another feature added please drop me a comment or email.