您尚未登录。

楼主 # 2024-07-18 17:36:18

海石生风
会员
所在地: 深圳
注册时间: 2019-07-02
已发帖子: 649
积分: 782
个人网站

AWTK UI在D21x RTOS SDK平台上性能非常差,平移动画非常卡!什么原因?

用开发板D213ECV-DEMO-V4评估,将image_manager_set_max_mem_size_of_cached_images函数参数改为16M ,UI资源写入到NAND的文件系统内,跑chart demo。

取消Don't use window animation cache选项时没有平移动画效果,造成界面切换会延迟一两秒,体验非常差!选中此选项时平移动画非常卡,也是无法商用。

平移动画开销应该不大呀,这是为何?

最近编辑记录 海石生风 (2024-07-18 17:44:50)

离线

楼主 #6 2024-07-31 22:30:10

海石生风
会员
所在地: 深圳
注册时间: 2019-07-02
已发帖子: 649
积分: 782
个人网站

Re: AWTK UI在D21x RTOS SDK平台上性能非常差,平移动画非常卡!什么原因?

ArtInChip 说:
xiaoxin7 说:
ArtInChip 说:

@海石生风

有几个方面的原因,我也不能说AWTK不好:
1. 新的SDK1.0.5对QT、LVGL更好。
2. 我们有新工具的计划


AWTK后续还会适配嘛?

个人角度出发,我比较喜欢用新工具。

你所说的新工具是指QD-Plus、inoneGUI这两?

稍微看了下,两个都是国内公司做的,都深受Windows影响,UI库里的API都透着浓浓的MFC的味道。

个人不看好(个人喜好)。

离线

楼主 #9 2024-08-28 09:48:38

海石生风
会员
所在地: 深圳
注册时间: 2019-07-02
已发帖子: 649
积分: 782
个人网站

Re: AWTK UI在D21x RTOS SDK平台上性能非常差,平移动画非常卡!什么原因?

再次测试chart demo,可以肯定,是移植有问题:打开宏ENABLE_PERFORMANCE_PROFILE后,在demo主界面只有顶部app bar的时间在按秒更新,其它元素静止时,时间每更新一次就会有以下打印信息:

packages/third-party/awtk-ui/awtk/src/base/lcd_profile.c:322                                           
-------------------------------------                                                                  
  total_cost=490                                                                                       
  draw_image_cost=4 times=6                                                                            
  draw_text_cost=0 times=26                                                                            
  fill_cost=3 times=4                                                                                  
  stroke_cost=0 times=0                                                                                
  end_frame_cost=4                                                                                     
-------------------------------------

其中 total_cost 指的是界面刷新耗时毫秒数,这里要490ms,太离谱!
上述调试说明参见这里: https://gitee.com/zlgopen/awtk/blob/master/docs/optimation.md#%E4%BA%8C%E5%B7%A5%E5%85%B7

根据上述信息可以得出UI性能弱鸡原因:
- 局部text更新触发整屏刷新
- 整屏刷新耗时半秒

每一条都是逆天般的存在!

再细看源码,LCD显存只开了双buffer没有开三buffer,AWTK官方说三buffer可以大大提高帧率。
像D21x这样的MPU HMI芯片只支持LVGL是不够的,LVGL的中文输入都是个问题,这个问题我另外发帖说明。

最近编辑记录 海石生风 (2024-08-28 10:19:30)

离线

楼主 #10 2024-08-28 16:52:19

海石生风
会员
所在地: 深圳
注册时间: 2019-07-02
已发帖子: 649
积分: 782
个人网站

Re: AWTK UI在D21x RTOS SDK平台上性能非常差,平移动画非常卡!什么原因?

哦,如果LCD刷新模式选择为swap_ex mode就不会因为 局部text更新而触发整屏刷新。

进一步测试发现是贴图导致刷新缓慢:如果没有任何贴图UI是比较流畅的,但只要有一个哪怕是非常小的贴图,刷新耗时就会超过100ms

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn