Ozturk, O.Kandemir, M.Irwin, M. J.2016-02-082016-02-0820101751-8601http://hdl.handle.net/11693/22152One of the most important issues in designing a chip multiprocessor is to decide its on-chip memory organisation. While it is possible to design an application-specific memory architecture, this may not necessarily be the best option, in particular when storage demands of individual processors and/or their data sharing patterns can change from one point in execution to another for the same application. Here, two problems are formulated. First, we show how a polyhedral method can be used to design, for array-based data-intensive embedded applications, an application-specific hybrid memory architecture that has both shared and private components. We evaluate the resulting memory configurations using a set of benchmarks and compare them to pure private and pure shared memory on-chip multiprocessor architectures. The second approach proposed consider dynamic configuration of software-managed on-chip memory space to adapt to the runtime variations in data storage demand and interprocessor sharing patterns. The proposed framework is fully implemented using an optimising compiler, a polyhedral tool, and a memory partitioner (based on integer linear programming), and is tested using a suite of eight data-intensive embedded applications. © 2010 © The Institution of Engineering and Technology.EnglishApplication-specificChip multiprocessorData sharingData storageDynamic configurationEmbedded applicationHybrid memoriesInteger linear programmingInterprocessor sharingMemory architectureMemory configurationOn chip memoryOn-chip multiprocessorRun-time variationsShared memoriesInteger programmingMicroprocessor chipsMultiprocessing systemsOptimizationSystems analysisComputer architectureOn-chip memory space partitioning for chip multiprocessors using polyhedral algebraArticle10.1049/iet-cdt.2009.0089