Abstract

The Cell Broadband Engine (CBE) is a heterogeneous multi-core processor with unique design properties for high-performance computing. It consists of one Power Processing Element (PPE) and eight Synergistic Processing Elements (SPEs) connected with the Elements Interconnect Network (EIB). It employs some novel techniques, such as software managed cache, to hide memory latency and guarantees, by default, maximum utilization for the overall system resources. However, utilization of these facilities requires complex designs and implementations of algorithms to get the best performance. In this paper we discuss our micro-threading model realized by a nano-kernel implemented on top of each SPE [16] [17]. SPE's Nano-kernel, or SPENK, employs the micro-threading model to increase CBE resources utilization while simplifying the programming model. Our framework boosted the processor's overall performance by a factor of five compared to the current threading model. It allowed us to build a distributed model for SPEs' tasks management and automated Local Storage (LS) management. We tested our framework on two types of algorithms: (1) uniform memory access algorithms, such as parallel summation, and (2) Non-uniform or irregular memory access algorithms, specifically the parallel tree spanning algorithm. We have also investigated the optimal parameterization of micro-threads on each SPE to automatically reach the best possible performance. Using proper parameterization of micro-threads, we could achieve three to fivefold performance improvement.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call