Abstract:
The heterogeneous multi-core architecture and explicit management for multi-level memory hierarchy of cell processor pose programming & performance challenges to both programmers and applications. Most programming models for Cell/B.E. based system well support bulk data transfer applications which are suitable for streaming processing, but suffer performance degradation for the applications whose memory access patterns are irregular or unpredictable. In this paper, by extending memory access library and enhancing the co-processors independency of Cell/B.E. processor, a co-processor centric multilayer runtime library which supports both MPI and release-consistency-based Pthread programming model is proposed. The multilayer structure of the model and the flexible extended memory access library not only make the model more efficient and scalable but also boost the performance of irregular applications. In the model, while MPI programming interface enables large existing MPI applications to be ported to the Cell/B.E. processor easily and facilitates the traditional parallel programming, the release-consistency-based Pthread programming interface offers an efficient task runtime library to both MPI and the system-level users who need full control over the architecture. The experimental results show that the proposed multilayer runtime library is suitable for various applications and can achieve better performance by using a profile based optimizing technology built in the memory access library.