Modeling Heterogeneous Computing Performance with Offload Advisor

C. Andreolli, Zakhar A. Matveev, Vladimir Tsymbal · 2020

Programming of heterogeneous platforms requires thorough analysis of applications on their design stage for determining the best data and work decomposition between CPU and an accelerating hardware. In many cases the applications already exist in a form of conventional CPU programming language like C++, the main problem is to determine which part of the application would leverage from being offloaded to an accelerating device. Even bigger problem is to estimate, how much performance increase one should expect due to the accelerating in the particular heterogeneous platform. Each platform has its unique limitations that are affecting performance of offloaded compute tasks, e.g. data transfer tax, task initialization overhead, memory latency and bandwidth constraints. In order to take into account those constraints, software architects and developers need tooling for collecting right information and producing recommendations to make the best design and optimization decisions.

Read the paper · More papers on PaperTik