CPU使用率和RAM之间有什么关系?


21

我已经多次看到CPU使用率为100%,而只有50%的RAM在使用中。这两者之间是什么关系?一个人的表现如何影响另一个人?

Answers:


42

CPU处理(执行关于事物的指令,例如添加)内存中的事物。RAM只是内存金字塔的一部分(请参见下文)。因此,当您处理大量数据时,该数据(或其中的大部分)可能会加载到RAM中,以便为CPU准备就绪,这是因为RAM的访问速度比存储设备要快,因此可以加快处理速度。因此,CPU使用率和RAM通常可以关联,但不必关联。

一个基本的示例可能是图像编辑程序。我加载了20MB的jpeg文件,程序读取了整个图像,操作系统将其保存在RAM中(所有工作内存对该程序而言都是相同的,操作系统会决定是否转到磁盘或RAM上的页面/交换文件)。因此,图像在RAM中等待处理,但是我先喝咖啡,然后告诉程序应用一些愚蠢的过滤器,因此CPU并没有执行任何操作:高RAM,低CPU。

我回来,应用过滤器在图像上添加一些气泡,CPU达到100%,并且使用了更多的内存,因为它将预处理的图像保留在内存中,因此我可以撤消刚才所做的更改。高RAM,高CPU。

程序添加完气泡后,CPU下降,但内存可能没有下降。

当然,这不是那么简单:-)

记忆金字塔的图片


什么是虚拟RAM?
Ooker

@Ooker:我认为他是指虚拟内存?
kailash19

24

这与大脑与书本的关系相同。大脑越快=阅读越快,书越大=它可以包含的页面越多。


2
哦,比喻不错!
MikeyB

书架是永久存储。嗯嗯很好。
Charles Watson

很好的解释:)
Jai

10

RAM用于保存数据。CPU时间用于处理数据。

CPU和内存使用之间没有关系。进程可以占用系统的所有CPU,但仅使用最少的内存。此外,进程可以分配系统上所有可用的内存,但仅使用最少的CPU时间。因此两者之间没有关系。


5

两者之间没有一致的关系。CPU使用率取决于应用程序需要完成多少处理或工作。RAM是应用程序在运行时需要容纳多少空间/内存。

更多的RAM =您可以同时运行更多的应用程序

更多的CPU =您可以运行更复杂的计算/运算

希望能有所帮助。


2

它们没有关系。您有些任务只使用其中一种资源,而有些则同时使用两种资源。


1

没有关系。从进行一些繁重的数字运算的角度考虑它。RAM是可以存储多少个数字以便更快地检索,而CPU是可以对这些数字执行数学运算的速度。

关于一个对另一个的影响,让我们假设您的CPU速度慢,但RAM很大。这意味着您可以在内存中存储相当数量的数字-在典型的32位计算机上大约有十亿个数字。但是对这些数字进行处理/计算/等会比较慢。

另一方面,如果您有一个快速的CPU但有少量的RAM,则数字处理会很快,但是机器有时会需要将它们从磁盘上拖动(并再次放回它们以留出更多空间) ),这比从RAM中获取数据要慢许多倍。

因此,实际上,每个因素都会相互影响,并且要获得最佳性能,您需要两者都做好。然而,这完全取决于什么每个应用程序实际上是在做,还有其他因素(如磁盘速度,处理器高速缓存,等等),我们不必深究,现在太多的细节,但你应该知道的意志使事情复杂化。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.