gpt4 book ai didi

x86 - 探听请求是否发送到多节点设置中的所有核心?

转载 作者:行者123 更新时间:2023-12-04 08:25:28 27 4
gpt4 key购买 nike

我知道英特尔在 QPI 中使用家庭监听一致性协议(protocol),在 UPI 中可能使用更复杂/动态(特定于工作负载)的协议(protocol)。但是,如果一个缓存线一开始就处于 I(无效)状态,而其他内核都没有它在其 L1/L2 中,那么一旦从本地代理请求缓存线,加载请求是否也会广播到其他本地内核?我相信确实如此。但是,负载请求是否也会广播到不同节点上的核心?
另一种可能的解释是:如果在 L2 中找不到,则将要求 L3 内存 Controller 提供它。 LLC Controller 将知道哪个 DIMM/内核具有请求的物理数据(使用目录)并通过 QPI/UPI 将请求路由到相应的内核。接下来,该请求仅由其 L3 Controller 在目标节点的核心之间广播。最后,L2 Controller 将被告知节点间通信,因此 L2 不会广播到其他本地核心。这意味着请求永远不会广播到节点之外。
我了解此类信息可能无法公开获得,但任何想法都值得赞赏。

最佳答案

But if a cache line is in I (INVALID) state to begin with while noneof the other cores have it in their L1/L2, once the cache line isrequested from home agent will the load request be also broadcasted toother local cores?


这是一个实现细节,不是 QPI 规范的一部分。在从 Nehalem 开始的所有 Intel 处理器上,无论 L3 缓存是包含还是非包含,片上互连上的每个缓存代理都有一个包含目录,用于跟踪它拥有的缓存行(即,其物理地址映射到它) )。因此,除非目录指示所有本地内核都需要监听,否则监听永远不会广播到所有本地内核。在 L3 缓存中未命中时,请求被发送到目标缓存行的本地代理。

will the load request be broadcasted to cores on a different nodealso?


这也是一个实现细节。这取决于相干模式。如果处理器支持内存级别的一致性目录并且启用了该目录,则无需为每个请求进行广播。一些处理器支持机会广播 (OSB)。如果启用了 OSB,则归属代理可能会推测性地广播探听(如果带宽可用)。这与目录查找操作并行完成。如果目录查找结果表明不需要监听其他 NUMA 节点,则家乡代理将请求的数据发送回,而无需等待监听响应,从而减少延迟。

关于x86 - 探听请求是否发送到多节点设置中的所有核心?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65281369/

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