透過您的圖書館登入
IP:3.15.25.60
  • 學位論文

基於Android平台實作高等計算架構

Design and Implementation of High-Level Compute on Android Systems

指導教授 : 廖世偉
若您是本文的作者,可授權文章由華藝線上圖書館中協助推廣。

摘要


無資料

關鍵字

Andriod GPU OpenCL Aparapi Rodinia

並列摘要


As Android devices come with various CPU and GPU cores, the demand for effective parallel computing across-the-board increases. In response, Google has released Renderscript to leverage parallel computing while maintaining portability. However, the adoption has been slow -- We hardly see any Renderscript apps on Google Play. In the meantime, the proliferation of heterogeneous cores inside a single device calls for a higher-level, more developer-friendly parallel language. Since most Android developers already use Java, we develop the first Java-based compute system on Android called Android-Aparapi. Android-Aparapi facilitates programmers' adoption of compute by obviating the need of learning a new language like Renderscript, thus the software can start catching up with the hardware trend of doubling the number of cores periodically. Furthermore, Android-Aparapi is a better defined API than the original Aparapi. We support comprehensive set of data types and their array forms in terms of Java objects. In addition, we propose innovative optimizations that effectively reduce the Java-Native Interface overheads. Finally, we develop an Android-Aparapi benchmark suite by extending Rodinia benchmark to Android. The Java's Thread Pool version of the suite runs 3 times slower than the Android-Aparapi version. This demonstrate the effectiveness of our high-level compute system. Furthermore, we compare our Android-Aparapi version with the existing lower-level OpenCL version and show that the performance is comparable (Our performance is at 88% of OpenCL's). In short, we achieve higher-level abstraction without sizable losing performance.

並列關鍵字

Andriod GPU OpenCL Aparapi Rodinia

參考文獻


University of Cambridge Computer Laboratory. Available from http://www. cl. cam.
Rodinia: A benchmark suite for heterogeneous computing. In Workload Characterization,
2009. IISWC 2009. IEEE International Symposium on, pages 44–54. IEEE,
[10] G. Dotzler, R. Veldema, and M. Klemm. Jcudamp: Openmp/java on cuda. In
for automatic translation and optimization. In Proceedings of the 14th ACM SIGPLAN

延伸閱讀