标签: cpu

在 Linux 上查看 CPU 速度的正确方法是什么?

我找到了两个命令来输出有关我的 CPU 的信息:cat /proc/cpuinfolscpu. /proc/cpuinfo显示我的 CPU 速度是 2.1 Ghz,而lspcu说它是 3167 Mhz。哪一个是正确的?

这是我cat /proc/cpuinfo关于处理器速度的确切输出:

model name  : Intel(R) Core(TM) i7-4600U CPU @ 2.10GHz
Run Code Online (Sandbox Code Playgroud)

这是来自lscpu

CPU MHz:               3225.234
Run Code Online (Sandbox Code Playgroud)

(出于某种原因,lscpu每次输出都不同,在 3100 和 3300 MHz 之间变化)

linux cpu

54
推荐指数
5
解决办法
20万
查看次数

VirtualBox:分配比物理 CPU 内核数更多的虚拟 CPU 内核是不是一个坏主意

由于我有一个支持超线程的CPU,我想知道分配比物理 CPU 内核数量更多的虚拟 CPU 内核是不是一个坏主意,如下警告所示:

虚拟框警告

成绩单:

分配给虚拟机的虚拟 CPU 数量多于主机系统上的物理 CPU 数量。这可能会降低虚拟机的性能。请考虑减少虚拟 CPU 的数量。

有人可以对这个话题进行推理吗?

编辑1:

有问题的 CPU 是 Intel Core i7-4700HQ, Ark Intel , CPU Benchmark

编辑2:

假设没有过时的硬件,例如 HDD(而不是 SSD)和/或低 RAM(此处vm.swappiness为16GB,此 VM最低为 4GB)等。

performance cpu virtual-machine virtualbox hyperthreading

49
推荐指数
2
解决办法
6万
查看次数

什么是软件和硬件中断,它们是如何处理的?

我不确定我是否理解硬件和软件中断的概念。

如果我理解正确,硬件中断的目的是引起 CPU 的一些注意,这是实现 CPU 多任务处理的一部分。

  1. 那么硬件中断是怎么产生的呢?是硬件驱动程序吗?
  2. 如果是,硬件驱动程序进程在哪里运行?如果它运行在CPU上,那么它就不必通过硬件中断来引起CPU的注意,对吗?那么它在其他地方运行吗?
  3. 硬件中断是直接中断CPU,还是先联系内核进程,内核进程再联系/中断CPU?

另一方面,我认为软件中断的目的是让当前在 CPU 上运行的进程请求一些资源。

  1. 有哪些资源?它们都是运行进程的形式吗?比如CPU驱动进程和内存驱动进程代表CPU和内存资源吗?I/O设备的驱动进程是否代表I/O资源?其他正在运行的进程是否也希望与资源通信?
  2. 如果是,软件中断是否通过内核进程间接联系进程(代表资源)?与硬件中断不同,软件中断从不直接中断 CPU,而是中断/联系内核进程,这对吗?

cpu interrupt architecture

45
推荐指数
1
解决办法
9万
查看次数

如何从命令行找出英特尔架构系列

我可以使用一些 Xeon 机器来检查性能。我想找出他们使用的架构,例如 Haswell、Sandybridge 和 Ivybridge。有没有命令可以找出这个?

linux cpu cpu-architecture

44
推荐指数
4
解决办法
4万
查看次数

42
推荐指数
3
解决办法
6万
查看次数

限制进程不超过 CPU 使用率的 10%

我运行的 Linux 系统有很多用户,但有时会发生滥用;用户可能会运行一个占用超过 80% 的 CPU/内存的进程。

那么有没有办法通过限制进程可以使用的 CPU 使用量(例如 10%)来防止这种情况发生?我知道cpulimit,但不幸的是,它对我指示它限制的进程(例如单个进程)应用了限制。所以我的问题是,如何将限制应用于所有正在运行的进程和将来将运行的进程,而无需提供它们的 id/path 例如?

command-line cpu centos limit

40
推荐指数
5
解决办法
7万
查看次数

“自愿上下文切换”究竟是什么?

我有一个二进制文件,我应该破解它的密码(作业)。还有一个给定的函数(一个函数是二进制文件的一部分)。该函数显示输入字符串与正确的密码逐字符进行比较,并在字符错误时立即返回 false(我猜这不是安全的方法,因为它正在泄漏时间,我们知道正确的密码长度为例子)。但是我们的老师添加了一个随机计时器来返回结果(正确/错误),这对我们来说有点困难......

无论如何,我已经通过逆向工程成功完成并获得了正确的密码。现在我在命令行中使用它:

/usr/bin/time -v ./program_name enter_password
Run Code Online (Sandbox Code Playgroud)

使用这个命令,我得到了很多信息,比如系统时间、交换、执行时间……但对我来说最有趣的是“自愿上下文切换”,因为我输入的密码字符越正确,“自愿上下文切换”就越少“我明白了!

我输入的错误字符越多,我得到的“自愿上下文切换”就越多。

仅通过输入该命令,输入字符并观察“自愿上下文切换”,我就花了将近两个小时来破解密码。只要 ONE 字符正确,“自愿上下文切换”就会减少 1。

我的问题,究竟什么是“自愿上下文切换”,为什么他们帮助我破解密码?

command-line cpu process

38
推荐指数
1
解决办法
9069
查看次数

37
推荐指数
2
解决办法
1万
查看次数

如何查找导致 CPU 使用率高的进程

有什么方法可以从终端找出导致 CPU 使用率高的进程吗?

按 cpu Usage 的降序对进程进行排序也很有用

linux cpu process terminal

36
推荐指数
3
解决办法
20万
查看次数

Number of processors in /proc/cpuinfo

While I was learning about cpu load, I came to know that it depends on the number of cores. If I have 2 cores then load 2 will give 100% cpu utilization.

So I tried to find out cores.( I already know that system has 2 cores, 4 threads so 2 virtual cores Check here about processor).So I ran cat /proc/cpuinfo Which gave me

processor   : 0
vendor_id   : GenuineIntel
cpu family  : 6
model       : 69
model name …
Run Code Online (Sandbox Code Playgroud)

linux cpu hardware

35
推荐指数
3
解决办法
13万
查看次数