{"title":"Compute for mobile devices: performance-focused hands-on tutorial","authors":"M. Shevtsov","doi":"10.1145/2669062.2669064","DOIUrl":null,"url":null,"abstract":"For modern SoCs used in mobile devices, it is vital to focus on the processing efficiency through leveraging a heterogeneous potential of the architecture. In this tutorial, we offer a hands-on experience with existing APIs for accelerating compute-intensive portions of a mobile application. Specifically, as a first step we introduce the essentials of the most popular general Compute APIs available in the mobile domain, including RenderScript*, OpenCL*, GLES pixel and recently compute shaders (plus quick comparison to more vendor-specific APIs like CUDA* and Metal*). We continue with medium-complexity topics like example API-specific performance tricks in action. Finally, we touch advanced aspects like tools-assisted performance analysis. General focus is on the changes required for the typical user code to leverage good GPU acceleration.","PeriodicalId":114416,"journal":{"name":"SIGGRAPH Asia 2014 Mobile Graphics and Interactive Applications","volume":"1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2014-11-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"SIGGRAPH Asia 2014 Mobile Graphics and Interactive Applications","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2669062.2669064","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
For modern SoCs used in mobile devices, it is vital to focus on the processing efficiency through leveraging a heterogeneous potential of the architecture. In this tutorial, we offer a hands-on experience with existing APIs for accelerating compute-intensive portions of a mobile application. Specifically, as a first step we introduce the essentials of the most popular general Compute APIs available in the mobile domain, including RenderScript*, OpenCL*, GLES pixel and recently compute shaders (plus quick comparison to more vendor-specific APIs like CUDA* and Metal*). We continue with medium-complexity topics like example API-specific performance tricks in action. Finally, we touch advanced aspects like tools-assisted performance analysis. General focus is on the changes required for the typical user code to leverage good GPU acceleration.