In the modern computer, the Central Processor Unit (CPU) and the Graphics Processor Unit (GPU) have two very different jobs. The GPU is dedicated to providing visuals to your computer screen, changing millions of pixels on your screen at a time; while the CPU is the brains behind everything, constantly working unseen in the background on system and application tasks. Both are built for their jobs. The CPU runs very, very fast on one or two things at the same time, whereas the GPU runs at a slower rate but on many, many things at the same time.
But now, with recent technology, GPUs are able to be used for computing non-graphical tasks. Thanks to General-Purpose GPU programming platforms such as NVIDIA’s CUDA, the GPU can be programmed to run algorithms on large, non-graphical sets of data at the same time.
The project was to build a CPU/GPU Processor Comparator – a system which could monitor the performance of the GPU and CPU separately running the same algorithm in order to conclude which is best when it comes to processing large sets of data.
The comparator uses an image processing algorithm to turn an image of a simulated lunar surface with highlighted craters and moonrocks in red and safe areas in green, into a hazard-map which shows lighter areas furthest from any hazards. The use of algorithms such as this one are in automated lunar lander systems.
Supervised by Dr Iain Martin