6Xzy
標題
時間 Sun Nov 10 15:34:58 2013
※ 引述《Colaman ()》之銘言:
: App很肥 系統再瘦都救不了他沒錯 但是...
: 在oom之前 android 還有 application framework的OOP以及android kernel的LMK
: 所以也沒有那麼快跳到oom-killer 而且Google很愛在這邊偷吃步
系統只要進入認定的記憶體不足狀態,就會開始從高oom_adj開始清理,
當系統開始依照OOM_ADJ清理完畢後,那些被清掉的APP,下次就要重新load,
點APP到畫面出來就要一陣子,
尤其是低階RAM的機種,因為這些OEM為了要過CTS以防一堆離奇的問題,
為了要過monkey以防memory leak的問題,總是很喜歡在這邊動手腳.
一個真實的案例,某OEM某1G機台,在一個測試流程中,某OEM自製的底層APP
很多事情消費者是沒有選擇的權力,OEM選擇用了低RAM,消費者只會看傳單跟DM,
USER PID PPID VSIZE RSS WCHAN PC NAME
u0_a159 22329 1940 715244 127784 ffffffff 40048a70 S com.facebook.katana
u0_a179 23603 1940 549664 50888 ffffffff 40048a70 S com.facebook.orca
u0_a159 28225 1940 494260 46152 ffffffff 40048a70 S com.facebook.katana:nodex
: App肥也不見得會引發oom-killer 要看肥app在AMS的哪裡啊@@
: 再來
: 如果提到了oom/lmk/pmem/實體記憶體512MB 為什麼這裡是用VSS計算?
: 從oom/lmk的眼光 應該討論RSS
不好意思,上面那邊文章打錯了,把G-Protector看到的數值打成VSS,
我查了一下我的做法確實是RSS加總沒錯,
(把同屬一個APK使用到的每個process的RSS加總起來,應該是非常正確的檢驗方式)
請看我上面貼的PS LOG.
臉書124MB
一個不知名的臉書服務remote service(45MB),
臉書即時通49MB
CHROME
也是 85MB +70MB 兩個
u0_a146 10127 1940 711316 85920 ffffffff 40048a70 S com.android.chrome
u0_i9 10161 1940 583180 70300 ffffffff 40048a70 S com.android.chrome:sandboxed_process0
: 從App開發者的眼光討論App肥不肥 應該優先討論PSS更甚USS以及RSS
我剛上一篇的數據是RSS加總沒錯 :P
雖然說明打錯了,可是數據是該package使用的RSS的總和
: 算VSS total來討論會不會頂到512MB實體記憶體頂是不是怪怪的?
VSS都400-500的 @_@ 不會有50MB那麼小
: procrank也只算有意義的PSS/USS total給人看 不是嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.230.173.159
--
※ 本文為 BruceX 轉寄自 ptt.cc 更新時間: 2013-11-25 09:14:35
看板 Android
作者 gpc (gpc)標題
Re: [新聞] Android 4.4只需512MB內存?別高興太早
時間 Sun Nov 10 15:34:58 2013
※ 引述《Colaman ()》之銘言:
: App很肥 系統再瘦都救不了他沒錯 但是...
: 在oom之前 android 還有 application framework的OOP以及android kernel的LMK
: 所以也沒有那麼快跳到oom-killer 而且Google很愛在這邊偷吃步
系統只要進入認定的記憶體不足狀態,就會開始從高oom_adj開始清理,
當系統開始依照OOM_ADJ清理完畢後,那些被清掉的APP,下次就要重新load,
點APP到畫面出來就要一陣子,
我的GPlayer為了有人說關掉也耗記憶體,我就在退出APP的時候整個釋放掉.
結果過幾天,又有人跟我說"從LAUNCHER點GPlayer"要等好幾秒才有畫面....
現在都是高階機子,記憶體問題比較不會覺得卡,但一樣會有啟動緩慢的問題
何況如果還有一個LMK在背後弄,重點是這個LMK各OEM非常喜歡調整,
結果過幾天,又有人跟我說"從LAUNCHER點GPlayer"要等好幾秒才有畫面....
現在都是高階機子,記憶體問題比較不會覺得卡,但一樣會有啟動緩慢的問題
何況如果還有一個LMK在背後弄,重點是這個LMK各OEM非常喜歡調整,
尤其是低階RAM的機種,因為這些OEM為了要過CTS以防一堆離奇的問題,
為了要過monkey以防memory leak的問題,總是很喜歡在這邊動手腳.
一個真實的案例,某OEM某1G機台,在一個測試流程中,某OEM自製的底層APP
可以重複被kernel的LMK,KILL高達300次以上,結果造成某server,memory leak,
暴肥了一百MB,本來就沒有多少空間可以用,跑了一陣子測試後,因為記憶體不足,
甚麼APP都開不了.
暴肥了一百MB,本來就沒有多少空間可以用,跑了一陣子測試後,因為記憶體不足,
甚麼APP都開不了.
該OEM為了解決這個問題,直接把該APP設定成永遠不能砍,可是記憶體就永遠少了好幾十MB,
重點是這個OEM自製的底層功能,我是一輩子都不會去用它的...XD
重點是這個OEM自製的底層功能,我是一輩子都不會去用它的...XD
很多事情消費者是沒有選擇的權力,OEM選擇用了低RAM,消費者只會看傳單跟DM,
根本沒人會注意細節,或者開機有多少可用,可以釋放到多少,這才是為甚麼ANDROID低階機
體驗總是有限制.(有點跟最近的假油一樣)
體驗總是有限制.(有點跟最近的假油一樣)
USER PID PPID VSIZE RSS WCHAN PC NAME
u0_a159 22329 1940 715244 127784 ffffffff 40048a70 S com.facebook.katana
u0_a179 23603 1940 549664 50888 ffffffff 40048a70 S com.facebook.orca
u0_a159 28225 1940 494260 46152 ffffffff 40048a70 S com.facebook.katana:nodex
: App肥也不見得會引發oom-killer 要看肥app在AMS的哪裡啊@@
: 再來
: 如果提到了oom/lmk/pmem/實體記憶體512MB 為什麼這裡是用VSS計算?
: 從oom/lmk的眼光 應該討論RSS
不好意思,上面那邊文章打錯了,把G-Protector看到的數值打成VSS,
我查了一下我的做法確實是RSS加總沒錯,
(把同屬一個APK使用到的每個process的RSS加總起來,應該是非常正確的檢驗方式)
請看我上面貼的PS LOG.
臉書124MB
一個不知名的臉書服務remote service(45MB),
臉書即時通49MB
CHROME
也是 85MB +70MB 兩個
u0_a146 10127 1940 711316 85920 ffffffff 40048a70 S com.android.chrome
u0_i9 10161 1940 583180 70300 ffffffff 40048a70 S com.android.chrome:sandboxed_process0
: 從App開發者的眼光討論App肥不肥 應該優先討論PSS更甚USS以及RSS
我剛上一篇的數據是RSS加總沒錯 :P
雖然說明打錯了,可是數據是該package使用的RSS的總和
: 算VSS total來討論會不會頂到512MB實體記憶體頂是不是怪怪的?
VSS都400-500的 @_@ 不會有50MB那麼小
: procrank也只算有意義的PSS/USS total給人看 不是嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.230.173.159
→ Colaman:我沒有質疑app太肥導致使用者經驗不良的問題,我回文想說11/10 15:39
→ Colaman:的是1. 通常不會這麼快該oom-killer現身 2. 應該不是VSS
→ Colaman:對於1.的小附註是oom-killer起來之前 要看ams跟lmk的設計
→ Colaman:以及app的撰寫方式 JB 4.1開始Google就更改了一些adj計算
→ Colaman:的是1. 通常不會這麼快該oom-killer現身 2. 應該不是VSS
→ Colaman:對於1.的小附註是oom-killer起來之前 要看ams跟lmk的設計
→ Colaman:以及app的撰寫方式 JB 4.1開始Google就更改了一些adj計算
→ gpc:不好意思,VSS是我打錯了,我提供的數據是RSS總和11/10 15:42
→ Colaman:方式 (打太快 不是"就更改" 是又更改)11/10 15:42
→ gpc:我說的真實案例是4.2的機子呢XD11/10 15:42
→ gpc:你在市面上可以買到他Q_Q
→ gpc:你在市面上可以買到他Q_Q
→ Colaman:所以說 有這種512MB這種說法 也有可能是又有新的計算方式11/10 15:43
→ gpc:重點是OEM阿啊 應該沒有OEM願意出BSP版的低階ANDROID11/10 15:44
→ gpc:(老闆會罵)
→ gpc:(老闆會罵)
→ Colaman:我舉個極端但不會發生的例子 假設Google改成fg的adj=011/10 15:45
→ Colaman:然後除此之外的人不管有沒有service之類的 通通都是7
→ Colaman:那就是其實我們只要看fg app的記憶體使用量
→ Colaman:然後除此之外的人不管有沒有service之類的 通通都是7
→ Colaman:那就是其實我們只要看fg app的記憶體使用量
→ gpc:這樣就會一直被殺 然後卡翻天11/10 15:46
→ Colaman:當然這例子不會發生 但我的意思是這些調整也都會影響11/10 15:46
→ gpc:APP用到一半就突然爆掉 @@11/10 15:47
→ Colaman:被定義的"所謂重要的"東西的記憶體使用量11/10 15:47
→ gpc:google AMS跟OOM的計算 我至少trace到4.3的code,不覺得有甚麼11/10 15:47
→ Colaman:(更正: 使用量"上限")11/10 15:48
→ gpc:不是感覺有甚麼大改變Q_Q 1G-RAM搭配OEM的東西後 還是很慘11/10 15:48
→ Colaman:結論是: 如果Google有宣稱所謂的可以不可以用512MB運行11/10 15:49
→ gpc:GOOGLE指的應該就是BSP版吧 他自己做的 OEM跟你裝的不保證11/10 15:49
→ Colaman:就算是他的定義裡面也包含了"重要app" 這也可以是被從code11/10 15:50
→ gpc:可是GOOGLE也不會出512版的BSP,OEM也沒人會出..有點是空談11/10 15:50
→ Colaman:裡面定義的11/10 15:50
→ gpc:重要的APP是臉書 LINE CHROME這樣512夠嗎XD11/10 15:52
→ Colaman:OEM願意啊...(抽屜立刻拿出拿出兩支不到1000 RMB的機子)11/10 15:52
→ gpc:糟糕 我這家不願意XD 可能公司有偶像包袱吧11/10 15:53
→ Colaman:我覺得我們不能只用我們的使用習慣來看 有的OEM進行著甚至11/10 15:53
→ gpc:我是從OEM來看的....11/10 15:54
→ Colaman:是256MB以及128MB的ultra low-end android案子 (不唬爛)11/10 15:55
→ gpc:我這邊的OEM就是不管RAM多少 機子多爛 一定要把老闆認為的亮點11/10 15:55
→ gpc:放到產品中 不管效能...
→ gpc:放到產品中 不管效能...
→ Colaman:原因就是我們生活的世界不是整個世界XD11/10 15:56
→ gpc:你提的那些OEM是主打比較小眾or便宜的市場吧11/10 15:56
→ gpc:ANDROID主要市占率 賣百萬台以上的 大都是我這邊OEM的想法~.~
→ gpc:看看H牌低階機 還是一堆H公司的軟體 S牌也是
→ gpc:ANDROID主要市占率 賣百萬台以上的 大都是我這邊OEM的想法~.~
→ gpc:看看H牌低階機 還是一堆H公司的軟體 S牌也是
→ Colaman:我自己把話題扯遠了 我的意思還是:我們知道512MB對於我們11/10 15:58
→ gpc:以前的M牌低階機也是 所以才有人要在那刷ROM 刷來刷去11/10 15:59
→ Colaman:的使用者經驗完全不夠 但這是被我們定義的使用者經驗11/10 15:59
→ Colaman:不是喊出"4.4 512MB就夠"的人所定義的 更不是
→ Colaman:不是喊出"4.4 512MB就夠"的人所定義的 更不是
→ gpc:好吧 特殊用途的人可以用512MB 那GOOGLE要加警語了11/10 16:00
→ Colaman:想要出256MB/128MB的人定義的 而這些都可以從code裡面定義11/10 16:00
→ gpc:感覺GOOGLE這口號 跟假油很像=.= (XXX是國外的健康食品)11/10 16:01
→ gpc:你說的這些我都知道~.~ 問題是主要的OEM 根本做不到
→ gpc:除非是小公司或是主打小眾市場 或者自己開公司做機子
→ gpc:主要的OEM才是決定ANDROID市場的存亡
→ gpc:不然H牌S牌為什要投注那麼多資金在ANDROID 一切都是$$$$$$$
→ gpc:你說的這些我都知道~.~ 問題是主要的OEM 根本做不到
→ gpc:除非是小公司或是主打小眾市場 或者自己開公司做機子
→ gpc:主要的OEM才是決定ANDROID市場的存亡
→ gpc:不然H牌S牌為什要投注那麼多資金在ANDROID 一切都是$$$$$$$
→ Colaman:喊出"4.4 512MB就夠"這種口號 就我自己的經驗我覺得更像11/10 16:04
→ gpc:而OEM也不曾為了GOOGLE說的低階機種而改變 他們還是做自己的11/10 16:05
→ Colaman:是給OEM建議 舉例來說 T-Mobile的G1 HTC的TMO版Magic11/10 16:05
→ gpc:很多東西 沒有市占率就是沒意義啊 市占率不是靠內容 廣告行銷11/10 16:06
→ gpc:廣告行銷也是影響市占率很大的原因
→ gpc:那些OEM已經回不去啦.... (我已經建議過了,無效QQ_)
→ gpc:廣告行銷也是影響市占率很大的原因
→ gpc:那些OEM已經回不去啦.... (我已經建議過了,無效QQ_)
→ Colaman:都在android成長(咦)的過程中 因為RAM達不到"喊出"的數值11/10 16:06
→ Colaman:而沒有繼續跟著前進(RAM是其中一個重要理由 但不是唯一)
→ Colaman:是什麼樣的「RAM達不到"喊出"的數值」狀況? 他們連開機
→ Colaman:而沒有繼續跟著前進(RAM是其中一個重要理由 但不是唯一)
→ Colaman:是什麼樣的「RAM達不到"喊出"的數值」狀況? 他們連開機
→ gpc:老機子OEM都不會有team維護的 他們就一直出新機賺錢阿..11/10 16:08
→ Colaman:到lockscreen或是home之前就會出現lmk砍home的窘況了11/10 16:08
→ gpc:我知道你想指出比方說某H公司說某機因為RAM太小不升級11/10 16:08
→ gpc:其實只是不想維護而已XD
→ gpc:維護要人力 要$$$$$
→ gpc:至於新出的低階機 一樣是因為老闆要求"公司精神"一定要在機子
→ gpc:所以也不可能出BSP版本的...
→ gpc:其實只是不想維護而已XD
→ gpc:維護要人力 要$$$$$
→ gpc:至於新出的低階機 一樣是因為老闆要求"公司精神"一定要在機子
→ gpc:所以也不可能出BSP版本的...
→ Colaman:這種囧況已經是連使用者經驗都不用提的啊 開不到主畫面11/10 16:10
→ Colaman:有啊 new htc one跟SGS4的GEP on Google Play
→ Colaman:有啊 new htc one跟SGS4的GEP on Google Play
→ gpc:結論就是 4.4 可以512MB 是指不含三方與OEM的使用情況11/10 16:12
→ Colaman:舉這兩個例子不是要反駁你的說法 我只是想說11/10 16:13
→ gpc:那個是google要求的阿XDXD11/10 16:13
→ gpc:而且台灣買不到 ~.~ 毫無行銷可言 想買有夠麻煩
→ gpc:這樣的機子也不會有市占率..
→ gpc:而且台灣買不到 ~.~ 毫無行銷可言 想買有夠麻煩
→ gpc:這樣的機子也不會有市占率..
推 Colaman:他們的狀況以及定位就很像當年的T-Mobile的G1/Magic11/10 16:15
→ Colaman:G1 "以及" Magic
→ Colaman:反正我覺得512MB這種數字是喊給BSP provider跟OEM聽啦 ~.~
→ Colaman:OEM自己就會去評估自己額外要加的東西會吃多少
→ Colaman:G1 "以及" Magic
→ Colaman:反正我覺得512MB這種數字是喊給BSP provider跟OEM聽啦 ~.~
→ Colaman:OEM自己就會去評估自己額外要加的東西會吃多少
→ gpc:恩恩 真的會不會有機子 不是只有底層好就有 OEM做不做是一回事11/10 16:19
→ gpc:(偏偏大間的OEM自己是不會做這種事情)
→ gpc:(偏偏大間的OEM自己是不會做這種事情)
→ Colaman:然後有眼光的OEM就會用512MB + 自己的功能使用量 +11/10 16:19
→ Colaman:評估過的銷售對象使用者經驗使用量
→ Colaman:評估過的銷售對象使用者經驗使用量
→ gpc:(OEM:幫GOOGLE做機子,賺沒幾毛,我掛我自己的牌子,放一些我APP11/10 16:20
→ gpc:價格給他多個五成,賺爽爽...要不是為了還GOOGLE人情...)
→ gpc:有眼光的OEM都會出那種賺很多錢的.ANDROID..
→ gpc:價格給他多個五成,賺爽爽...要不是為了還GOOGLE人情...)
→ gpc:有眼光的OEM都會出那種賺很多錢的.ANDROID..
→ Colaman:沒眼光的OEM就會出那種光自己軟體都跑到會low memory的11/10 16:22
→ gpc:因為大間的OEM實在有很多成本啊 人.專利.版權 都是無形的11/10 16:22
→ gpc:可是那些出自己軟體跑到沒記憶體的 還是賣的很好阿
→ gpc:因為USER不懂這些 他們看廣告 代言 推銷員 打手
→ gpc:看外觀 看品牌 看潮流..就是不看技術的東西
→ gpc:所以市場就被定位成 要包裝才能生存 不包裝就是被當山寨
→ gpc:大間的OEM還是只會跟著大眾消費者跑
→ gpc:很多USER(非常非常多)都不會上PTT也不會上ANDROID版
→ gpc:他們有問題也就直接去找店面 店家
→ gpc:可是那些出自己軟體跑到沒記憶體的 還是賣的很好阿
→ gpc:因為USER不懂這些 他們看廣告 代言 推銷員 打手
→ gpc:看外觀 看品牌 看潮流..就是不看技術的東西
→ gpc:所以市場就被定位成 要包裝才能生存 不包裝就是被當山寨
→ gpc:大間的OEM還是只會跟著大眾消費者跑
→ gpc:很多USER(非常非常多)都不會上PTT也不會上ANDROID版
→ gpc:他們有問題也就直接去找店面 店家
推 Fonger:躺驗的ˊ內監APAP11/10 22:39
→ qweqweqweqwe:記憶體最近越來越貴. 相信大家很快就會看到512的產品11/10 23:57
推 christian12:神之間的對話11/11 00:57
推 richjf:野火的復歸 春風吹又生 XD11/11 12:47
--
※ 看板: Android 文章推薦值: 0 目前人氣: 0 累積人氣: 950
回列表(←)
分享