gpt4 book ai didi

x86 - TLB invlpg指令延迟较长

转载 作者:行者123 更新时间:2023-12-02 19:03:32 25 4
gpt4 key购买 nike

所以我正在研究这个执行一些页表操作的内核模块,我注意到刷新 TLB 条目很慢。你问多慢?每次调用 invlpg 的时间超过 100 ns!即 280 个周期或更多。我愿意接受这一点......但是对于硬件支持的分页和地址转换来说,这似乎违反直觉。有人知道为什么这么糟糕吗?

我正在 4 核 2.8 Ghz Intel core i5 上运行

最佳答案

我的猜测是,像这样的特权指令很少占任何实际工作负载的总 CPU 时间的重要部分,因此不值得花费大量芯片来提高它们的速度。

使它们成为非序列化意味着无序微指令调度逻辑必须跟踪页表修改作为每个内存微指令的依赖项之一。这会对功耗产生负面影响,因为重排序缓冲区已经需要跟踪大量内容,并且每个周期支持 4 个输入和更多输出。

虚拟化的广泛使用导致了最近设计中这些指令的性能改进,因为 virt 开销是某些工作负载中的一个问题。我想 invlpg 的情况并非如此。

关于x86 - TLB invlpg指令延迟较长,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13077883/

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