Spring Boot实践记录Spring Cloud实践记录

CPU-bound(计算密集型) 和IO bound(IO密集型

2017-02-08  本文已影响296人  Chinesszz

CPU-bound(计算密集型) 和IO bound(IO密集型)

I/O bound指的是系统CPU效能相对硬盘和内存好很多,此时大部分CPU在等io的读写,此时CPU Loading不高。

CPU bound指的是系统的硬盘和内存的性能,相对于CPU的性能要好很多,此时系统运作CPU Loading 100% ,CPU要读写,I/O在很短时间完成,而CPU还有很多运算要处理,CPU Loading很高。

CPU bound的程序一般而言CPU占用率相当高。这可能是因为任务本身不太需要访问I/O设备,也可能是因为程序是多线程实现因此屏蔽掉了等待I/O的时间。
而I/O bound的程序一般在达到性能极限时,CPU占用率仍然较低。这可能是因为任务本身需要大量I/O操作,而pipeline(管道通信)做得不是很好,没有充分利用处理器能力
;还可能是因为数据局部性不是很好,导致较多page error,结果产生了大量disk I/O的开销。

==如何分辨到底是CPU还是IO bound?==

进程vs线程

上一篇 下一篇

猜你喜欢

热点阅读