上海交通大学学报(自然版) ›› 2013, Vol. 47 ›› Issue (07): 1065-1071.

• 自动化技术、计算机技术 • 上一篇    下一篇

国产Unicore架构的Android系统绘图操作指令级加速优化

凌明,武建平,王猛猛   

  1. (东南大学 国家专用集成电路系统工程技术研究中心, 南京 210096)
     
  • 收稿日期:2012-07-02 出版日期:2013-07-30 发布日期:2013-07-30
  • 基金资助:

    国家科技重大专项资助项目(2009ZX010310010043),“青蓝工程”资助项目

Instruction-level Acceleration for Drawing Operations of Android System Based on Domestic Unicore Architecture

LING Ming,WU Jianping,WANG Mengmeng
  

  1. (National ASIC System Engineering Research Center, Southeast University, Nanjing 210096, China)
  • Received:2012-07-02 Online:2013-07-30 Published:2013-07-30

摘要:

针对国产Unicore架构平台在二维绘图过程中内存填充操作及多种像素格式alpha混合等耗时操作,利用Unicore架构访问32 byte对齐内存数据的高效性,改变内存填充操作,采用汇编技术批量填充内存,优化内存填充效率;利用单指令多数据(SIMD)协处理器的运算并发性加速改进alpha混合操作,使SK130平台能够并行完成多个像素的alpha混合,提升alpha混合效率.实验结果表明:采用汇编优化后,Android系统Canvas填充效率平均提升17%,最高达44%.采用SIMD加速技术与汇编优化相结合后,Android系统位图渲染效率平均提升34%.

 
 

关键词: 指令级优化, Android系统, Unicore架构, 图形系统, Skia库

Abstract:

The bionic C library and the graphic system of the Android system were analyzed in this paper. It was found that the memory filling operations of the system took lots of time, so did the alpha compositing operations. The Unicore architecture could achieve better performance when accessing to 32 bytes aligned memory. The assembly language optimization approach was used to optimize the memory filling operation. The characteristics of concurrent operation of the SIMD (Single Instruction Multiple Data) co-processor were utilized to optimize the alpha compositing operation, which could finish the composition in processing several pixels simultaneously. The canvas filling operation was improved by 17% on average and up to 44% in the experiments for 0xbench after implemented with the mentioned assembly optimization approach. The bitmap drawing operation in 0xbench was accelerated by 34% on average assisted by  the mentioned  SIMD accelerated scheme and assembly optimization methods.
 

Key words: instruction-level optimization, Android system, Unicore architecture, graphic system, Skia library

中图分类号: