Modern software takes computational speed for granted. But modern microprocessors can only speed up by increasing the number of cores. To take full advantage of multiple cores, software developers have to arrange their code in such a way that it is executable in parallel – an error-prone and expensive task. Computer scientists from Saarland University have developed a tool that parallelizes the necessary code sections automatically, and also gives developers programming advice. In the long term, they are planning to extend their “Sambamba” system to automatically parallelize any given program (Hall 9, Booth E13).
“Multicore architectures are becoming more and more important, even in netbooks and mobile phones,” says Andreas Zeller. “While devices are shrinking, they are also optimized to use as little energy as possible, which makes multicore ever more necessary.”
Zeller, professor for software engineering at Saarland University, developed the tool together with his doctoral students, Kevin Streit and Clemens Hammacher. Their system, called “Sambamba”, automatically converts conventionally programmed code into code that is executable in parallel.
“The aim is to find several parallelization options for every individual function in the examined application, and then select the best one during runtime,” says Sebastian Hack, professor of programming at Saarland University. He and his doctoral student Johannes Doerfert also took part in the Sambamba project.
Computer scientists describe runtime as the time that elapses between initialization and completion of a program. To identify sections where parallelization is possible and to exclude others, Sambamba analyzes the code even before it is executed. But with these preliminary analyses, it is hard to find parallelization options that are input-dependent and therefore appear just occasionally.
“That’s why Sambamba consists of two modules: a comprehensive program analysis tool that examines the code for its parallelization potential before runtime, and a second module that can then utilize these results and optimize the code with additional information obtained at runtime.” Sebastian Hack explains.
In this way, the computer scientists of Saarland University elegantly avoided some of the problems that researchers so far have not been able to solve: While different methods usually work fine for particular forms of parallelization, none of these procedures fits all.
“Even if we were to construct a kind of translator application that has mastered every single technique ever devised and tested, we would still be lacking the type of cost model that can determine the best method in each case automatically,” Hack continues. With their integrative technique, they therefore try to gather as much information as possible in advance, and then collect additional information during the runtime of the program. This way, additional parallelization opportunities can be exposed and the program can “learn” which parallelization method works best.
Sambamba works well for programs written in languages that are widespread in practice but hard to analyze, like C++. But the more complex a program is, the more important the analysis at runtime becomes, independent of the language. “Sambamba can parallelize code entirely automatically. But in some cases, developers might want to verify different options, or choose one themselves. So our system can also communicate with the user and make suggestions on how to parallelize the code,” Zeller explains. At the upcoming CeBIT computer fair, the researchers will be presenting the programming environment they designed around Sambamba, in which developers can additionally get direct support on parallelization issues.
Computer science and informatics at Saarland University
The Department of Computer Science forms the core of the informatics landscape at Saarland University. A further seven internationally renowned research institutes are located in the immediate vicinity on campus. As well as the two Max Planck Institutes for Informatics and for Software Systems, the Saarbrücken campus is also home to the German Research Center for Artificial Intelligence, the Intel Visual Computing Institute, the Center for IT Security, Privacy and Accountability (CISPA) and the Cluster of Excellence ‘Multimodal Computing and Interaction’.
A short video is available here: http://www.sambamba.org/
Professor Andreas Zeller
Computer Science Department, Saarland University
Phone: +49 681 302-70791
Professor Sebastian Hack
Computer Science Department, Saarland University
Phone: +49 681 302-71
Competence Center Computer Science Saarland
Phone: +49 681 302-70741
Note for radio journalists: Phone interviews with Saarland University scientists can be conducted in studio quality using the Radio Codec (via direct-dial IP connection, or the ARD Sternpunkt 106813020001). Interview requests can be made via our press department (+49 681 302-2601).
Melanie Löw | Universität des Saarlandes
Innovative Infrared heat reduces energy consumption in coating packaging for food
12.12.2018 | Heraeus Noblelight GmbH
Mobile learning, artificial intelligence and digital training formats in science and research
04.12.2018 | time4you GmbH
Researchers from the University of Basel have reported a new method that allows the physical state of just a few atoms or molecules within a network to be controlled. It is based on the spontaneous self-organization of molecules into extensive networks with pores about one nanometer in size. In the journal ‘small’, the physicists reported on their investigations, which could be of particular importance for the development of new storage devices.
Around the world, researchers are attempting to shrink data storage devices to achieve as large a storage capacity in as small a space as possible. In almost...
The more objects we make "smart," from watches to entire buildings, the greater the need for these devices to store and retrieve massive amounts of data quickly without consuming too much power.
Millions of new memory cells could be part of a computer chip and provide that speed and energy savings, thanks to the discovery of a previously unobserved...
What if, instead of turning up the thermostat, you could warm up with high-tech, flexible patches sewn into your clothes - while significantly reducing your...
A widely used diabetes medication combined with an antihypertensive drug specifically inhibits tumor growth – this was discovered by researchers from the University of Basel’s Biozentrum two years ago. In a follow-up study, recently published in “Cell Reports”, the scientists report that this drug cocktail induces cancer cell death by switching off their energy supply.
The widely used anti-diabetes drug metformin not only reduces blood sugar but also has an anti-cancer effect. However, the metformin dose commonly used in the...
A research team from the University of Zurich has developed a new drone that can retract its propeller arms in flight and make itself small to fit through narrow gaps and holes. This is particularly useful when searching for victims of natural disasters.
Inspecting a damaged building after an earthquake or during a fire is exactly the kind of job that human rescuers would like drones to do for them. A flying...
12.12.2018 | Event News
10.12.2018 | Event News
06.12.2018 | Event News
17.12.2018 | Studies and Analyses
17.12.2018 | Life Sciences
17.12.2018 | Power and Electrical Engineering