RSS Feeds


mod_vvisit_counterThis week114

Designed by:
SiteGround web hosting Joomla Templates
New GPU-enabled supercomputers in our laboratory

Increasing number of projects that rely on computer simulations inspired us to order more servers that would do the hard work for us. Our collaborative project with the Advanced Concepts Team (ACT) of European Space Agency (ESA) requires lots of processing power to run evolutionary robotics (ER) simulations relying on physics engines.

Fabio Ruini, who is a PhD student sponsored by the Air Force Office of Scientific Research is also making use of the ER approach to evolve autonomous neural controllers for Micro-Unmanned Aerial Vehicles Such simulations often take days to finish using standard processors. Anthony Morse is also running lots of code for the iCub humanoid robot and Zoran Macura's work for the VALUE research project requires lots of computer power as well. New PhD students have recently joined our group and will need to run their software to


 The picture shows one of the servers hooked into my monitors and being configured

For this reason we got six new eight-cores server machines, which are all connected and can run the heavy processing. However, this is just a standard way to do this. Anthony Morse and I have been inspired by the new and quickly growing paradigm in computation making use of Graphic Processor Units (GPUs) that outperform standard processors by the factor of several magnitudes. Driven by the insatiable market demand for realtime, high-definition 3D graphics, the programmable GPUs have evolved into a highly parallel, multithreaded, manycore processors with tremendous computational horsepower and very high memory bandwidth. Furthermore, their parallelism continues to scale with Moore’s law. For this reason we ordered ten Tesla cards, each of which has 240 cores, 102Gb/sec memory bandwidth and 4Gb dedicated memory. In addition, Tony's and my computer has the latest GeForce 285 overclocked graphics cards, which is very similar to Tesla in processing performance. To see the detailed information of our setup click here. In case you are here looking for the help on how to install Tesla cards on a Linux system then click here for the installation guide I wrote and here for the scripts that you will need.


Floating-Point Operations per Second and Memory Bandwidth for the CPU and GPU

The collaboration with ESA is an extension of the project I stared as an undergraduate student, however, my main research is for my PhD, which is on the development of actions and language in humanoid robots for the European Union Framework 7 project called iTalk proposed by my supervisor and the project coordinator Angelo Cangelosi. I am developing most of my code using CUDA, which is an extension to C programming language allowing developers to run their applications on GPU-enabled cards. Currently I am working on the implementation of Jun Tani's multiple-timescales recurrent neural network, which will accept various inputs such as vision, proprioception and linguistic input. Both the network as well as the backpropagation through time training algorithm are going to run on the Tesla cards resulting in significant speed increase, which will much appreciated when the system grows in its complexity. Tony has rewritten his code to run on CUDA and his analysis showed 1000x increase in speed.

Writing CUDA code requires slightly different way of logically structuring code since it needs to be executed on hundreds cores and possibly in thousands or even millions threads running simultaneously. I am currently studying CUDA and preparing a one hour tutorial for our research group where me and Tony are going to talk about the new servers and using them both in a standard way as well as in a massively parallelised way using Tesla cards. 

This new and rapidly growing field enabling massively parallel processing does seem very promising and I personally believe that sooner or later most of the computation will be offloaded to GPU processors rather than using standard central processing units.

Last Updated on Wednesday, 31 March 2010 19:29