HomeHow ToSwarm makes parallel programming easier!

Swarm makes parallel programming easier!

While parallel programming is known for its speed and efficiency, it is not hidden that it introduces complexity into the code. To address this problem, some MIT researchers collaborated to create a new chip design called Swarm.

Before we talk about this important development that could make parallel programming a less tedious task, I'd like to talk to beginners about its basics. Parallel programming is a method of performing multiple calculations simultaneously. It works on the principle that a large problem can be divided into smaller ones, which are then solved simultaneously using 2 or more processors.

Swarm makes parallel programming easier!

If you apply your theoretical knowledge, you can think that a multicore machine – for example with n cores – will be n times faster than a single core machine. However, since a large piece of computer programs is sequential, breaking them into smaller ones to use the concept of parallel programming is a tedious process.

However, the latest developments that took place at the Computer Science and Artificial Intelligence Laboratory (CSAIL) of MIT can change this scenario.

Researchers have created a new chip design called Swarm, which allows them to make parallel programs easier to write and run more efficiently.

In their tests, the researchers compared existing parallel programming with Swarm versions. They found that Swarm versions were about 18 times faster. Surprisingly, the newly built model requires only 10% of the code.

Also, the Swarm design was able to accelerate a program – which computer scientists had previously failed to parallelize – by a factor of about 75.

Explaining how multicore systems are more difficult to program, Daniel Sanchez, an associate professor at MIT, says:

«You must explicitly divide the work you do into smaller tasks, then you must synchronize among them the duties that have access to shared data. What this architecture essentially does is remove all forms of explicit synchronization to make parallel programming easier.»

Compared to regular multicore chips, Swarm has extra circuitry to handle prioritization. Tasks are executed in order of priority, and the task with the highest priority is executed first. These high-priority tasks have low-priority tasks that are automatically queued in Swarm.

Writing a program with Swarm functionality is equally easy. When a programmer defines a function, he/she simply needs to add a line of code that loads that function into the Swarm queue.

You can see more on ScienceDaily.

📧
Subscribe to the SecNews Newsletter

The most important Security & Technology news in your Inbox.

SEARCH

FOLLOW US

📧
Newsletter SecNews
The most important Security & Technology news in your inbox.

LIVE NEWS