为硬件性能计数器测试自定义内核的最佳方法

Best way to test a custom kernel for hardware performance counters

我想修改一个官方的linux内核来测试perf linux模块的一些可能性(我需要修改kernel/events/...中的一些文件,不仅tools/perf/...).

我天真地想使用 VM 或 Docker,但我需要使用硬件性能计数器 (HPC) 来测试我的自定义版本;这是个大问题:

在不直接在我的 ubuntu 系统上安装内核的情况下测试自定义内核 linux 的最佳方法是什么?如果必须,进行这些测试的最优雅的方法是什么?谢谢。

我找到了一个解决方案:KVM + QEMU 模拟器。

为了使用 PMU,我在 VM 参数中更改了这个参数(XML 格式):

<cpu mode='host-passthrough'/>

或者您可以在 cmd 行中添加此选项:

-cpu host

我部分遵循了这个 page for building the kernel on qemu and for the counters this