看板 MobileComm 關於我們 聯絡資訊
※ 引述《plzza0cats (515ㄚㄚ)》之銘言: : ※ 引述 《ezJapan (Japan)》 之銘言: : :   : : https://i.imgur.com/0WPgN28.jpg
: :   : https://i.imgur.com/foQG0f9.jpg
: 手機剛買12天 : 12Ram沒想到沒什麼用 : 剩下2.6G可以用 : 是系統更新吃太多嗎?... : 很難想像三年後會多卡== : 我覺得安卓缺點就是記憶體分配很奇怪 : 不然其他都蠻優秀。 其實推文中已經有網友給出正解 zram用簡單但不精確來說就是把swap設置在ram disk上面 安卓很早就不再使用磁碟的swap了 swappiness是設置當記憶體剩下多少時才要開始用swap 對於系統上來看zram就是真正"已經"被吃掉的記憶體 舉一個簡化的例子來說一台10gb的安卓設備 系統本身吃掉2gb,剩下8gb ram又開了4gb zram 這時候等於已經用掉了6gb ram,剩下了40%可以用 假如設置的swappiness是90%。就是剩下的4gb ram用掉3gb後 就開啟swap,這時候你的zram吃掉的記憶體就變成swap來工作 這樣做的好處是zram都經過LZ4壓縮法,他實際效益比4gb大 只是會耗損掉一些效能 所以zram該開多大得看你的使用場景 如果你的記憶體不存在不夠用的問題 完全不使用zram其實效能還會更好 雖然有些特殊狀況測試會跟你說zram甚至比原本來得更快 例如記憶體大量搬移,zram經過壓縮搬來搬去當然更快 記憶體不足那開啟zram就增加程式的保留度跟可執行性 如果覺得寧願被退掉程式也不想要減損任何效能zram就一點都不要開 如果安卓手機廠商都遵循Google建議 8gb ram以上機種會開3-4gb zram,而swappiness會設置在60% 所以開機後剩下不多的ram其實不是真正被用了只是被zram佔去 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.24.108.33 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/MobileComm/M.1618210747.A.0F1.html
haveastar : 推! 04/12 15:03
plzza0cats : 大師 04/12 15:03
manbow77 : swappiness值90是指「剩下90%空間就開始用ZRAM」 04/12 15:11
manbow77 : 這麼高的值反而會很破壞效能 因為現在ZRAM都經壓縮 04/12 15:12
dodorododoro: Okay 也可能我記反了。這個值一般也不太去調 04/12 15:13
manbow77 : google預設60嚴格說來是因為過去手機RAM一直都短缺 04/12 15:13
manbow77 : 小於4G或2G的RAM以目前應用來說swap採ram-disk有利 04/12 15:17
manbow77 : 但現今動不動就8G RAM起跳 其實連SWAP都不需要了 04/12 15:18
manbow77 : ZRAM最有話題性大概是安卓4.0左右的時期 04/12 15:36
manbow77 : 當時手機RAM普遍2G以下 ROM還在emmc 04/12 15:38
manbow77 : 比起讓swap去讀寫還在幾十MB/s就偷笑的ROM 04/12 15:39
manbow77 : 直接耗CPU壓縮/解壓縮記憶體內部資料反應要快得多 04/12 15:41
Segal : 跑DB的伺服器會建議swappiness設為0。不過終端設備 04/12 15:47
Segal : 我傾向於不需要這麼極端。SWAP作為調控RAM的手段, 04/12 15:47
Segal : 在大多數場景還是適用的。就算你有8G RAM你還是不 04/12 15:47
Segal : 會希望背景app一旦記憶體吃緊就被OOM kill的 04/12 15:47
manbow77 : 有8G還會被砍背景的極端情況 zram幫助大概也不大了 04/12 15:51
manbow77 : 主要是ZRAM壓縮率不大 否則壓縮解壓縮的耗能和延遲 04/12 15:52
manbow77 : 還比幾百MB/s的UFS直接讀寫還慘時就本末倒置了 04/12 15:54
manbow77 : 手邊某機種某次更新後swappiness=90根本計畫性汰舊 04/12 15:58
Sinreigensou: 所以原來記憶體有zram機制 難怪我什麼app都沒開就 04/12 16:11
Sinreigensou: 吃一半 04/12 16:11
Sinreigensou: 所以我8g記憶體用這功能反而減少效能 04/12 16:11
Sinreigensou: 那有沒有什麼辦法關閉它 04/12 16:12
manbow77 : RAM維持吃一半以上在Linux很常見 不見得是ZRAM造成 04/12 16:21
manbow77 : device info之類APP可以看到zram狀態 04/12 16:22
abc0922001 : sony 開源的 device tree 是設定 25 04/12 16:34
manbow77 : swappiness值設定恰當的話對效能影響不大 例如設20 04/12 16:37
manbow77 : ram使用率80%前不會動用swap自然也不會用到zram 04/12 16:40
manbow77 : 計畫汰舊設到90的基本上效能之前續航就非常有感差 04/12 16:42
abc0922001 : https://tinyl.io/3uNv Pixel5/4a5G是100 04/12 16:46
square4 : 高wappiness代表積極用swap,占用cpu拖慢速度,ram大 04/12 17:45
square4 : 的手機越明顯,等於0也不代表關閉swap,反正都是為了 04/12 17:45
square4 : 避免殺後台做出的取捨 04/12 17:45
athraugh : manbow77,你說的被設定 90型號可以透露一下嗎? 04/12 19:34
manbow77 : U-3u 倒數第二次更新時swappiness190(系統取90) 04/13 07:30
manbow77 : 該版本swappiness值被鎖權限 要root才看得到 04/13 07:31
manbow77 : 後來最終更新有無變動不知道 那時我刷三方ROM了 04/13 07:34
Sinreigensou: 剛剛去下了device info,好像沒看到相關設定不過我 04/13 11:55
Sinreigensou: 手機沒root還是說要root才看得到 04/13 11:55
manbow77 : https://i.imgur.com/fPZHeDx.png devcheck 04/13 13:41
manbow77 : 如果沒顯示zram 表示手機沒有設zram或關閉swap 04/13 13:42
Sinreigensou: 有了原來是我原本載的那個APP太廢 04/13 13:59
Sinreigensou: https://i.imgur.com/mSqzcdU.jpg 04/13 14:00
Sinreigensou: zram要不要關掉 04/13 14:00
Dino14124 : 優文,推個 04/13 17:36
manbow77 : 稍微糾正一下觀念 ZRAM只是swap的一種形式 04/13 21:11
manbow77 : 而SWAP的存在主要是預防實體RAM吃緊造成的崩潰 04/13 21:12
manbow77 : Windows上的虛擬記憶體應該很熟悉 那也是swap概念 04/13 21:13
manbow77 : 所以保留後台之類ZRAM並無法有效改善 會被砍的照砍 04/13 21:14
manbow77 : 所以了解swap意義後應該會發現關鍵在swappiness值 04/13 21:22
manbow77 : 理想狀態下 RAM剩餘空間還很有餘裕就不該使用zram 04/13 21:24
manbow77 : 那根本脫褲子放屁 04/13 21:24
qqshiang : 吃的好多r https://i.imgur.com/pKUeVlv.jpg 04/14 12:26