editor's blog
Subscribe Now

Multicore and Concurrency

In this week’s multicore automation article, we talked about multicore and we talked about concurrency. It’s easy to conflate these two concepts, so an important distinction should be drawn. The terminology isn’t particularly precise here, but the notions are.

“Multicore” typically refers to a computing platform. The number associated with it is the number of cores available for running a program. This number is completely independent of the program being run (although for embedded systems, it may have been designed with a specific program in mind).

“Concurrency” is a property of a program. It reflects how easy it is to pull apart and parallelize. It has nothing to do with a computing platform. A given algorithm can be designed with more or less opportunity for concurrency.

In a perfect world, the multicore structure matches the concurrency of the program being run. In the real world, a given program may need to be made to work on a number of different platforms. The more concurrency opportunities there are in a program, the more it can be optimized for different multicore platforms. If it’s really only possible to split a program in two, then a four-core platform will be no better than a two-core platform.

For this reason, it can be beneficial to optimize your program for as much concurrency as possible so that it can be partitioned in many different ways over many different platforms.

Leave a Reply

featured blogs
Apr 4, 2020
That metaphorical '€œboing'€ sound you hear, figuratively speaking, is a symbolical ball allegorically landing on Chewy'€™s side of the illusory net....
Apr 3, 2020
Mentor’s Xpedition® IC Packaging design tools bridge the gap between engineering teams for IC layout, package substrate design, and PCB layout with solutions for Chip/Package/PCB prototyping and co-design. They also deliver a complete solution for High Density Advan...
Apr 3, 2020
[From the last episode: We saw some of the mistakes that can cause programs to fail and to breach security and/or privacy.] We'€™ve seen how having more than one program or user resident as a '€œtenant'€ in a server in the cloud can create some challenges '€“ at leas...
Apr 2, 2020
There are many historical innovations that are the product of adversity, and the current situation is an extreme example.  While it is not the first time that humanity has faced a truly global challenge like the COVID-19 pandemic, this time the world is connected by tech...

Featured Video

Industry’s First USB 3.2 Gen 2x2 Interoperability Demo -- Synopsys & ASMedia

Sponsored by Synopsys

Blazingly fast USB 3.2 Gen 2x2 are ready for your SoC. In this video, you’ll see Synopsys and ASMedia demonstrate the throughput available with Synopsys DesignWare USB 3.2 IP.

Learn more about Synopsys USB 3.2