免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3311 | 回复: 5
打印 上一主题 下一主题

[进程管理] 大讨论: 手机硬件那么强,android为什么还那么容易卡(更新) [复制链接]

论坛徽章:
22
丑牛
日期:2014-08-15 14:32:0015-16赛季CBA联赛之同曦
日期:2017-12-14 15:28:14黑曼巴
日期:2017-08-10 08:14:342017金鸡报晓
日期:2017-02-08 10:39:42黑曼巴
日期:2016-11-15 15:48:38CU十四周年纪念徽章
日期:2016-11-09 13:19:1015-16赛季CBA联赛之同曦
日期:2016-04-08 18:00:03平安夜徽章
日期:2015-12-26 00:06:30程序设计版块每日发帖之星
日期:2015-12-03 06:20:002015七夕节徽章
日期:2015-08-21 11:06:17IT运维版块每日发帖之星
日期:2015-08-09 06:20:002015亚冠之吉达阿赫利
日期:2015-07-03 08:39:42
1 [报告]
发表于 2016-09-26 10:31 |显示全部楼层
好问题啊!请各位同行踊跃参与。我一些片面的看法。
第一,硬件真的很强大?cpu数目多,内存大就代表硬件好吗?瓶颈在哪里,这是很重要的细节。DDR带宽是否够,EMMC速度怎么样,很多广告之外的细节很重要。
第二,软件拖垮了硬件。android 本来就是用虚拟机的,多了一层 JVM 。性能打了折扣,再加上软件架构的设计问题,后台往往几十个程序在跑。手机当然吃不消了。加上手机需要考虑功耗,并不是所有的cpu都用最高频率跑的。也不是所有的cpu都会跑。

论坛徽章:
22
丑牛
日期:2014-08-15 14:32:0015-16赛季CBA联赛之同曦
日期:2017-12-14 15:28:14黑曼巴
日期:2017-08-10 08:14:342017金鸡报晓
日期:2017-02-08 10:39:42黑曼巴
日期:2016-11-15 15:48:38CU十四周年纪念徽章
日期:2016-11-09 13:19:1015-16赛季CBA联赛之同曦
日期:2016-04-08 18:00:03平安夜徽章
日期:2015-12-26 00:06:30程序设计版块每日发帖之星
日期:2015-12-03 06:20:002015七夕节徽章
日期:2015-08-21 11:06:17IT运维版块每日发帖之星
日期:2015-08-09 06:20:002015亚冠之吉达阿赫利
日期:2015-07-03 08:39:42
2 [报告]
发表于 2016-09-26 13:15 |显示全部楼层
回复 3# mordorwww

这里就有很多具体的技术细节了。
ARM在推big-LITTLE架构,推出了 EAS 调度器。这里本来就是一个很难的工作,什么时候上大核,什么时候上小核。调度器的tuning的情况,和UI的流畅程序相关性很大。
手机卡顿主要还是和workload相关,workload太多了,容易出现丢帧的现象。
十几个进程,还要看是什么样的进程。例如,就算你的PC这么强劲的性能,运行make -j32 都会卡的很。如果它们确实大部分时间都在 sleep,那么自然是好的。但是它们可能在做很多事情。

论坛徽章:
22
丑牛
日期:2014-08-15 14:32:0015-16赛季CBA联赛之同曦
日期:2017-12-14 15:28:14黑曼巴
日期:2017-08-10 08:14:342017金鸡报晓
日期:2017-02-08 10:39:42黑曼巴
日期:2016-11-15 15:48:38CU十四周年纪念徽章
日期:2016-11-09 13:19:1015-16赛季CBA联赛之同曦
日期:2016-04-08 18:00:03平安夜徽章
日期:2015-12-26 00:06:30程序设计版块每日发帖之星
日期:2015-12-03 06:20:002015七夕节徽章
日期:2015-08-21 11:06:17IT运维版块每日发帖之星
日期:2015-08-09 06:20:002015亚冠之吉达阿赫利
日期:2015-07-03 08:39:42
3 [报告]
发表于 2016-09-27 10:11 |显示全部楼层
回复 6# mordorwww

1.  看你make什么项目吧。我的机器是i7 8核的台式机,make android 会很卡。
2.  内存永远是不够用的。进程多了,内存的缓存页太多。需要压缩或者置换,这是一个原因。
3.  cpu bound 的 case 可能会比较少。但肯定会存在。
4.  很多应用都会去 emmc 里面读取会存数据,我理解老机器卡的原因和这个关系比较大。

论坛徽章:
22
丑牛
日期:2014-08-15 14:32:0015-16赛季CBA联赛之同曦
日期:2017-12-14 15:28:14黑曼巴
日期:2017-08-10 08:14:342017金鸡报晓
日期:2017-02-08 10:39:42黑曼巴
日期:2016-11-15 15:48:38CU十四周年纪念徽章
日期:2016-11-09 13:19:1015-16赛季CBA联赛之同曦
日期:2016-04-08 18:00:03平安夜徽章
日期:2015-12-26 00:06:30程序设计版块每日发帖之星
日期:2015-12-03 06:20:002015七夕节徽章
日期:2015-08-21 11:06:17IT运维版块每日发帖之星
日期:2015-08-09 06:20:002015亚冠之吉达阿赫利
日期:2015-07-03 08:39:42
4 [报告]
发表于 2016-09-27 13:08 |显示全部楼层
回复 10# mordorwww

那你用的是什么手机?我们之前做的手机内存虽然只有512MB,也很少出现黑屏之类的。这些都是很严重的BUG。
Linux的内存管理机制是会尽量把内存用来cache东西,当内存不够的时候,就需要缩减。所以内存一直是不够用的。
CPU bound 的情况,因为每秒要画60帧。就是说1/60秒内的时间要把数据准备好,如果出现了什么异常,CPU没来得及准备数据,就会出现丢帧。

论坛徽章:
22
丑牛
日期:2014-08-15 14:32:0015-16赛季CBA联赛之同曦
日期:2017-12-14 15:28:14黑曼巴
日期:2017-08-10 08:14:342017金鸡报晓
日期:2017-02-08 10:39:42黑曼巴
日期:2016-11-15 15:48:38CU十四周年纪念徽章
日期:2016-11-09 13:19:1015-16赛季CBA联赛之同曦
日期:2016-04-08 18:00:03平安夜徽章
日期:2015-12-26 00:06:30程序设计版块每日发帖之星
日期:2015-12-03 06:20:002015七夕节徽章
日期:2015-08-21 11:06:17IT运维版块每日发帖之星
日期:2015-08-09 06:20:002015亚冠之吉达阿赫利
日期:2015-07-03 08:39:42
5 [报告]
发表于 2016-09-27 15:11 |显示全部楼层
回复 12# send_linux

赞同。
一个软件总有方法把你的手机弄卡。

论坛徽章:
22
丑牛
日期:2014-08-15 14:32:0015-16赛季CBA联赛之同曦
日期:2017-12-14 15:28:14黑曼巴
日期:2017-08-10 08:14:342017金鸡报晓
日期:2017-02-08 10:39:42黑曼巴
日期:2016-11-15 15:48:38CU十四周年纪念徽章
日期:2016-11-09 13:19:1015-16赛季CBA联赛之同曦
日期:2016-04-08 18:00:03平安夜徽章
日期:2015-12-26 00:06:30程序设计版块每日发帖之星
日期:2015-12-03 06:20:002015七夕节徽章
日期:2015-08-21 11:06:17IT运维版块每日发帖之星
日期:2015-08-09 06:20:002015亚冠之吉达阿赫利
日期:2015-07-03 08:39:42
6 [报告]
发表于 2016-09-27 15:12 |显示全部楼层
回复 13# mordorwww

你这个在公司内部出现可以报 bug 了。具体什么原因我不清楚,但是普遍来说,android 确实是越用越卡。就算重新刷了系统,也还是卡。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP