计算机系统中的各种延时

在计算机世界中,单个 CPU 周期的时间是极为短暂的。它以纳秒为单位,我们可以通过将 1 个 CPU 周期的 0.3 纳秒等比例放大至 1 秒,构建一个假想的时间系统,以便更好地理解从 L1 缓存访问到物理系统重启等各种计算机操作的延迟。
single

在计算机世界中,单个 CPU 周期的时间是极为短暂的。它以纳秒为单位。为了让这些微小的时间单位变得更加直观,我们可以通过将 1 个 CPU 周期的 0.3 纳秒等比例放大为现实生活中的 1 秒,构建一个假想的时间系统。通过这种方式,我们可以更好地理解从 L1 缓存访问到物理系统重启等各种计算机操作的延迟。

事件延时相对时间比例
1个CPU周期0.3ns1s
L1缓存访问0.9ns3s
L2缓存访问3ns10s
L3缓存访问10ns33s
主从访问(从CPU访问DRAM)100ns6分
固态硬盘I/O(闪存)10-100微秒9-90小时
旋转磁盘I/O1-10ms1-12月
互联网:从旧金山到纽约40ms4年
互联网:从旧金山到英国81ms8年
轻量级硬件虚拟化重启100ms11年
互联网:从旧金山到澳大利亚183ms19年
操作系统虚拟化系统重启<1s105年
基于TCP定时器到重传1-3s105-317年
SCSI命令超时30s3千年
硬件虚拟化系统重启40s4千年
物理系统重启5m32千年

正如你所见,1 个 CPU 周期的时间是很短暂的。0.5 米差不多是你的眼睛到这个页面的距离,光线走过这段距离需要的时间大约是 1.7ns。在这段时间里,现代的 CPU 已经执行了 5 个 CPU 周期,处理了若干个指令。