![]() |
PCDVD數位科技討論區
(https://www.pcdvd.com.tw/index.php)
- 數位行動產品討論區
(https://www.pcdvd.com.tw/forumdisplay.php?f=75)
- - LG G4 Beat...是出來搞笑的嗎?
(https://www.pcdvd.com.tw/showthread.php?t=1087419)
|
---|
引用:
不知道野口網友有沒有空幫忙解答一下一些問題.......我個人滿好奇的..... 我對 Android/Linux 不懂.......只是以一般性角度出發而有此疑問........ 1. 首先第一個問題是: 為什麼手機平台可以靠您說的優化來解決.....PC/Windows 為什麼不行? PC/Linux 可以嗎?.... 您說的優化是針對記憶體不夠的問題嗎?...... 像 Windows 記憶體不夠就是不夠.......勉強 swap 只會很慢或崩潰...... 手機上記憶體不夠如果不 swap......那是怎麼怎麼空出空間來的?..... 2. 優化在軟體真的已經用掉很多記憶體的狀況下也有用嗎?..... 還是優化是一種可以控制軟體如何取用記憶體的方法?..... 想知道 How it works? Why it works?...... 2. 不同架構的系統如 Windows Phone/Android/iOS.....開發出來的軟體是否天生就有性能差距或記憶體需求差距? 3. 當某系統平台的軟體粗製濫造居多時......優化是否仍能發揮 100% 應有的效果? 4. 優化會否導致一些小問題.......例如不是每個軟體都能在特殊的 config 下正常 works......這是否也是需要考慮的因素? 5. 優化的極限在哪裡? 例如如果優化可以讓不論任何 kernal 或 APP 程式都隨時配合調整空出記憶體跟優先權......那應該可以說優化的極限就是硬體的極限...... 但若是優化的影響力只能影響系統......管不了濫用資源的 APP.......那堆硬體理論上應該也是個雖不完美但能解決大多數狀況的問題...... |
引用:
1. 當然可以啊,誰說不行? windows從windows8開始,OS自己本身的記憶體需求是有在降低 WIN10又比8.1更低,這當然就是一種進步 我自己的LINUX也都是自己編譯的 性能提昇是其次,例如這個bfs https://en.wikipedia.org/wiki/Brain_Fuck_Scheduler 還有這個bfq http://algo.ing.unimo.it/people/paolo/disk_sched/ 跟這個uksm http://kerneldedup.org/projects/uksm/ 都可以打造出跟原本很不一樣,卻又更好的使用者體驗 這些在android上有很多人用 但大部分的手機大廠卻幾乎沒有 其他有些library也有換掉 例如jpeg-turbo http://libjpeg-turbo.virtualgl.org/ 不用原本的改用這個jpeg-turbo的用意是說 讓系統可以在宣染jpeg的時候使用cpu的多媒體指令集做渲染 例如sse或sse2等,加速效果非常明顯 linux上我這樣用已經將近十年了 windows則是到近幾年才加入simd的支援 我自己編譯的Firefox也有使用,所以我的firefox 在渲染jpeg圖片的時候會明顯比官方版本來的快 這裡我指的都是憑感覺就可以觀察的出差別的快慢 2. 當然可以 已我自己編譯的firefox來說 我改用jemalloc做記憶體管理 這東西簡單的說就是OS的記憶體自有他自己的管理方式 而這個jemalloc記憶體管理則是應用程式自己 該怎麼去跟OS要記憶體來用的一種方式 怎麼要?該要多少?然後要到了要怎麼用? 就是這個jemalloc負責 所以我編譯的firefox可以在性能比官方版更高的情況下 卻比官方版佔用更少的記憶體使用量 而且改用jemalloc完全不會有任何副作用 只要對象適合,在mysql跟nginx上也可以在編譯時改用jemalloc做記憶體管理 3. 這個問題有點模糊,如果你是指某一android設備的話 確實可以改進不少東西 就好像我之前說優化linux kernel 結果卻有人說優化這個只是底層跑的好跑得快而已,因為根本感受不到 這說法基本是錯誤的,因為kernel負責所有的進程調度,還有記憶體管理 吃不吃電也是看他,所以你kernel優化的好 在使用者體驗的部份是非常明顯的 4. 當然,優化不是把你能加的編譯參數加上去就好了 會影響穩定性,所以我才說做這個很花時間 像我以前就曾經為了提高FIREFOX的浮點運算性能 卻導致HTML5跟JAVASCRIPT 在某些情況下出現正確性問題 5. android目前的問題不在於硬體夠不夠推 我這樣說好了,你的手機是拿來幹嘛? 上網?傳訊息?還是講電話? 需要這麼高速的cpu跟記憶體才能做這些事嗎? 還是說cpu只有雙核,記憶體只有1GB的手機 不能做上述這些事情? 會如此需要這麼高速的cpu,大部分強調的都是遊戲性能 但是現實就是很少真的有遊戲有這麼高的硬體需求 而且為了控制發熱量,沒有一個SoC可以長時間不降頻運作 諷刺的是,跑BENCHMARK的時卻可以容忍短時間CPU全速運作.. 所以由此可知,大部分人追求的所謂旗艦效能根本不存在 反而因為系統缺乏優化 吃記憶體像開水龍頭一樣 遇到如此情況你有4G記憶體一樣沒輒 堆硬體你只能把這種跌深觸底的情況往後延一下 並不是一個聰明的辦法 |
引用:
那個…印象中從 Firefox 2 還 3 就已經將 jemalloc 納入官版了,很久很久以前看的 Patch notes,不確定有沒有記錯。 :rolleyes: |
行銷策略決定硬體規格
你不爽他的規格是因為那個硬體不準備賣給你 |
引用:
那你肯定記錯了 Firefox最早的jemalloc支援 是從Firefox 6開始才由第三方開者編譯成功 而且還是通過移植 |
那............像 Android 系統生態這樣每一支手機每一版本 OS 都要重新優化的狀況下是否是一條不歸路?.......... :jolin: :laugh:
像 Windows 手機如果非微軟出的也是需要這麼累嗎?........ iOS 又如何呢?....... 近來很多人也抱怨 iOS 不穩.......... 理論上蘋果比較不會有缺乏優化的問題..........那又為何風評反而沒當初好?.......... 不好意思...........最後再請教一下上面的問題........... 有的更深層的問題我也是模模糊糊的...........問不出來了........... |
引用:
引用:
-- 200 Posts 里程碑! :yeah: |
引用:
這條wiki是錯的 source code裡有不代表有用 就算編譯時下config,跟你保證100%編譯失敗 當時Mozilla根本沒有人在測試jemalloc 這是當年由其他第三方開發者移植的 當年pcx的google code的wiki上還有發佈他移植成功的patch 為什麼我知道?因為我經歷過那一段 |
引用:
-- *nix 上好像有很多人在弄 jemalloc + Fx,不過沒有一個 bug 被 fix 就是。 :stupefy: |
引用:
現在android手機的SOC已經慢慢進步沒有那麼快了 靠記憶體、相機、eMMC、wifi這些東西在推 ram的校調影響很大先不談 相機現在有很多手機屌打iphone eMMC也是 這兩項跟使用者體驗很有關系 如果系統校調功力不足,我就靠周邊來打死你們 |
所有的時間均為GMT +8。 現在的時間是09:09 PM. |
vBulletin Version 3.0.1
powered_by_vbulletin 2025。