Thumbnail
Access Restriction
Subscribed

Author Manilov, Stanislav ♦ Andrieu, Cedric ♦ Franke, Björn ♦ Magrath, Anthony
Source ACM Digital Library
Content type Text
Publisher Association for Computing Machinery (ACM)
File Format PDF
Language English
Subject Domain (in DDC) Computer science, information & general works ♦ Computer programming, programs & data
Subject Keyword Retargeting ♦ Compiler-known functions ♦ Intrinsics ♦ Graph pattern matching
Abstract Short-vector SIMD and DSP instructions are popular extensions to common Isas. These extensions deliver excellent performance and compact code for some compute-intensive applications, but they require specialised compiler support. To enable the programmer to explicitly request the use of such an instruction, many C compilers provide platform-specific intrinsic functions, whose implementation is handled specially by the compiler. The use of such intrinsics, however, inevitably results in non-portable code. In this paper we develop a novel methodology for retargeting such non-portable code, which maps intrinsics from one platform to another, taking advantage of similar intrinsics on the target platform. We employ a description language to specify the signature and semantics of intrinsics and perform graph-based pattern matching and high-level code transformations to derive optimised implementations exploiting the target's intrinsics, wherever possible. We demonstrate the effectiveness of our new methodology, implemented in the FREE RIDER tool, by automatically retargeting benchmarks derived from OpenCV samples and a complex embedded application optimised to run on an Arm Cortex-M4 to an Intel Edison module with Sse4.2 instructions. We achieve a speedup of up to 3.73 over a plain C baseline, and on average 96.0% of the speedup of manually ported and optimised versions of the benchmarks.
Description Affiliation: Cirrus Logic International (UK) Ltd., Cirrus Logic Inc., Westfield House, 26 Westfield Road, Edinburgh, EH11, 2QB, United Kingdom (Magrath, Anthony; Andrieu, Cedric) || Institute for Computing Systems Architecture, School of Informatics, University of Edinburgh, Informatics Forum, 10 Crichton Street, Edinburgh, EH8, 9AB, United Kingdom (Manilov, Stanislav; Franke, Björn)
Age Range 18 to 22 years ♦ above 22 year
Educational Use Research
Education Level UG and PG
Learning Resource Type Article
Publisher Date 1983-05-01
Publisher Place New York
Journal ACM SIGPLAN Notices (SIGP)
Volume Number 50
Issue Number 5
Page Count 10
Starting Page 1
Ending Page 10


Open content in new tab

   Open content in new tab
Source: ACM Digital Library