1秒=1000毫秒(ms)=1,000,000 微秒(μs)=1,000,000,000 納秒(ns)=1,000,000,000,000 皮秒(ps)
1個CPU時鍾周期=時鍾頻率 2GHz CPU=2000,000,000次每秒=20億次/秒=時鍾周期=(1/20億)秒=0.5納秒
cpu時間片的大小通常為10~100ms,在 Windows 操作系統上,一個時間片通常在十幾毫秒(譯者注:默認 15.625ms)
進程時間片:20ms
進程上下文切換:10ms
線程上下文切換 :3.8μs,這個分為同進程線程和非同進程線程他們時間不一樣
中斷上下文切換:很短
GC:對第0代執行一次垃圾回收時間不超過1ms
系統調用只是在進程內將用戶態切換到內核態
L1的存取速度:4個CPU時鍾周期大概2ns
L2的存取速度:11個CPU時鍾周期大概5ns
L3的存取速度:39個CPU時鍾周期大概20ns
RAM內存的存取速度:107個CPU時鍾周期大概53ns
固態硬盤訪問10-100us
機械硬盤訪問1-10ms
SpinWait.SpinOnce 執行一次大概7個時鍾周期(前20次),第一次比較耗時,第一次例外。
Interlocked函數:通常小於50CPU周期
Interlocked.MemoryBarrier函數:通常小於100CPU周期
用戶模式和內核模式切換 :1000個CPU周期以上
Intel CPU每條sfence大約3ns,大約10個指令周期,每條lfence大約4ns,大約12個指令周期