Skip to Main Content
The shift towards multicore architectures poses significant challenges to the programmers. Unlike programming on single core architectures, multicore architectures require the programmer to decide on how the work needs to be distributed across multiple processors. In this contribution, we analyze the needs of a high-level programming model to program multicore architectures. We use OpenMP as the high-level programming model to increase programmer productivity, reduce time to market and development/design costs for these systems. In this work, we have explored the medical ultrasound application using OpenMP on a TI-based Tomahawk platform that is a six-core, high performance multicore DSP system. This application is heavily based on image processing and the goal is to achieve desired level of image quality. We have explored the different cache configurations of the system. In this process, we were able to study the performance impacts of data locality when data objects are placed into different components of the Tomahawk memory system.