标签: multi-core

在 bash 中并行执行 curl 请求

从 bash 脚本执行 5 个curl请求的最佳方法是什么parallel?出于性能原因,我无法串行运行它们。

multi-core smp wget curl

23
推荐指数
3
解决办法
10万
查看次数

两个双核与一个四核

对于保持内核数量不变的基于 Intel 的系统,两个双核处理器和一个四核处理器之间会有多少差异?我们在两个双核处理器上运行 Oracle OLTP 数据库。由于可用的双核处理器较少,我们可能需要切换到四核,但由于许可问题,我们仅限于四核,因此必须切换到一个处理器。如果我们进行切换,我是否应该期望看到现实世界处理速度的变化?

intel central-processing-unit multi-core

16
推荐指数
3
解决办法
1万
查看次数

为什么我在 Linux 的 KVM 下运行的 Windows 7 VM 没有使用所有的虚拟处理器?

全部

自从我将其中一个 VM 从 Windows 2008 Server 迁移到 Windows 7(终极版)以来,我的服务器出现了问题:尽管我为 VM 分配了四个核心,它甚至似乎看到了它们,但它似乎认为它有两个核心!

它可以识别我的处理器但不使用它们!

谁能告诉我这里发生了什么?我认为这可能是 KVM 和 Windows 7 之间存在一些不兼容,但由于它看到了虚拟处理器,我开始认为不是......有任何线索吗?

这是进程管理器的屏幕截图,在同一个盒子上只显示了两个内核:

任务管理器

windows-7 multi-core kvm-virtualization

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

在bios中禁用CPU内核?

是否可以在 BIOS 中禁用 CPU(英特尔)内核,如果是,HP/DELL(其他?)1U/2U 服务器会允许这样做吗?

找到新的双核服务器硬件变得越来越困难,大多数新服务器都是四核服务器,因此 Oracle 许可的成本使服务器升级变得异常复杂。这让我想到了上面的问题。

oracle central-processing-unit bios multi-core

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

CPU 亲和性如何与 Linux 中的 cgroup 交互?

我正在尝试在一组独立的 CPU 上运行多线程基准测试。长话短说,我最初尝试使用isolcpustaskset,但遇到了问题。现在我在玩 cgroups/csets。

我认为“简单”cset shield用例应该可以很好地工作。我有 4 个内核,所以我想使用内核 1-3 进行基准测试(我还将这些内核配置为处于自适应滴答模式),然后内核 0 可用于其他所有内容。

按照这里的教程,它应该很简单:

$ sudo cset shield -c 1-3
cset: --> shielding modified with:
cset: "system" cpuset of CPUSPEC(0) with 105 tasks running
cset: "user" cpuset of CPUSPEC(1-3) with 0 tasks running
Run Code Online (Sandbox Code Playgroud)

所以现在我们有一个隔离的“盾牌”(用户 cset),核心 0 用于其他一切(系统 cset)。

好的,目前看起来不错。现在让我们来看看htop。这些进程应该都已迁移到 CPU 0 上:

csets

嗯?一些进程显示为在屏蔽内核上运行。为了排除 htop 存在错误的情况,我还尝试使用taskset检查显示为在屏蔽中的进程的亲和掩码。

也许那些任务是不可移动的?让我们选择一个显示为在 CPU3 上运行的任意进程(应该在屏蔽中)htop,看看它是否出现在系统 cgroup 中,根据cset

$ cset shield …
Run Code Online (Sandbox Code Playgroud)

linux kernel multi-core cgroup

13
推荐指数
1
解决办法
5204
查看次数

批处理模式的顶部,每个核心都需要 CPU%

我知道在运行 top 之后,我可以按下1并获取 CPU 及其利用率百分比的列表。我怀疑我也可以使用 -b 选项在批处理模式下执行此操作,但我不知道如何操作,并且在手册中找不到它。

我需要定期从 python 程序中读取它,所以它必须处于批处理模式。

linux multi-core top process

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

虚拟化 CPU 内核与线程

我们在 Ubuntu 9.10 上有一个 KVM 主机系统,带有一个带有超线程的更新的四核 Xeon CPU。如英特尔产品页面所述,该处理器有 4 个内核,但有 8 个线程。/proc/cpuinfo 和 htop 都列出了 8 个处理器,尽管每个处理器都在 cpuinfo 中声明了 4 个内核。KVM/QEMU 还报告了 8 个可分配给来宾的 VCPU。

我的问题是,当我为 VM 来宾分配 VCPU 时,我应该按内核分配还是按线程分配?由于 KVM/QEMU 报告服务器有 8 个 VCPU 需要分配,我是否应该继续将客户机设置为使用 4 个 CPU,而我之前将其设置为使用 2 个(假设总共有 4 个 VCPU 可用)?我想在不过度分配的情况下最大限度地利用主机硬件。

更新: Chopper3 的答案无疑是正确的方法。但是,我仍然很想听听任何硬件专家的意见,他们可以阐明线程与内核的性能方面……有人吗?

central-processing-unit vcpu multi-core threads kvm-virtualization

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

任务集和cpuset之间的区别

我正在尝试减少我的 linux 网络应用程序的延迟。我了解到有两种工具可以将程序“绑定”到特定的 CPU 内核:taskset 和 cpuset。

  1. 我应该更喜欢哪一个?它们在较低级别上是否等效?
  2. (处置)我的应用程序具有单线程,并且应该通过快速 LAN 网络以尽可能少的延迟处理单个 tcp 连接(无重新连接)。我在正确的路上吗?

central-processing-unit latency multi-core performance-tuning

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

如果散列受 CPU 限制,如何检查大文件身份?

对于小文件散列就可以了,但是对于大文件,您可以轻松找到md5sumCPU 限制。是否有任何散列算法能够在多核上横向扩展?任何解决方法?想法?任何事物?:)

multi-core hash big-data

9
推荐指数
2
解决办法
6969
查看次数

Sun Solaris - 找出处理器和内核的数量

我们的 SPARC 服务器运行的是 Sun Solaris 10;我想找出处理器的实际数量和每个处理器的核心数量。

psrinfo 和 prtdiag 的输出不明确:

$psrinfo -v
Status of virtual processor 0 as of: dd/mm/yyyy hh:mm:ss
  on-line since dd/mm/yyyy hh:mm:ss.
  The sparcv9 processor operates at 1592 MHz,
        and has a sparcv9 floating point processor.
Status of virtual processor 1 as of: dd/mm/yyyy hh:mm:ss
  on-line since dd/mm/yyyy hh:mm:ss.
  The sparcv9 processor operates at 1592 MHz,
        and has a sparcv9 floating point processor.
Status of virtual processor 2 as of: dd/mm/yyyy hh:mm:ss
  on-line since dd/mm/yyyy hh:mm:ss.
  The …
Run Code Online (Sandbox Code Playgroud)

solaris central-processing-unit multi-core sun sparc

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