(3.237.48.165) 您好!臺灣時間:2021/05/09 13:38
字體大小: 字級放大   字級縮小   預設字形  
回查詢結果

詳目顯示:::

我願授權國圖
: 
twitterline
研究生:陳泓瞬
研究生(外文):Hung-Shun Chen
論文名稱:基於Android平台實作高等計算架構
論文名稱(外文):Design and Implementation of High-Level Compute on AndroidSystems
指導教授:廖世偉
口試委員:徐慰中黃維中陳呈瑋
口試日期:2013-07-13
學位類別:碩士
校院名稱:國立臺灣大學
系所名稱:資訊工程學研究所
學門:工程學門
學類:電資工程學類
論文種類:學術論文
論文出版年:2013
畢業學年度:101
語文別:英文
論文頁數:24
中文關鍵詞:AndriodGPUOpenCLAparapiRodinia
外文關鍵詞:AndriodGPUOpenCLAparapiRodinia
相關次數:
  • 被引用被引用:0
  • 點閱點閱:195
  • 評分評分:系統版面圖檔系統版面圖檔系統版面圖檔系統版面圖檔系統版面圖檔
  • 下載下載:0
  • 收藏至我的研究室書目清單書目收藏:0
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.

口試委員會審定書i
Acknowledgments iii
致謝v
中文摘要vii
Abstract ix
1 Introduction 1
1.1 Android-Aparapi: Higher-level than Renderscript . . . . . . . . . . . . . 1
1.2 Android-Aparapi’s Backend: Targeting OpenCL today . . . . . . . . . . 2
2 Parallel APIs: Aparapi and OpenCL 3
2.1 OpenCL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2 Aparapi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3 Architecture of Android-Aparapi 7
3.1 Android-Aparapi Frontend on a PC or Workstation . . . . . . . . . . . . 7
3.2 Android-Aparapi Backend on an Android Device . . . . . . . . . . . . . 8
4 Boosting the API of Android-Aparapi 9
4.1 Optimizations in Android-Aparapi System . . . . . . . . . . . . . . . . . 10
5 Experimental Results 11
5.1 Android-Aparapi performance vs. original Aparapi performance . . . . . 12
5.2 JTP vs. GPU mode in Android-Aparapi . . . . . . . . . . . . . . . . . . 13
5.3 Android-Aparapi performance vs. original OpenCL performance on GPU 16
6 Related Work 19
7 Conclusion and Future Work 21
References 23

[1] Aparapi. https://code.google.com/p/aparapi/.
[2] JavaCL. https://code.google.com/p/javacl/.
[3] Jocl-java bindings for opencl. http://www.jocl.org/.
[4] MattScarpino. https://http://www.openclblog.com/2013/03/
opencl-image-filtering-on-nexus-10.html/.
[5] QualComm SDK. https://developer.qualcomm.com/discover/
mobile-platforms/android/.
[6] Rahul Garg. https://bitbucket.org/codedivine/testcln10/src.
[7] Android NDK Document, 2012.
[8] P. Calvert. Parallelisation of java for graphics processors. Final-year dissertation at
University of Cambridge Computer Laboratory. Available from http://www. cl. cam.
ac. uk/ prc33, 2010.
[9] S. Che, M. Boyer, J. Meng, D. Tarjan, J. W. Sheaffer, S.-H. Lee, and K. Skadron.
Rodinia: A benchmark suite for heterogeneous computing. In Workload Characterization,
2009. IISWC 2009. IEEE International Symposium on, pages 44–54. IEEE,
2009.
[10] G. Dotzler, R. Veldema, and M. Klemm. Jcudamp: Openmp/java on cuda. In
Proceedings of the 3rd International Workshop on Multicore Software Engineering,
pages 10–17. ACM, 2010.
[11] Google. Renderscript. http://developer.android.com/guide/
topics/renderscript/index.html.
[12] K. Group. OpenCL. http://www.khronos.org/opencl/.
[13] M. GSS. aopencl. https://code.google.com/p/aopencl/.
[14] S. Lee, S.-J. Min, and R. Eigenmann. OpenMP to GPGPU: a compiler framework
for automatic translation and optimization. In Proceedings of the 14th ACM SIGPLAN
symposium on Principles and practice of parallel programming, PPoPP ’09,
pages 101–110, New York, NY, USA, 2009. ACM.
[15] NVIDIA. CUDA Toolkit. http://developer.nvidia.com/
cuda-toolkit.
[16] P. C. Pratt-Szeliga, J. W. Fawcett, and R. D. Welch. Rootbeer: Seamlessly using
gpus from java. In High Performance Computing and Communication & 2012 IEEE
9th International Conference on Embedded Software and Systems (HPCC-ICESS),
2012 IEEE 14th International Conference on, pages 375–380. IEEE, 2012.
[17] K. Skadron. Rodinia:Accelerating Compute-Intensive Applications with Accelerators.
http://lava.cs.virginia.edu/Rodinia/.
[18] R. Vallee-Rai, P. Co, E. Gagnon, L. Hendren, P. Lam, and V. Sundaresan. Soot:
A java bytecode optimization framework. In CASCON First Decade High Impact
Papers, pages 214–224. IBM Corp., 2010.
[19] Y. Yan, M. Grossman, and V. Sarkar. Jcuda: A programmer-friendly interface for
accelerating java programs with cuda. In Euro-Par 2009 Parallel Processing, pages
887–899. Springer, 2009.
[20] C.-y. Yang, Y.-j.Wu, and S. Liao. O2render: An opencl-to-renderscript translator for
porting across various gpus or cpus. In Embedded Systems for Real-time Multimedia
(ESTIMedia), 2012 IEEE 10th Symposium on, pages 67–74. IEEE, 2012.


QRCODE
 
 
 
 
 
                                                                                                                                                                                                                                                                                                                                                                                                               
第一頁 上一頁 下一頁 最後一頁 top
無相關期刊
 
系統版面圖檔 系統版面圖檔