找回密码
立即注册
搜索
发回帖 发新帖

5244

积分

0

好友

672

主题
发表于 昨天 06:31 | 查看: 21| 回复: 0

问题

为什么 CPU 通常有 4、8、12 或 16 个核心,而不是 7、11 或 13 个?这背后到底有没有硬性的技术原因,还是说只是行业习惯?

简短结论

并不是“必须”使用偶数或 2 的幂,但工程上这样做最划算。4、8、16 这类数量能显著降低芯片设计、互连、调度和生产的复杂度;12 虽然不是典型的 2 的幂,但可以通过两个 6 核小芯片拼装,或者屏蔽部分核心得到,因此同样常见。

为什么 4、8、16 更吃香

1. 核心越多,互连越复杂

CPU 核心之间不是孤立工作,它们要共享缓存、内存控制器和 I/O 资源。把大量核心组织起来,最简单的方式就是成对、成组排列。

CPU 核心 数量如果采用 2 的幂,例如 2、4、8、16,很容易组成对称的环形、网格或层次化互连结构。7 或 11 这种质数核心,反而会破坏对称拓扑,让互连和路由变得不自然。

2. 缓存一致性与负载均衡

多核 CPU 需要维护缓存一致性。核心数量为偶数时,很多一致性协议和目录结构更容易划片管理。操作系统和调度器也更容易把线程均匀分配到成对核心上,避免出现“多一个核但不好调度”的尴尬。

3. 芯片面积与良率

芯片生产过程中会出现缺陷。厂商经常按“原生多核”设计,再屏蔽损坏或不达标的核心来分档销售。于是我们更容易看到 8 核屏蔽成 6 核、16 核屏蔽成 12 核这类结果,而不是刻意生产 7 核或 13 核。

4. 二进制编码天然匹配

核心 ID、中断路由、亲和性掩码等都依赖二进制表示。2 的幂核心数可以让核心编号、掩码和寻址更紧凑,减少浪费的编码空间。这不是软件偷懒,而是硬件逻辑本身就更适合按二进制边界切分。

12 核是怎么来的?

12 不是 2 的幂,但仍然常见,原因是它通常由两个 6 核小芯片拼成,或者由原生 16 核屏蔽 4 个核心得到。对厂商来说,这种组合比单独设计一个 11 核或 13 核芯片更经济,也能复用现有晶粒。

所以,7、11、13 不是做不出来

技术上当然可以在一块芯片里放 7 个核心,但为了这种数量单独设计拓扑、缓存一致性、测试流程和产品线,成本远高于收益。因此,与其说这是行业标准,不如说这是芯片设计、互连效率、良率管理和软件生态共同形成的工程选择。




上一篇:谷歌更新UGC垃圾内容防护指南:AI生成页面与共享平台的索引风险应对
下一篇:Excelize 开源基础库发布 2.11.1 版本更新
您需要登录后才可以回帖 登录 | 立即注册

关闭

站长推荐上一条 /1 下一条

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-11-11 07:39 , Processed in 0.067879 second(s), 42 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表