篇名 | 02render-實現異構計算程式移植的OpenCL轉 Renderscript轉譯器設計 |
---|---|
卷期 | 153 |
並列篇名 | O2render- M Open CL-to-Renderscript Translator in Heterogeneous Computing Environment |
作者 | 楊證諺 、 吳奕叡 、 廖世偉 、 范綱凱 、 王聖文 |
頁次 | 090-098 |
關鍵字 | 異構計算 、 開放計算語言 、 渲染腳本 、 Heterogeneous Computing 、 Open Computing Language ; OpenCL 、 Renderscript |
出刊日期 | 201310 |
Android裝置在世界上的數量超過九億個,可以說是最具有影響力的開源作業系統。而在2011 年之後的Android版本中,Google引入了 Renderscript語言和其runtime系統。Renderscript在不失可用性 (usability)的前提下,提供良好的效能和便攜性。但是,以OpenCL等現存的語言編寫出的軟件,將 因此而難以再被利用。所以,我們開發出O2render系統,使OpenCL的程序能夠執行在Android裝置 上。在分析OpenCL和Renderscript之間根本的差異之後,利用擴充LLVM的前端Clang設計出OpenCL 到Renderscript的轉譯器。實驗結果顯示,我們能夠以極小的轉換開銷,使Renderscript和原始程式 達到大約相同的效能。
More than 900 million Android devices are world's most impactful real-time, interactive multimedia systems that are open-sourced. Google introduced Renderscript language and run-time in Android releases starting in 2011. Renderscript delivers performance and portability without losing usability. However, it is difficult to reuse software written in existing compute languages such as OpenCL. Thus, we develop the O2render system to enable OpenCL programs on Android devices. We analyze fundamental differences between OpenCL and Renderscript, and present our design of a translator between them using low-level virtual machine (LLVM). We extend LLVMs frontend, Clang, and show that we achieve about the same performance in Renderscript with minimal translation overhead.