[IEEE]
Optimizing performance of compute-intensive vision apps running on mobile application processor (AP) is critical to satisfactory experience for smartphone and tablet users. Most existing vision algorithms were primarily designed and implemented for desktop and server platforms. Porting them to a mobile platform without adapting the algorithms to account for the platform’s limitations would cause serious algorithmhardware mismatches, yielding unnecessary runtime degradation. Modern mobile AP, which integrates multicore CPUs, GPUs and other special-purpose accelerators, offers multiple options of porting vision apps to various computing cores. To develop an optimized implementation for a vision app, it is necessary to understand the potential mismatches for better algorithm adaptation and optimized mapping of the algorithm to a handheld platform. In this paper, we identify mismatches and propose adaptation guidelines for three different porting strategies: porting an algorithm to 1) a mobile CPU, 2) a mobile GPU, and 3) mobile heterogeneous multicores (mobile CPUs+GPUs). For each strategy, we illustrate the adaptation/porting guidelines using an exemplar vision task. Experimental results demonstrate that with proper adaptation following the proposed guidelines, we could achieve a significant speedup with little accuracy drop.