我找到了两个命令来输出有关我的 CPU 的信息:cat /proc/cpuinfo和lscpu. /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 之间变化)
由于我有一个支持超线程的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)等。
我不确定我是否理解硬件和软件中断的概念。
如果我理解正确,硬件中断的目的是引起 CPU 的一些注意,这是实现 CPU 多任务处理的一部分。
另一方面,我认为软件中断的目的是让当前在 CPU 上运行的进程请求一些资源。
我可以使用一些 Xeon 机器来检查性能。我想找出他们使用的架构,例如 Haswell、Sandybridge 和 Ivybridge。有没有命令可以找出这个?
我运行的 Linux 系统有很多用户,但有时会发生滥用;用户可能会运行一个占用超过 80% 的 CPU/内存的进程。
那么有没有办法通过限制进程可以使用的 CPU 使用量(例如 10%)来防止这种情况发生?我知道cpulimit,但不幸的是,它对我指示它限制的进程(例如单个进程)应用了限制。所以我的问题是,如何将限制应用于所有正在运行的进程和将来将运行的进程,而无需提供它们的 id/path 例如?
我有一个二进制文件,我应该破解它的密码(作业)。还有一个给定的函数(一个函数是二进制文件的一部分)。该函数显示输入字符串与正确的密码逐字符进行比较,并在字符错误时立即返回 false(我猜这不是安全的方法,因为它正在泄漏时间,我们知道正确的密码长度为例子)。但是我们的老师添加了一个随机计时器来返回结果(正确/错误),这对我们来说有点困难......
无论如何,我已经通过逆向工程成功完成并获得了正确的密码。现在我在命令行中使用它:
/usr/bin/time -v ./program_name enter_password
Run Code Online (Sandbox Code Playgroud)
使用这个命令,我得到了很多信息,比如系统时间、交换、执行时间……但对我来说最有趣的是“自愿上下文切换”,因为我输入的密码字符越正确,“自愿上下文切换”就越少“我明白了!
我输入的错误字符越多,我得到的“自愿上下文切换”就越多。
仅通过输入该命令,输入字符并观察“自愿上下文切换”,我就花了将近两个小时来破解密码。只要 ONE 字符正确,“自愿上下文切换”就会减少 1。
我的问题,究竟什么是“自愿上下文切换”,为什么他们帮助我破解密码?
有什么方法可以从终端找出导致 CPU 使用率高的进程吗?
按 cpu Usage 的降序对进程进行排序也很有用
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) cpu ×10
linux ×6
process ×3
command-line ×2
architecture ×1
centos ×1
hardware ×1
interrupt ×1
limit ×1
performance ×1
terminal ×1
virtualbox ×1