Searching for faster, more efficient and sustainable parallel computing

March 11, 2014

A European research project named REPARA and coordinated by Universidad Carlos III de Madrid (UC3M) is studying how to improve parallel computing applications to increase their performance and energy efficiency, as well as easing programming and source code maintenance.

Parallel heterogeneous computing combines several processing elements with distinct characteristics that share a single memory system. Normally, multicore processors are used (such as those in some smartphones or personal computers), combined with graphic cards and other components to process large amounts of data. These computation tasks have applications in several domains such as healthcare (protein docking), transportation (monitoring of railway systems), robotics (stereoscopic vision and navigation), and industry (defects detection in manufactured parts).

Parallel heterogeneous architectures may provide important benefits in terms of both and performance. The REPARA project's main objective is to make these benefits available to users without the enormous development efforts that these complex architectures entail. And the key to achieve this goal lies, among other things, in " refactoring", a technique used in software engineering to improve the internal structure of a program without altering its observable behavior. This is something akin to changing the distribution of the pipes and pumps in a building so that the water will come out of the faucet in a faster, cleaner and more ecological manner.

Within REPARA project, whose name can be interpreted as "Refactoring for Parallelism" in allusion to the usage of source code refactoring, scientists are attempting to improve three basic properties: application performance (increasing execution speed), energy efficiency (reducing energy consumption) and the ease of source code maintenance and modification. "The tools and technologies that REPARA is intended to produce are expected to reduce development costs and the products' time to market, which will in turn make the products more competitive," points out the project coordinator, José Daniel García, from the ARCOS (Computer Architecture, Communications and Systems) research group at UC3M.

First prototype in 2015

Researchers expect to have prototypes of these new tools by February 2015, and test them in an evaluation phase together with their industrial partners. "We hope to obtain substantial improvements in both execution speed and energy efficiency," states Professor José Daniel García.  "We can also reduce the time that the engineers need to fine-tune a software product in a parallel heterogeneous environment, which will significantly reduce development costs and increase software development industry competitiveness," he says.

In a research paper recently published in the New Generation Computing journal, these researchers analyzed how programming models affect productivity and energy efficiency in the case of multicore processor architectures. This work was the base for the project idea, because it's necessary to help developers in the transition to different programming models, as well as in the selection of the best programming model depending on the concrete characteristics of their application," explains Professor García. 

The REPARA (Reengineering and Enabling Performance and Power of Applications) project, which began in September 2013 and is expected to continue for three years, joins experts in heterogeneous parallel systems, from academia as well as from the industry, from five European countries.

Explore further: KIT: Fast and easy programming

More information: "A Comparative Study and Evaluation of Parallel Programming Models for Shared-Memory Parallel Architectures." Luis Miguel Sánchez, Rafael Sotomayor, J. Daniel García, Javier Fernández, Soledad Escolar. New Generation Computing, 31(3):139–161. July 2013. Springer, Japan. ISSN: 0288-3635. DOI: 10.1007/s00354-013-0301-5.

Related Stories

KIT: Fast and easy programming

February 1, 2012

An increasing number of electronics products such as smartphones are equipped with fast, energy-efficient multi-core processors. As a matter of fact, however, programming of the respective applications is rather time-consuming ...

Programming model for supercomputers of the future

June 10, 2013

The demand for even faster, more effective, and also energy-saving computer clusters is growing in every sector. The new asynchronous programming model GPI from Fraunhofer ITWM might become a key building block towards realizing ...

Recommended for you

Enhancing solar power with diatoms

October 20, 2017

Diatoms, a kind of algae that reproduces prodigiously, have been called "the jewels of the sea" for their ability to manipulate light. Now, researchers hope to harness that property to boost solar technology.

1 comment

Adjust slider to filter visible comments by rank

Display comments: newest first

not rated yet Mar 11, 2014
This is dead end. Big number of processors cannot effectively access common memory (they compete for it). But big numbers are needed; processor speed cannot increase any more. Distributed memory is the only way to go, but it needs different algorithms, I doubt they could be created by refactoring.

Please sign in to add a comment. Registration is free, and takes less than a minute. Read more

Click here to reset your password.
Sign in to get notified via email when new comments are made.