The Affects of O3D On GP-GPU Computing


Recently Google released an exciting new browser extension for Internet Explorer, Firefox and Safari. The Extension, O3D allows javascript developers to tap into the computing power of a modern user’s graphics card. This is exciting for many reasons.

First, this extension opens new doors to web application developers who want to add a new level to their current user interfaces (although I fear that some might over do it). It should be interesting to see how this extension is used to make GUIs more intuitive and easier to use.

Secondly, and most obviously this extension will allow for game development for the browser. Web 2.0 games have been on the rise for a few years now and there are already a few javascript libraries that allow for rapid javascript game development. It will be exciting to see how developers incorporate this new library into their games. I expect that in the next year or too we will so many new games that incorporate this library into their software stack.

Lastly, the affect that I’m most excited about is this libraries affects on GPGPU computing. GPGPU computing a branch of computer science that focuses on creating massively parallel programs that run on a user’s graphics card has already grealy reduced the cost of computation for many small scientific research projects. Nvidia’s nonschalant motto “Moore’s Law is for wimps” has proven true and we have seen a growth in GPU computing power that greatly exceeds Moore’s law for the last few years.

What I’m proposing is this, a distributed GPGPU computing API based upon O3D. This library would allow for GPGPU clusters to be created (not unlike ROCKS clusters that currently exist). Except this system would make adding a new node to the cluster as simple as navigating to a URL in the browser. Ideas like this have already been proposed for distributed javascript computation and now with this library allowing for javascript calls to the GPU I believe a small group could build a distributed system much faster than any centralized super computer (possibly larger than the current FOLDing at home cluster that does use GPU computing but requires the installation of a hard client on the user’s computer).

Update: I have begun work on a project that I am deeming “casanova cluster” which uses python for program development. The python library then makes SOAP calls to a PHP server that is controlling the number of nodes and their latency. Finally the PHP server uses JSON/Comet to talk to the browswer nodes running javascript and O3d. This Project is in infant stages but it should be interesting to see the ways it develops.

Regards,

Adam Haney

Chief Developer

Casa Nova Designs

, ,

Line Break

Author: Adam (17 Articles)

Adam Haney is the chief developer for Casa Nova Designs, a freelance web development company based in Knoxville, TN. He is currently pursuing his undergraduate degree at the University of Tennessee Knoxville with plans to graduate in May 2012. As a student at the University of Tennessee he works on the Remote Data Analysis and Visualization research team, a group devoted to creating visualizations for Scientists at Department of Energy laboratories to help aid in Scientific discovery.

  1. #1 by Jessicarab on May 10, 2009 - 5:31 pm

    Great! Thank you very much! I always wanted to write in my blog something like that. Can I take part of your post to my site? Of course, I will add backlink? Regards

  2. #2 by adam on May 10, 2009 - 9:22 pm

    Sure by all means feel free to spread the word around. I’d be really interested in starting something like this and I have written a little bit of code (I’m a student so I have very little time for fun code writing).

  3. #3 by ArianaSali on May 13, 2009 - 12:44 pm

    hi, thanks,The article was very well written, very helpful to me

(will not be published)