PPoPP 2016
Sat 12 - Wed 16 March 2016 Barcelona, Spain
Sun 13 Mar 2016 16:30 - 17:00 at Mallorca - Session 4 Chair(s): Roland Leißa

In this paper, we explain the steps we have taken to port a large, industry-grade computational fluid dynamics application to the Intel Xeon Phi architecture using the Intel Array Notation that is part of Intel Cilk Plus. An essential part of the performance refactoring process for Xeon Phi is to achieve high-quality vectorization, for which the Intel Array Notation is one option among others to vectorize code. We have encapsulated the Intel Array Notation syntax in a C++ class to drastically reduce the refactoring workload. In the paper, we study how our approach helps the compiler to generate vectorized code. Derived from that study, we give some best-practice tips for handling special code parts, e.g., conditional control flows. Using the introduced C++ class, we present a performance evaluation of the ported computational fluid dynamics application.

Sun 13 Mar

Displayed time zone: Belfast change