为了比较直观的看到AWTK的基本性能,我们对产品开发者比较关心GUI的一些参数做了测试,如界面刷新帧数、启动时间等。让我们从参数上直观了解Linux下AWTK与Qt的性能对比。
测试条件
开发板:EPC-6G2C-L
处理器:Freescale I.MX6UL(cortex-A7内核)
主频:528MHz
内存:128MB DDR3
系统:AWorks/Linux
GUI框架:AWTK
屏幕:480x272,16位色
测试范例
本文选取5个AWTK的Demo程序进行测试,每个范例所用控件如表1所列。
表1 AWTK测试范例和所用控件
测试方法
先在AWorks系统下分别测试AWTK的Debug版本和Release版本,进行AWTK自身对比,然后在Linux系统下测试AWTK,与AWorks平台进行简单对比,对比AWTK跨平台表现,最后在Linux下,找几个功能接近、用到的控件也接近的Qt范例进行粗略对比。
测试项因为受到平台限制,AWorks与Linux上会有些差异。大体测试包括帧数、内存拷贝速度、AWTK界面启动时间、内存占用和CPU使用率等。
测试结果
1、AWorks系统下Debug版本
Debug版本测试结果,详见表2。
表2 Debug版本测试结果
2、AWorks系统下Release版本
Release版本测试结果,详见表3。
表3 Release版本测试结果
说明:
AWTK启动时间:指的是在程序从执行main函数开始到打开界面所需要的时间;
整体启动时间:指的是将程序烧写开发版后,从上电到打开界面所需要的时间。
无论是Debug版本还是Release版本,AWTK界面的启动时间都是很短的,都在15ms以内,对比两个版本,可以看到Release版本明显提升。
3、Linux系统下Release版本
为了对比AWTK在Linux下的表现,将这几个范例交叉编译运行,相关测试结果如表4所列。
表4 Linux下AWTK测试结果
说明:
内存占用和CPU占用分别来源于top命令结果的VSZ%和%CPU。
可以看到,在Linux下,AWTK的表现也是很不错的。
4、与Qt对比
为了对比AWTK与Qt,我们找了几个功能接近、使用到的控件也比较接近的范例,进行了测试,用于进行简单对比,测试结果如表5所列。
表5 Qt范例测试结果
选取的Qt范例功能比AWTK范例的简单很多,复杂度也小很多。但对比之下,AWTK和Qt的范例,可以看到AWTK应用启动时间明显快于Qt,动态情况下,CPU占用率也相对较小。