OS |
版本 |
内核版本 |
---|---|---|
openEuler |
openEuler 20.03 LTS |
4.19.90-2003.4.0.0036.oe1.aarch64 |
openEuler 22.03 LTS |
5.10.0-60.18.0.50.oe2203.aarch64 |
|
openEuler 20.03 LTS-SP2 |
4.19.90-2106.3.0.0095.oe1.aarch64 |
|
openEuler 22.03 LTS-SP1 |
5.10.0-136.24.0.100.oe2203sp1.aarch64 |
|
Kylin |
Kylin V10 (SP03)/(Lance) |
4.19.90-52.15.v2207.ky10.aarch64 |
Kylin 3.4-5 |
4.19.90-2112.8.0.0131.kb8.ky3.aarch64 |
|
UOS |
UOS 1020e |
4.19.90-2201.4.0135.up1.uel20.aarch64 |
鲲鹏服务器从V159版本BIOS开始支持SPE功能。
1
|
vim /etc/grub2-efi.cfg
|
linux /vmlinuz-4.19.90-2003.4.0.0036.oe1.aarch64 root=/dev/mapper/openeuler-root ro rd.lvm.lv=openeuler/root rd.lvm.lv=openeuler/swap video=VGA-1:640x480-32@60me rhgb quiet smmu.bypassdev=0x1000:0x17 smmu.bypassdev=0x1000:0x15 crashkernel=1024M,high video=efifb:off video=VGA-1:640x480-32@60me kpti=off
若使用x86服务器,由于设置“kpti=off”后,系统安全性降低,不建议在生产环境设置。
1
|
perf list | grep arm_spe |
显示如下内容说明SPE已成功开启。
arm_spe_0// [Kernel PMU event]
1
|
vim /boot/efi/EFI/centos/grub.cfg
|
linux /vmlinuz-4.14.0-115.el7a.0.1.aarch64 root=/dev/mapper/centos-root ro crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet LANG=en_US.UTF-8 kpti=off
若使用x86服务器,由于设置“kpti=off”后,系统安全性降低,不建议在生产环境设置。
1
|
cat /proc/cmdline
|
1
|
perf list | grep arm_spe |
显示如下内容说明SPE已成功开启。
arm_spe_0// [Kernel PMU event]
CentOS 7.6的Miss采集时,支持以下7个内核版本,内核驱动编译时请使用支持的版本。
操作系统 |
内核版本 |
---|---|
CentOS 7.6 |
4.14.0-115.el7a.0.1 |
4.14.0-115.2.2.el7a |
|
4.14.0-115.5.1.el7a |
|
4.14.0-115.6.1.el7a |
|
4.14.0-115.7.1.el7a |
|
4.14.0-115.8.2.el7a |
|
4.14.0-115.10.1.el7a |
下载地址:https://github.com/kunpengcompute/devkitdriver/tree/main。
将下载包中的devkitdriver-main/SPEdriver目录下的文件拷贝至/home/spe_ko目录下,以4.14.0-115.el7a.0.1版本为例,其他小版本需要先下载对应内核版本的rpm包,并将系统升级到该内核版本。
1 2 3 4 |
cd /home/spe_ko/arm_spe_pmu make cd /home/spe_ko/spe_device make |
1 2 |
ls -l /home/spe_ko/arm_spe_pmu/arm_spe_pmu.ko ls -l /home/spe_ko/arm_spe_pmu/spe_device.ko |
1 2 |
insmod /home/spe_ko/arm_spe_pmu/arm_spe_pmu.ko insmod /home/spe_ko/arm_spe_pmu/spe_device.ko |
内核源码地址:https://archive.kernel.org/centos-vault/7.6.1810/os/Source/SPackages/
1 2 |
rpm -qa |grep bison rpm -qa |grep flex |
如果没有相关依赖,则进行安装。
1 2 |
yum install flex yum install bison |
1 2 3 4 |
cd /home/spe_perf/kernel-alt-4.14.0-115.el7a.0.1 rpm2cpio kernel-alt-4.14.0-115.el7a.0.1.src.rpm | cpio -divm xz -d linux-4.14.0-115.el7a.tar.xz tar -xvf linux-4.14.0-115.el7a.tar -C .. |
下载patch,patch地址:https://github.com/kunpengcompute/devkitdriver/tree/main。
将下载包中的perfpatch目录下的文件拷贝至/home/spe_perf目录下。
1 2 3 |
cd /home/spe_perf chmod +x build_perf.sh ./build_perf.sh |
新生成的perf在“/home/spe_perf/linux-4.14.0-115.el7a/tools/perf”路径下,在perf路径执行perf list。
1 2 |
cd /home/spe_perf/linux-4.14.0-115.el7a/tools/perf ./perf list | grep arm_spe |
1 2 3 |
mkdir -p /usr/bin/devkit/spe/4.14.0-115.el7a.0.1 cp perf /usr/bin/devkit/spe/4.14.0-115.el7a.0.1 chmod -R 500 /usr/bin/devkit/spe |