editor's blog
Subscribe Now

Managing Multicore Tasks

We’ve looked in the past at some of the APIs put together by the Multicore Association, notably the MCAPI communications API (and its update) and the MRAPI resource management API. In the same spirit, they are now taking up the issue of task management.

The whole idea with multicore software is that a program can be decomposed into multiple pieces that can be run concurrently. How you do that partitioning can be a hard problem, and is receiving some tools attention as the multicore design process gets some automation. You might think of these pieces as threads, but, in fact, threads are typically a specific implementation in SMP systems. Alternative parallel configurations can include multiple independent programs (rather than threads), each with its own OS, or even simple run-to-completion programs on “bare metal,” i.e., with no OS (and, hence, no threading services) at all.

So rather than getting bogged down in worrying about whether these “pieces” of the program are threads or programs or whatever, they can be generically referred to as tasks. And, while SMP OSes can handle the management and scheduling of threads, there’s no general task management solution for non-SMP systems – or, more critically, there’s no general approach that works for both SMP and AMP, homogeneous and heterogeneous systems.

Even where threading services exist, they can have far too much overhead for many embedded programs. Including the cost of creating and destroying threads, the overhead can completely wipe out any theoretical gains that the parallel version was supposed to provide. If your program exploits fine-grained parallelism, with hundreds or more small tasks, then the thread management can take longer than the actual execution of the thread itself.

In order to address this, the Multicore Association is taking up the creation of a task management API, called MTAPI, in order to provide a general approach for all architectures, and one whose implementation can be tailored to limited resources as needed. The process is just starting, and they’re soliciting input and participants.

More info can be found in their release

Leave a Reply

featured blogs
Jul 3, 2020
[From the last episode: We looked at CNNs for vision as well as other neural networks for other applications.] We'€™re going to take a quick detour into math today. For those of you that have done advanced math, this may be a review, or it might even seem to be talking down...
Jul 2, 2020
Using the bitwise operators in general -- and employing them to perform masking, bit testing, and bit setting/clearing operations in particular -- can be extremely efficacious....
Jul 2, 2020
In June, we continued to upgrade several key pieces of content across the website, including more interactive product explorers on several pages and a homepage refresh. We also made a significant update to our product pages which allows logged-in users to see customer-specifi...

Featured Video

Product Update: DesignWare® TCAM IP -- Synopsys

Sponsored by Synopsys

Join Rahul Thukral in this discussion on TCAMs, including performance and power considerations. Synopsys TCAMs are used in networking and automotive applications as they are low-risk, production-proven, and meet automotive requirements.

Click here for more information about DesignWare Foundation IP: Embedded Memories, Logic Libraries & GPIO

Featured Paper

Cryptography: Fundamentals on the Modern Approach

Sponsored by Maxim Integrated

Learn about the fundamental concepts behind modern cryptography, including how symmetric and asymmetric keys work to achieve confidentiality, identification and authentication, integrity, and non-repudiation.

Click here to download the whitepaper

Featured Chalk Talk

Mindi Analog Simulator

Sponsored by Mouser Electronics and Microchip

It’s easy to go wrong in the analog portion of your design, particularly if you’re not an analog “expert.” Electrical simulation can help reduce risk and design re-spins. In this episode of Chalk Talk, Amelia Dalton chats with Rico Brooks of Microchip about the MPLAB Mindi tool, and how it can help reduce your design risk.

Click here for more information about MINDI Analog Simulator.