Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

To Hardware Prefetch or Not to Prefetch? A Virtualized Environment Study and Core Binding Approach #24

Open
mrdrivingduck opened this issue Jun 29, 2023 · 1 comment
Assignees
Labels

Comments

@mrdrivingduck
Copy link
Owner

document.pdf

@mrdrivingduck
Copy link
Owner Author

验证开启 hardware prefetching 在虚拟机环境下是否会导致性能回退。这里的 prefetching 指的是从主存中预取指令和数据到 CPU cache 中。

Prefetching 主要被用于填补主存和 CPU 之间的速度差异。然而,当大量 prefetching 请求竞争有限的内存带宽和 cache 资源时,反而可能引起性能的回退。由于虚拟机环境中多个虚拟机可能共享 CPU 核心(以及 cache),传统的最佳实践是在虚拟机环境下关闭 hardware prefetching。

本文通过 OLTP 和 FileBench 两个场景的测试,说明只有在特定场景的组合下会发生性能回退。基于回退场景,提出了 VM 的 Virtual CPU 的调度算法来避免回退。

@mrdrivingduck mrdrivingduck added the area/performance System performance label Jan 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant