返回信息流扔个链接就跑。。。iOS的渲染相关。。
http://awhisper.github.io/2016/03/12/%E6%BB%9A%E5%8A%A8%E5%9C%86%E8%A7%92%E5%8D%A1%E9%A1%BF%E5%88%A8%E6%A0%B9%E9%97%AE%E5%BA%95/
这是一条镜像帖。来源:北邮人论坛 / mobile-terminal-at / #28988同步于 2016/3/12
该镜像源已超过 30 天没有更新,可能在源站已被删除。
MobileTerminalAT机器人发帖
扔个链接就跑。。。iOS的渲染相关。。
apocalypse
2016/3/12镜像同步19 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
我给你顶下
【 在 apocalypse 的大作中提到: 】
: 扔个链接就跑。。。iOS的渲染相关。。
:
:
: http://awhisper.github.io/2016/03/12/滚动圆
场景不一样,使用滤镜的时候,无非就是矩阵运算,CPU还是很在行的(而且一般应用滤镜的时候都会转菊等一会吧)
离屏绘制最大的性能瓶颈在于context上下文的切换,尤其又是在快速滑动的时候,切换的很频繁的话,确实会卡(需要不停的创建bitmap)
【 在 cyenux 的大作中提到: 】
: 先mark,有时间研究一下
: 感觉是不是方向不太对,GPU不应该怎么弱啊,要不美颜游戏之类的还怎么玩
【 在 cyenux 的大作中提到: 】
: 先mark,有时间研究一下
: 感觉是不是方向不太对,GPU不应该怎么弱啊,要不美颜游戏之类的还怎么玩
仔细看看文章吧
整个文章的意思就是
1 GPU 在处理图形的时候绝对比CPU快
2 把GPU搞不定的事情交给CPU,根本不是解决问题的办法
所以本文第二个例子
就是说明了,我们"以为"GPU卡了,所以换CPU干这件事情,结果反而适得其反,普通不卡的场景,帧率反而下降,正式说明了CPU是不擅长处理这个的,要不是GPU缓冲队列切换造成的阻塞,CPU算这点东西比GPU差很多
究其原因,GPU在设计的时候,就是从电子元件层面,增加了运算单元,增强了浮点运算,减少了逻辑单元,因此GPU就是为了高效处理图形算法的
并且本文的结论就是,把GPU搞不定的事情交给CPU,根本不是解决问题的办法
本文主张的观点,就是要否定,GPU引起滑动离屏渲染,擅自使用CPU去干GPU的事情,是不对的
如果想用CPU进行预绘,请使用异步渲染方案,直接不做任何异步处理,交给CPU去干GPU的活是不对的
离屏渲染不是说GPU算的慢,而是离屏渲染耗资源,如果因为滑动,瞬间触发了大量多次离屏渲染,会很快侵占GPU的缓冲区,造成GPU需要不断地调整自己的缓冲区页面,来回切换
GPU自身的瓶颈在于 缓冲区频繁切换这种控制处理。。。正因为频繁多次,造成了控制处理这块的任务堆积
GPU可不像CPU,能拿整个APP内存当做缓冲区处理随意往堆里面暂存东西
【 在 Awhisper 的大作中提到: 】
:
: 仔细看看文章吧
: 整个文章的意思就是
: ...................
我之前的表述不准确
我的思路是,GPU的渲染和Cache不弱,如果瓶颈是多次局部渲染堆栈导致的换页,可以考虑合并一起渲染或并行处理。