電腦任務(wù)管理器中硬件100%使用率到底意味著什么?CPU或磁盤(pán)使用率100%的時(shí)候,真的是硬件滿載了嗎?

任務(wù)管理器中的CPU使用率只是核心處于"非空閑時(shí)間"的百分比。有些任務(wù)只能單線程運(yùn)行,所以很容易出現(xiàn)單核滿載的情況。比如4核心8線程的CPU單核滿載時(shí)CPU使用率就是100/8,也就是12.5%。

現(xiàn)代CPU是一個(gè)非常復(fù)雜的整體,每個(gè)核心都包含自己的一套指令解碼、數(shù)據(jù)緩存以及整數(shù)運(yùn)算單元、浮點(diǎn)運(yùn)算單元等功能單元,由于很多限制導(dǎo)致在很多時(shí)候只有一部分單元在工作。所以說(shuō)即便任務(wù)管理器顯示為100%使用率,也不是硬件完全滿載狀態(tài)(典型例子是使用Prime95烤機(jī))。

再來(lái)看硬盤(pán)的100%使用率是什么情況:

大家知道固態(tài)硬盤(pán)的性能千百倍于機(jī)械硬盤(pán),特別是隨機(jī)讀寫(xiě)能力非常強(qiáng)悍。下圖是東芝TR200固態(tài)硬盤(pán)AS SSD Benchmark測(cè)速:

但在固態(tài)硬盤(pán)在某些情況下依然會(huì)有接近100%的使用率,并且此時(shí)的讀寫(xiě)速度遠(yuǎn)不及大家的預(yù)期水平,這是怎么回事呢?

這種現(xiàn)象跟CPU使用率100%有些類(lèi)似,但又不完全相同。日常作為系統(tǒng)盤(pán)使用的情況下,讀取和寫(xiě)入是混雜在一起進(jìn)行的,并且隨機(jī)存取的比例大于順序存取,這與跑分測(cè)速時(shí)的純讀取或純寫(xiě)入有很大的不同。

固態(tài)硬盤(pán)使用多通道技術(shù)提升順序讀寫(xiě)帶寬,但主控固件算法對(duì)隨機(jī)讀寫(xiě)以及混合讀寫(xiě)的優(yōu)化效果,直接決定固態(tài)硬盤(pán)在真實(shí)使用環(huán)境中的表現(xiàn)。下圖是東芝TR200固態(tài)硬盤(pán)拆解,使用東芝TC58NC1010GSB主控搭配東芝BiCS閃存顆粒。

通常來(lái)說(shuō)4K隨機(jī)混合讀寫(xiě)、70%讀取/30%寫(xiě)入是較能體現(xiàn)固態(tài)硬盤(pán)實(shí)用性能的測(cè)速方法。大家可以看到,混合讀寫(xiě)的速度要比純讀或純寫(xiě)低很多,但更能代表實(shí)際使用環(huán)境。

除了讀寫(xiě)帶寬之外,響應(yīng)時(shí)間也是一個(gè)很重要的指標(biāo),它展現(xiàn)了硬盤(pán)從接受讀寫(xiě)指令到返回?cái)?shù)據(jù)之間的延遲,數(shù)字越小電腦的反應(yīng)速度越快。下圖是東芝RC100作為系統(tǒng)盤(pán)使用,復(fù)雜混合讀寫(xiě)條件下依然提供低至0.3毫秒的平均響應(yīng)時(shí)間。

無(wú)論是CPU還是固態(tài)硬盤(pán),使用率(或活動(dòng)時(shí)間)其實(shí)都代表了硬件的繁忙程度。100%使用率不一定是硬件完全滿載,但至少說(shuō)明當(dāng)前硬件存在效能瓶頸。很多時(shí)候軟件的優(yōu)化能夠大幅提高硬件使用效率,但當(dāng)代程序員遠(yuǎn)不如他們的前輩那樣樂(lè)于花時(shí)間優(yōu)化代碼……