詞彙表/記憶體

使用的交換檔

簡短回答

「使用的交換檔」是macOS在啟動磁碟上用來把記憶體移出再移回的空間大小。當實體記憶體不足以容納所有正在執行的項目時,就會用到它。

記憶體滿了,即使經過壓縮仍不夠時,macOS會把一部分記憶體寫入啟動磁碟,需要時再讀回來。這部分磁碟空間就是交換檔空間。

即使是很快的SSD,從磁碟讀取也比從記憶體讀取慢得多,所以大量交換檔會讓Mac感覺很慢。

有一些交換檔是正常的嗎?

是的。少量交換檔不是問題,尤其是Mac已經開機很久之後。macOS可能會把很少用到的舊資料留在交換檔空間裡。重點是Mac現在是否正在頻繁交換檔,這會呈現為記憶體壓力變黃或變紅。

如何減少交換檔

結束你沒在用的App,並關閉瀏覽器標籤頁。App結束後,交換檔不一定會馬上減少。重新啟動Mac就會將其清空。

如果每次使用平常那些App時,交換檔都迅速攀升,記憶體壓力也經常變紅,表示以這樣的工作量,這台Mac需要更多記憶體。不要手動刪除交換檔案;它們由macOS管理。

如何查看Mac的交換檔用量

「使用的交換檔」位於活動監視器「記憶體」標籤頁的底部。你也可以在「終端機」中查看。以下指令只會讀取資訊。

  1. 執行sysctl vm.swapusage。輸出結果會顯示交換檔空間的總量、已使用量和可用量。結尾的encrypted表示交換檔已加密。
  2. 執行ls -lh /System/Volumes/VM查看交換檔本身,它們名為swapfile0、swapfile1,依此類推。看看就好,不要刪除或移動它們。
  3. 觀察工作時已使用量是不斷上升,還是維持不變。

如何判斷Mac此刻是否正在交換檔

「使用的交換檔」是總量。Mac停止交換檔後很久,它可能仍然很高。活動監視器對它的說明是:為了替最近使用的資料騰出空間,而暫時移到磁碟上的壓縮資料,所以之後一直沒用到的資料,可能就一直待在那裡。若要知道此刻是否正在交換檔,請改看速率。

  1. 在「終端機」中執行vm_stat 5。它每5秒會輸出一行。按下Control-C即可停止。
  2. 略過第一行,它顯示的是開機以來的總數。
  3. 查看後續各行的swapins和swapouts欄。它們顯示每5秒內有多少分頁在RAM和磁碟之間移動。
  4. 大部分時間都是零,表示磁碟上的交換檔資料是舊資料,不會拖慢你。工作時大多數行都有數字,表示Mac正在頻繁交換檔,這時你通常也會看到黃色或紅色的記憶體壓力。

交換檔過高的常見原因

當App需要的記憶體,超過Mac藉由壓縮RAM中資料所能提供的量時,交換檔就會增加。這不需要你同時在使用每一個App,背景中的App依然占著記憶體。常見原因有:

  • 同時執行的吃記憶體App太多,超出Mac的RAM容量。
  • 虛擬機器,它們在執行時會占用大量記憶體。
  • 有記憶體洩漏、在幾小時或幾天內不斷變大的App。
  • 開著大量瀏覽器標籤頁,每一個都在背景占著記憶體。
  • 開機時間很長,先前移到磁碟上的舊資料還留在那裡。

正常與值得擔心的交換檔

正常:Mac開了幾天後有一些交換檔,而記憶體壓力是綠色,vm_stat也幾乎沒有顯示交換檔活動。即使RAM看起來還有空間,交換檔空間仍可能持續被使用,因為在有東西需要之前,macOS不會把舊資料讀回記憶體。

值得擔心:每次使用你平常那些App,「使用的交換檔」都在攀升,vm_stat的大多數行都顯示交換檔活動,記憶體壓力是黃色或紅色。以這樣的工作負載來說,Mac需要更多RAM,或是少同時執行一些App。Vitals會為每個App保留最多一年的記憶體歷史記錄,可以看出交換檔上升之前是哪個App在變大。

大家常問的問題

Mac上的「使用的交換檔」是什麼?

它是記憶體滿了時,macOS在啟動磁碟上當作額外記憶體使用的空間。

交換檔很高對Mac不好嗎?

少量是正常的。如果交換檔很大或持續增加,同時記憶體壓力為黃色或紅色,表示Mac的記憶體不夠,運作會變慢。

如何清除Mac上的交換檔?

結束吃記憶體的App,或重新啟動Mac。不要手動刪除交換檔案。

交換檔會讓Mac的SSD損耗嗎?

交換檔會寫入SSD,而每顆SSD在使用壽命中能承受的寫入量是有限的。偶爾交換檔不必擔心。持續大量交換檔的寫入量更多,所以不論是為了速度還是損耗,都值得減少。

Mac上的交換檔儲存在哪裡?

在/System/Volumes/VM中,檔名為swapfile0、swapfile1,依此類推。macOS會視需要建立和移除它們,你不該去動它們。

可以在Mac上關閉交換檔嗎?

沒有這個設定,你也不該嘗試。沒有交換檔,App就不是變慢,而是記憶體耗盡。

相關詞條

逐步教學:哪個App在使用我的CPU或記憶體。

想找比活動監視器更好的工具?請參閱Mac上最好用的活動監視器替代方案,或瀏覽詞彙表中的所有詞條。