Lost in heterogeneity

Sameer AbuAsal, R. Tohid, Jagannathan Ramanujam · 2015

Automatic parallelizing compilers have evolved greatly over the last decade. Tools like Pluto, Pr4All and PPCG are widely adopted to generate optimized OpenMP, CUDA and OpenCL codes. However, in the end, it is the programmer's responsibility to select the best target architecture for a particular application. In this work we provide a solution for the problem of architectural selection. We introduce a low cost model based on a classification problem which selects the fastest architecture for the generated code. We integrate our model in PPCG, a state of the art polyhedral compiler. Our experiments show that our model selects the fastest architecture 87% of the time when choosing between an Ivy Bridge Xeon CPU and a Kepler GPU and 81% of the time when choosing between a Xeon Sandy Bridge CPU and a Xeon Phi acceleration card.

Read the paper · More papers on PaperTik