Support for Data Parallelism in the CAL Actor Language
2016 (English)In: Proceedings of the 3rd Workshop / Programming Models for SIMD/Vector Processing (WPMVP '16), New York, NY: Association for Computing Machinery (ACM), 2016, 1-8 p.Conference paper (Refereed)
With the arrival of heterogeneous manycores comprising various features to support task, data and instruction-level parallelism, developing applications that take full advantage of the hardware parallel features has become a major challenge. In this paper, we present an extension to our CAL compilation framework (CAL2Many) that supports data parallelism in the CAL Actor Language. Our compilation framework makes it possible to program architectures with SIMD support using high-level language and provides efficient code generation. We support general SIMD instructions but the code generation backend is currently implemented for two custom architectures, namely ePUMA and EIT. Our experiments were carried out for two custom SIMD processor architectures using two applications.
The experiment shows the possibility of achieving performance comparable to hand-written machine code with much less programming effort.
Place, publisher, year, edition, pages
New York, NY: Association for Computing Machinery (ACM), 2016. 1-8 p.
SIMD, CAL Actor Language, QRD
IdentifiersURN: urn:nbn:se:liu:diva-130905DOI: 10.1145/2870650.2870656ISBN: 978-1-4503-4060-1OAI: oai:DiVA.org:liu-130905DiVA: diva2:956510
Workshop on Programming Models for SIMD/Vector Processing (WPMVP16), held in conjunction with the 21st ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, Barcelona, Spain, March 12-16, 2016
FunderSwedish Foundation for Strategic Research eLLIIT - The Linköping‐Lund Initiative on IT and Mobile Communications