At ImageMetry, we are co-working on development of a toolkit (called GPSME toolkit) that improves speed performance of software products by instant converting CPU source codes to GPU (graphic cards) source codes. The project is based on cooperation of 4 companies and 2 universities and supported by REA-Research Executive Agency of EU. More information on this project can be found at www.gp-sme.eu
The latest progression of Graphical Processing Unit power has not been completely exploited by most of the SMEs (Small and Medium Enterprises), may be because GPU programming is an arena that calls for professional expertise that is a lot different from usual training. GPSME is a toolkit that will offer the SMEs with an uncomplicated way to access the GPU power.
Now, for many of you who are new to the term, let’s first have a glance at what GPU is. GPUs are usually employed in embedded systems, mobile sets, computers, gaming consoles and lot more. A GPU also commonly referred to as visual processing unit is a specific circuit designed to speedily operate and modify memory in a way that would speed up the framing of images in a frame buffer proposed for displaying the output. Contemporary GPUs are way too competent at manipulating computer graphics along with the extremely parallel structure making them much more resourceful for the general purpose.
GPSME toolkit would facilitate them to enhance their company products in terms of both speed and quality without any major expense from their pocket. With the innovative GPSME toolkit in hand, the SMEs would be able to transform the present CPU code without wasting their valuable time and investing extra effort. It will also enable the implementation of advanced techniques with limited runtime and facilitate the SMEs to use complex and intricate computing models in their new products. An ideal aspect behind this is that it would reap them tons of commercial benefits along with augmenting their market position.
Optimal performance can be yielded out of gpuitication techniques that would adjust automatic parallelization to the latest GPU compute architecture to deliver finest performance. One thing that almost everyone would be familiar with is that the arenas of SME are different and GPSME would render a breakthrough that would offer enhanced performance at numerous other areas of application. SMEs that focus their applications on moderate platforms would find the technique to be highly suitable.
However, making use of GPU resources is not straightforward. While new GPU programming paradigms such as CUDA, OpenCL and GRAMPS have made GPU programming easier, an in-depth understanding of GPU architecture is still necessary to maximize GPUs’ benefits. Also, since the current products of the SME participants are CPU-based, they would need large resources to implement the CPU2GPU conversion manually. Recognizing both of these issues, GPSME project will produce a toolkit giving the SMEs easy access to the latest technical advance of GPUs without committing major resources. The GPSME toolkit provides automatic source code translation from CPU to GPU , which will result in great performance gains. The target technology will be standard GPU cards and off-the-shelf GPU clusters, which are moderately priced, readily available, and can run without the need to employ extra, specialised staff. The toolkit will operate by executing parallelizable loops in the program using GPUs, which suggests that the performance is gained under the current software architecture. This will make the adoption particularly attractive to the SMEs.
If predictions are to be believed, the upshots of GPSME would benefit numerous companies and enhance their competitiveness.