x86-64 处理器的 NUMA 文档?

发布于 2024-11-10 03:54:30 字数 147 浏览 0 评论 0原文

我已经查找过 X86-64 处理器的 NUMA 文档,不幸的是我只找到了 NUMA 的优化文档。

我想要的是:如何在系统中初始化 NUMA(这包括获取系统的内存拓扑和处理器拓扑)。有谁知道有关 X86-64 AMD 和 Intel 处理器的 NUMA 的好文档吗?

I have already looked for NUMA documentations for X86-64 processors, unfortunately I only found optimization documents for NUMA.

What I want is: how do I initialize NUMA in a system (this would include getting the system's memory topology and processor topology). Does anyone know a good documentation about NUMA for X86-64 AMD and Intel processors?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

慈悲佛祖 2024-11-17 03:54:30

我知道如果你想要系统拓扑,你可以从 ACPI SLIT(系统位置信息表)或 SRAT(静态资源关联表)中获取。您可以从此处的 ACPI 规范 (http://www.acpi.info/spec.htm) 中了解更多相关信息,特别是第 5.2.16 和 5.2.17 节。

基本上,您使用 SRAT 来确定哪些内存范围与哪些 CPU 关联,并使用 SLIT 来确定使用特定 CPU/内存范围的相对成本。这两个表都是可选的,但根据我的经验,大多数 NUMA 系统至少有一个有用的 SRAT。

就初始化而言,我认为我帮不了什么忙。您可能想了解如何在 Linux 内核(或 BSD 内核)上启动处理器。您可能还需要阅读本地 APIC,因为它们用于初始化 x86 AP。

I know that if you want the system topology, you can get that from the ACPI SLIT (System Locality Information Table) or SRAT (Static Resource Affinity Table). You can read more about this from the ACPI spec here (http://www.acpi.info/spec.htm), specifically sections 5.2.16 and 5.2.17.

Basically, you use the SRAT to determine which memory ranges are associated with which CPUs, and you use the SLIT to determine the relative cost of using a particular CPU/memory range. Both of these tables are optional, but in my experience, most NUMA systems at least have a useful SRAT.

As far as initialization goes, I don't think I can help much. You might want to look in to how processors are brought up on the Linux kernel (or a BSD kernel). You'll probably need to read up on local APICs too, as they are used to init x86 APs.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文