RapidMind: Portability across Architectures and its Limitations
Iris Christadler, Volker Weinberg

TL;DR
This paper evaluates RapidMind's ability to enable portable code across different hardware architectures like GPUs, Cell processors, and CPUs, analyzing performance and limitations through benchmark kernels.
Contribution
It demonstrates how RapidMind facilitates cross-architecture programming and assesses its performance portability and limitations with scientific kernels.
Findings
RapidMind enables code portability across multiple architectures.
Performance varies significantly between architectures.
Some kernels show limited portability and performance degradation.
Abstract
Recently, hybrid architectures using accelerators like GPGPUs or the Cell processor have gained much interest in the HPC community. The RapidMind Multi-Core Development Platform is a programming environment that allows generating code which is able to seamlessly run on hardware accelerators like GPUs or the Cell processor and multicore CPUs both from AMD and Intel. This paper describes the ports of three mathematical kernels to RapidMind which are chosen as synthetic benchmarks and representatives of scientific codes. Performance of these kernels has been measured on various RapidMind backends (cuda, cell and x86) and compared to other hardware-specific implementations (using CUDA, Cell SDK and Intel MKL). The results give an insight in the degree of portability of RapidMind code and code performance across different architectures.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Distributed and Parallel Computing Systems · Advanced Data Storage Technologies
