Efficient, scalable and productive parallel programming is a major challenge for exploiting the future multiprocessor SoC platforms. This article presents the multiFlex programming environment which has been developed...
详细信息
Efficient, scalable and productive parallel programming is a major challenge for exploiting the future multiprocessor SoC platforms. This article presents the multiFlex programming environment which has been developed to address this challenge. It is targeted for use on platform 2012, a scalable multi-processor fabric. The multiFlex environment supports high-level simulation, iterative platformmapping, and includes tools for programming model aware debug, trace, visualization and analysis. This article focuses on the two classes of programming abstractions supported in multiFlex. The first is a set of Parallel Programming Patterns (PPP) which offer a rich set of programming abstractions for implementing efficient data-and task-level parallel applications. The second is a Reactive Task Management (RTM) abstraction, which offers a lightweight C-based API to support dynamic dispatching of small grain tasks on tightly coupled parallel processing resources. The use of the multiFlex native programming model is illustrated through the capture and mapping of two representative video applications. The first is a high-quality rescaling (HQR) application on a multiprocessor platform. We present the details of the optimization process which was required for mapping the HQR application, for which the reference code requires 350 GIPS (giga instructions per second), onto a 16 processor cluster. Our results show that the parallel implementation using the PPP model offers almost linear acceleration with respect to the number of processing elements. The second application is a high-definition VC-1 decoder. For this application, we illustrate two different parallel programming model variants, one using PPPs, the other based on RTM. These two versions are mapped onto two variants of a homogeneous version of the platform 2012 multi-core fabric.
In this paper, we describe challenges and solutions for programming multi-processor systems-on-a-chip, based on our experience in programming platform2012, a large-scale multicore fabric under development by STMicroel...
详细信息
ISBN:
(纸本)9781450306362
In this paper, we describe challenges and solutions for programming multi-processor systems-on-a-chip, based on our experience in programming platform2012, a large-scale multicore fabric under development by STMicroelectronics and CEA, using the multiFlex multi-core programming environment. We present a component-based environment which is the basis for a rich set of parallel programming constructs supporting task level and data level parallelism. The multiFlex programming tools are described, supporting platformmapping, debug, trace and analysis. We discuss the applicability of different parallel programming model variants for two versions of a high-definition VC-1 decoding video application. These two versions are mapped onto variants of a homogeneous multi-coreplatform.
暂无评论