Snaplytics JS Tests

RAM 頻寬測試

測量你的裝置在記憶體中傳輸資料的速度。測試會讓數百 MB 的資料流經四個測試階段,並將循序頻寬轉換為 GB/s 分數,方便你在不同裝置與瀏覽器之間比較。

就緒
緩衝區大小

預設為 256 MB——足以溢出 CPU 快取、進入真正的記憶體。1 GB 在手機或記憶體較小的裝置上可能會失敗。

測試前請先關閉高負載分頁,並在相同瀏覽器下比較不同機器——瀏覽器引擎本身也是測量的一部分。

緩衝區越大,越接近真實 RAM

64 MB 可能留在 CPU 快取中,讓結果偏高。從 256 MB 開始,資料才真正來自實際記憶體。

隨機測試速度較慢

在無法預測的位址之間跳躍會讓快取與預取機制失效,因此隨機存取的結果會遠低於循序測試——這是延遲造成的,並非故障。

比較時要對等

分數會隨瀏覽器與背景負載而變動,並非只取決於硬體。相同瀏覽器、相同緩衝區大小、安靜的機器——這樣的比較才有意義。

記憶體速度是個不易察覺的瓶頸:處理器很快、但記憶體速度慢或只有單通道的裝置,在切換多個高負載分頁時會卡頓,而 CPU 使用率卻看不出原因。頻寬數值能讓這個問題現形——你可以拿舊筆電和它的替代機型比較,或是比較加裝第二根記憶體前後的同一台機器。這個測試不會安裝或上傳任何東西:緩衝區存在於瀏覽器分頁中,關閉分頁後立即釋放。

按下開始後,Web Worker 會在主執行緒之外配置兩個大型類型化陣列——讓分頁保持流暢——並先進行暖身,避免編譯與首次觸碰的成本影響結果。接著會執行四個測試階段,每個階段重複五次並取平均值。循序寫入與循序讀取是經典的頻寬組合,兩者的平均值就是你的分數。隨機存取會在偽隨機位址之間跳躍,讓快取與預取機制失效,因此測得的是延遲,數值會遠低於循序測試的結果。記憶體複製則使用引擎最佳化的區塊搬移方式——通常是四項中最快的。

如何解讀你的分數

分數評等通常代表的意義
12+ GB/s菁英配備高速多通道記憶體的新款桌上型電腦或 Apple 晶片 Mac
9 – 12 GB/s卓越現代高效能筆電或 DDR5 桌上型電腦
6.5 – 9 GB/s優異狀況良好的近期硬體——雙通道 DDR4 桌機或不錯的筆電
4 – 6.5 GB/s良好主流筆電與較舊的桌機——應付日常工作綽綽有餘
2 – 4 GB/s普通入門款、小型或較舊的硬體,通常以單通道運作
低於 2 GB/s不佳非常老舊的硬體——或是有異常:請關閉高負載分頁、接上電源後重測

選擇緩衝區大小

緩衝區測試內容取捨
64 MB小到能部分留在 CPU 快取中,因此數值會偏高速度最快的測試——請當作快取測試,而非真正的 RAM 測試
256 MB會溢出所有消費級快取,進入真正的記憶體預設值——兼顧平衡,也是比較不同裝置時建議使用的大小
512 MB深入記憶體範圍,遠超過任何 L3 快取測試時間略長,但平均值更穩定
1 GB同時考驗記憶體配置與頻寬在手機或記憶體較小的裝置上可能直接失敗

瀏覽器測試能測到什麼,又測不到什麼

這項測試測量的是 JavaScript 實際能達到的頻寬——這關係到網頁應用程式的實際流暢度,而非硬體標示的規格。DDR5-6000 記憶體套件在這裡不會跑出標稱的數十 GB/s:只有單一執行緒、單一瀏覽器引擎,還有記憶體回收在旁邊干擾,因此分數會遠低於 AIDA64 這類原生工具,最適合拿來和其他瀏覽器測試的分數比較。這個沙箱環境看不到記憶體時序、通道數或 ECC 狀態(可以改將套件數值貼到 RAM 延遲 (RAM Latency) 計算機 中),故障的記憶體條則需要像 MemTest86 這樣的開機層級工具,而不是網頁。記憶體也只是眾多嫌疑對象之一——用 CPU 壓力測試 測試處理器、用 GPU 壓力測試 測試顯示卡,就能看出究竟是誰拖了後腿。

相關工具