首页 文章

为最近的CPU架构生成每个周期加载/存储

提问于
浏览
2

受到this answer的启发

FLOPS per cycle for sandy-bridge and haswell SSE2/AVX/AVX2

对于Sandy / Ivy Bridge,Broad / Haswell,Sky / Kaby Lake,可以在核心上发布的正常装载/装载和存储的数量是多少?同样有趣的是AMD Bulldozer,Jaguar和Zen的数量 .

PS - 我知道由于缓存/内存带宽可能不是可持续的速率,我只是询问问题 .

1 回答

  • 5

    根据以下信息:

    桑迪/常 Spring 藤:每个周期,2个负载,或1个负载和1个存储 . 256位加载和存储计数加倍,但仅限于加载或存储本身 - 它仍然只有一个地址,因此AGU在下一个周期再次可用 . 通过混合大约256b操作,您仍然可以获得每周期2x 128b负载和1x 128b存储 .

    Haswell / Broadwell:2个负载和一个商店,256位负载/商店不算双倍 . 端口7(存储AGU)只能处理简单的地址计算(基本const,无索引),复杂的情况将转到p2 / p3并与负载竞争,简单的情况可能无论如何都要竞争但至少不必 .

    Sky / Kaby:和Broadwell一样

    推土机:2个负载,或1个负载和1个存储 . 256位加载和存储计数加倍 .

    Jaguar:1个装载或1个存储,256位装载和存储计数加倍 . 到目前为止,这个列表中最糟糕的一个,因为它是列表中唯一的低功耗μarch .

    Ryzen:2次加载,或1次加载和1次存储 . 256位加载和存储计数加倍 .

相关问题