cpu密集型io密集型

cpu密集型io密集型,第1张

CPU密集型:也叫计算密集型,指的是系统的硬盘、内存性能相对CPU要好很多,此时,系统运作CPU读写IO(硬盘/内存)时,IO可以在很短的时间内完成,而CPU还有许多运算要处理,因此,CPU负载很高。

CPU密集表示该任务需要大量的运算,而没有阻塞,CPU一直全速运行。CPU密集任务只有在真正的多核CPU上才可能得到加速(通过多线程),而在单核CPU上,无论你开几个模拟的多线程该任务都不可能得到加速,因为CPU总的运算能力就只有这么多。

CPU使拆胡用率较高(例如雹裤:计算圆周率、对视频进行高清解码、矩阵运算等情况)的情况下,通常,线程数只需要设置为CPU核心数的线程个数就可以了。 这一情况多出现在一些业务复杂的计算和逻辑处理过程中。比如说,现在的一些机器学习和深度学习的模型训练和推理任务,包含了大量的矩阵运算。

IO密集型:指的是系统的CPU性能相对硬盘、内存要好很多,此时,系统运作,大部分的状况是CPU在等IO (硬盘/内存) 的读写 *** 作,因此源御简,CPU负载并不高。

密集型的程序一般在达到性能极限时,CPU占用率仍然较低。这可能是因为任务本身需要大量I/O *** 作,而程序的逻辑做得不是很好,没有充分利用处理器能力。

CPU 使用率较低,程序中会存在大量的 I/O *** 作占用时间,导致线程空余时间很多,通常就需要开CPU核心数数倍的线程

GPU执行的是简单但计算量大的应用时才有优势,而CPU在计算复杂的数据时有优势。

因此如果某个程序在GPU上的运行速度不如CPU上快,只是消握应用或程序本身就决定了。

GPU的优势如下:

(1)计算密集型的程序。所谓计手桥胡算密集型(Compute-intensive)的程序,就是其大部分运行时间花在了寄存器运算上,寄存器的速度和处理器的速度相当,从寄存器读写数据几乎没有毕拦延时。可以做一下对比,读内存的延迟大概是几百个时钟周期;读硬盘的速度就不说了,即便是SSD,

也实在是太慢了。

(2)易于并行的程序。GPU其实是一种SIMD(Single

Instruction

Multiple

Data)架构,

他有成百上千个核,每一个核在同一时间最好能做同样的事情。

程序系统大部分在做计算、逻辑判断、循环导樱消携脊伏致cpu占用率很高的情况,桥含称之为计算密集型;频繁网络传输、读取硬盘及其他io设备称之为io密集型

很高兴为您解答有用请采纳


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12542026.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存