usf3.0?驍龍865?

快閃記憶體?處理器?內存容量?


看了一圈其他答案,沒一個講明白的,正值疫情嚴重,在家閑著沒事幹就來回答一下。

首先我們來看看手機系統的運行在硬體層面是怎麼個操作流程。我們手機的基礎硬體我就不再重複了,相信都懂。有留意過的朋友都知道,手機開機時屏幕顯示內容基本上可以分成兩段,第一段通常顯示手機廠商的Logo,是一個靜態的過程;第二段通常會出現一些個性化的動畫,比如NOKIA經典的握手動畫。從這裡,操作系統的啟動過程也可以被劃分為類似的兩個階段。

手機操作系統儲存在快閃記憶體當中,手機開機時,CPU從起始地址處載入BootLoader到內存RAM中;隨後通過I/O與手機上各種晶元通信,初始化手機各個硬體資源;再然後從ROM中載入根文件系統,跳轉內存地址到操作系統引導入口;此為第一階段。第二階段中,操作系統引導程序逐個載入運行必須的文件,啟動內核,並啟動系統服務程序,然後載入開機自啟動的用戶程序,從而完成整個系統啟動。

在系統啟動的過程中,反映到硬體層面的操作,首先就是CPU上電複位,隨後需要從快閃記憶體中讀取一系列的文件到內存中去,那麼快閃記憶體性能(速度主要取決於協議:UFS3.0、UFS2.1 、EMMc5.0等)、內存帶寬(主要取決於頻率:LPDDR4、DDR4X等)以及CPU性能(主要是Load、Storage性能)在這個過程中起主要作用。

系統完成載入後,系統運行常用以及關鍵性文件已經被載入到內存中了,由於內存帶寬通常足夠高,此時系統響應速度主要取決於CPU性能以及調度策略(忽略後台應用程序影響),當然文件系統性能也會有影響,但是在現在CPU普遍都支持亂序執行的時代,只要是個手機應該來說系統流程運行是不成問題的。

前面鋪墊了一些,回到題主主要關心的問題上來,軟體的啟動過程和軟體運行過程。

軟體的啟動過程在操作系統上的響應機制是這樣的:操作系統檢測到你點擊了某一個圖標,然後從快閃記憶體中找到該程序的入口地址,並把該程序文件載入進內存,然後一邊調整DVFS的調度策略喚醒大核心工作提高處理能力,一邊從內存映射程序塊、數據塊到各Cache中;一邊啟動程序,一邊從快閃記憶體中繼續載入依賴項進內存,一邊還要驅動GPU進行繪圖;最終呈現在屏幕上的結果就是系統進入到軟體啟動動畫中,呈現在監視窗中的結果就是CPU頻率/功耗突然拔高。

在這個軟體啟動的過程中,與啟動速度直接相關的主要是CPU的突發性能以及快閃記憶體性能或者說是文件系統性能,相對次要的是內存性能。

  1. 這裡為什麼特別提及文件系統這個概念,是因為雖然從物理上文件都是直接儲存在快閃記憶體上的,但是操作系統並不是直接和快閃記憶體中的文件打交道,而是需要通過一個叫做文件系統的東西來讀寫。文件系統與快閃記憶體性能共同決定了快閃記憶體的訪問性能(主要是隨機性能)。通常來說,同時期的Android系統中文件系統性能並不會造成很大的差異,但還是有必要知道這個概念。
  2. CPU性能在這裡特彆強調突發性能,這是由於現代CPU通常配備了高性能核心和低功耗核心搭配的big.LITTLE架構,CPU在低負載下會切換到低功耗小核心上運行,在高負載時再切回大核心。所謂突發性能,一方面與CPU從低頻率低功耗狀態,動態調整到高頻率高性能狀態的時間直接相關。優秀的CPU調度策略通常能夠將這個時間控制在100ms以內,如Snapdragon 845、麒麟980在這方面都超過了Apple家同時期產品。Android陣營在DynamIQ技術的加持下,動態調度策略都保持在了優秀水準。另一方面,突發性能還與核心調度策略直接相關。這裡同樣還是DynamIQ技術加持下,Android陣營的SoC結構複雜,設計方案更是五花八門。在一般應用程序主要與單核性能相關的背景下,高通和海思1+3+4方案著重強化了單核性能,配合DynamIQ技術做到了靈活、高效,性能與能效兼得;反觀聯發科早期三叢簇結構就好似膠水核,調度策略不靈活。
  3. 內存性能的重要性就不說了,但在軟體啟動這種突發操作過程中,重要性沒有前兩者來的高,但並不是說不重要。上述觀點均是建立在內存容量充足的前提下,內存帶寬的影響相對較小,但如果內存容量不足,那就是另一番場景了,就不多說了。

軟體的運行過程則相對簡單一些,軟體的運行環境已經整個被載入進了內存,除了像遊戲這種隨時需要與快閃記憶體交換數據的軟體,以及像淘寶京東這種需要大量緩存的軟體,通常軟體中的操作在良好的分支預測性能以及支持亂序執行的CPU上都可以做到快速響應(前提是內存充足,GPU夠用)。

一般的軟體如知乎,在不包含動圖或視頻的前提下,整個軟體在響應完成一次用戶點按操作後通常就沒有什麼負載壓力了;而像微博之類的包含大量視頻、圖片需要渲染的程序,則需要頻繁地與快閃記憶體進行數據交換,這個過程需要CPU參與,並積極調用GPU資源做解碼、渲染圖像的操作。當然,這裡還有一個系統幀率的影響,不過幀率一般只與GPU負載有關,不會佔用CPU資源。

而遊戲是一個複雜的場景。遊戲通常包含大量的地圖資源,這些地圖資源只在場景載入初期從快閃記憶體中讀取到內存,並在載入下一個場景時從內存中釋放(對於吃雞這類大地圖場景,地圖通常是分塊讀取的,不在視野之內的地圖不會一同讀取),所以快閃記憶體性能在這裡主要影響的是遊戲場景的載入速度,與遊戲過程中的流暢度關係不大。遊戲通常是多線程優化,因為遊戲不僅涉及到大量的計算,還涉及到頻繁的訪存操作以及網路通信需要的ASE加密解密計算。這些任務通常被分攤到多個核心完成,這對於如A76這種4 ALU發射,2 FPU發射的八核CPU來說構不成威脅,512ALU的Adreno GPU也能夠將頻率推到60幀毫無壓力。真正影響幀率穩定性卻是SoC里的DVFS。

由於遊戲通常不可能將全部CPU資源以及GPU資源吃滿,SoC在調度時,當性能可以滿足需求後就會逐漸調整各個核心各個部件的功耗,以達到一個最佳的動態平衡從而獲取最佳的效能。但是,遊戲場景中的實時負載並不是一成不變的,這就造成了當你遇到團戰等場景時,會出現複雜陡然增加,而性能卻一時之間跟不上,而DVFS的調整總是出現在實際性能與需求性能出現偏差時才做出調整,也即DVFS的響應總會慢一拍,這就造成了掉幀,同時也不達不到最佳功耗。據Anadtech解析,華為十分雞賊地針對每一款遊戲訓練了專屬模型,為每一款遊戲針對性的調整DVFS策略,從而使得SoC總能在最佳能效下實現最佳性能,並將其命名為GPU Turbo。

所以,影響速度地因素太多太多,絕不是簡單的歸咎為,處理器或者快閃記憶體之類的,而是一個複雜的、綜合的影響因素。希望上述回答可以幫到你。


驍龍865就是高通的處理器……


最重要的是處理器及系統(系統是軟體,但是和處理器分不開),這個起到決定性作用。打開二十款應用最快的是華為mate30,麒麟990在這方面是很不錯的。好的處理器可以更快地進行數據處理,而系統就是如何利用好處理器。

其二是屏幕刷新率和屏幕採樣率。刷新率是一秒鐘手機能有多少幅畫面,90hz也就是90張畫面就是比60hz來的順暢。順暢的同時,屏幕採樣率也要跟上,就是跟不跟手的問題。高刷新率高採樣率可以比其它手機更快的接受信息。

其三是電池及優化。比如小米手機在10%以下電量就會以降低幀率的方式減少電量流失。在這個時候打開應用或者是進行操作就自然而然的會卡一些。

最後最後……一分錢一分貨,想買到好的手機,不可能光靠低價,性價比也不是單指低價。價格低大概率是閹割了一些你看不到的地方的。


19年以後的旗艦晶元,打開速度取決於網速、廣告和過度動畫。


處理器和運行內存。但是跟廠商的優化有很大關係。同樣的處理器和運存不同的廠商速度也可以差很多。


文件系統!不信翻3年前手機打開應用的對比視頻。

ufs2.0輸給了emmc!


cpu決定總體運行速度,ram決定當前時間打開的應用所需占的存儲容量,rom和容量沒有關係,跟你說的ufs3.0有關,這是快閃記憶體存儲方案,決定調用數據的時間。

所以你說的沒錯,決定一個手機的運行速度就是cpu+rom+ram


其實手機大多數情況的運行速度取決於快閃記憶體和動畫以及系統機制和屏幕刷新率,真正考驗CPU峰值性能的情況很少很少,除了白名單的跑分軟體,溫控也不允許你火力全開。手機也沒什麼需要性能的場景,低溫燙傷和電池爆炸不是開玩笑的。

手機還是安心做好通信功能,滿足充電條件的情況下可以在家裡和辦公室刷刷知乎b站之類的,至於其它的別想多了,在超導體和電池技術取得突破前,還是老老實實的做手機該做的。

賣手機的水軍和相關利益群體一直在製造性能恐慌:你的手機卡了慢了,趕快換我的新手機,跑分如何如何....當然經濟條件允許的話,可以年年換,尤其是今年比較火的90hz和120hz的屏幕,絕對比跑分多少多少提升使用體驗。


推薦閱讀:
相关文章