gpt4 book ai didi

c - 为什么 4 线程程序在 1 核 VM 上比在 4 核 VM 上运行得更快?

转载 作者:行者123 更新时间:2023-11-30 19:28:11 29 4
gpt4 key购买 nike

  • 我使用 4 核 i7 CPU(8 个逻辑核),debian linux
  • 虚拟机也是 debian linux
  • 程序使用 gcc 编译,没有进行特殊优化(默认编译设置)
  • 我循环了该程序 1000 次。当虚拟机具有 4 个核心时,所需时间会延长 2 倍以上。为什么?

注意:我运行的程序是一个 C 程序,生成 4 个线程(pthread),并在经过一点计算后加入它们。它执行并行性(而不是并发性)。

最佳答案

在 I7 中,所有核心共享 L3 缓存。如果额外的执行行导致 L3 缓存上出现更多缓存未命中,则可能会通过添加内核来降低速度。

关于c - 为什么 4 线程程序在 1 核 VM 上比在 4 核 VM 上运行得更快?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54508431/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com