vtune 的 host 和 target 机器
以下就以我的环境为例:
- 我的 vtune GUI 工具是 安装在 window 的机器上。这个就是 host 机器。
- 而我的被测试机器,则是一台 centos7 的服务器。这个就是 target 机器。
安装 vtune 驱动 的动机
vtune 可以使用 perf 来采样,但是在进行微架构分析的时候,perf 采样会报错。
这时,则需要 vtune 自带的驱动来采样。
安装 vtune 驱动 前的准备
在安装 vtune 自带的驱动 前,需要内核打开以下编译选项:
- CONFIG_MODULES=y
- CONFIG_MODULE_UNLOAD=y
- CONFIG_PROFILING=y
- CONFIG_SMP=y
- CONFIG_TRACEPOINTS=y (optional but recommended)
- CONFIG_KPROBES=y
- CONFIG_RING_BUFFER=y
- CONFIG_FRAME_POINTER=y (optional but recommended for kernel stack analysis)
修改 内核 的 Makefile:
在 CFLAGS_KERNEL 添加 -g
参数
CFLAGS_KERNEL := -g
CFLAGS := -g
重新编译内核
export CFLAGS_KERNEL=-g
export CFLAGS=-g
make -j 16 clean
make -j 16 && make -j 16 modules