Efficient code assignment techniques for local memory on software managed multicores

Jing Lu, Ke Bai, Aviral Shrivastava

Research output: Contribution to journalArticlepeer-review

8 Scopus citations


Scaling the memory hierarchy is a major challenge when we scale the number of cores in a multicore processor. Software Managed Multicore (SMM) architectures come up as one of the promising solutions. In an SMM architecture, there are no caches, and each core has only a local scratchpad memory [Banakar et al. 2002]. As the local memory usually is small, large applications cannot be directly executed on it. Code and data of the task mapped to each core need to be managed between global memory and local memory. This article solves the problem of efficiently managing code on an SMM architecture. The primary requirement of generating efficient code assignments is a correct management cost model. In this article, we address this problem by proposing a cost calculation graph. In addition, we develop two heuristics CMSM (Code Mapping for Software Managed multicores) and CMSM-advanced that result in efficient code management execution on the local scratchpad memory. Experimental results collected after executing applications from the MiBench suite [Guthaus et al. 2001] demonstrate that merely by adopting the correct management cost calculation, even using previous code assignment schemes, we can improve performance by an average of 12%. Combining the correct management cost model and a more optimized code mapping algorithm together, our heuristics can reduce runtime in more than 80% of the cases, and by up to 20% on our set of benchmarks, compared to the state-of-the-art code assignment approach [Jung et al. 2010]. When compared with Instruction-level Parallelism (ILP) results, CMSM-advanced performs an average of 5% worse.We also simulate the benchmarks on a cache-based system, and find that the code management overhead on SMM core with our code management is much less than memory latency of a cache-based system.

Original languageEnglish (US)
Article number71
JournalACM Transactions on Embedded Computing Systems
Issue number4
StatePublished - Dec 1 2015


  • Code
  • Embedded systems
  • Instruction
  • Localmemory
  • Multicore processor
  • Scratchpad memory

ASJC Scopus subject areas

  • Software
  • Hardware and Architecture


Dive into the research topics of 'Efficient code assignment techniques for local memory on software managed multicores'. Together they form a unique fingerprint.

Cite this