中文
注册

双层调度特性

通过修改CentOS 7.6内核以及在宿主机和虚拟机上进行安装,以支持一些特性并提升整机性能。

内核说明

通过在编译修改过的CentOS 7.6内核,并安装于宿主机和虚拟机上,能够支持以下特性,提升整机性能:

  • vcpu preempt:优化虚拟机VCPU调度,减轻虚拟机CPU超分场景下可能出现的VCPU得不到调度的问题。
  • pvspinlock锁优化:优化VCPU等锁时间长导致性能下降的问题。
  • guest vcpu topology:解决原生CentOS 7.6内核下虚拟机不正确显示CPU拓扑的问题。

pvspinlock锁优化特性默认不开启,需要修改虚拟机内部cmdline,添加arm_pvspin选项。特性开启后,预期可以在虚拟机内message日志中看到如下图信息:

内核安装

主机和虚拟机都需要进行内核安装。

  1. 安装编译依赖,以虚拟化主机安装为例,虚拟机安装类型为“Virtualization Host”。

  2. 从鲲鹏社区下载kernel代码库
    1
    git clone https://github.com/kunpengcompute/kernel-alt.git
    
  3. 下载内核源码包并安装。
    1
    2
    wget https://archive.kernel.org/centos-vault/altarch/7.6.1810/os/Source/SPackages/kernel-alt-4.14.0-115.el7a.0.1.src.rpm
    rpm -ivh kernel-alt-4.14.0-115.el7a.0.1.src.rpm
    
  4. 拷贝文件至指定目录,做好编译准备
    1
    2
    3
    4
    5
    cd kernel-alt
    cp -f *patch ~/rpmbuild/SOURCES/
    cp -f kernel-alt-4.14.0-aarch64.config ~/rpmbuild/SOURCES/
    cp -f kernel-alt-4.14.0-aarch64-debug.config ~/rpmbuild/SOURCES/
    cp -f kernel-alt.spec ~/rpmbuild/SPECS/
    
  5. 安装依赖包
    1
    yum -y install m4.aarch64 gcc.aarch64 xmlto.aarch64 asciidoc.noarch openssl-devel.aarch64 hmaccalc.aarch64 python-devel.aarch64 newt-devel.aarch64 perl-ExtUtils-Embed.noarch git.aarch64 elfutils-devel.aarch64 zlib-devel.aarch64 binutils-devel.aarch64 bison.aarch64 audit-libs-devel.aarch64 java-devel numactl-devel.aarch64 pciutils-devel.aarch64 ncurses-devel.aarch64 rpm-build
    
  6. 开始编译。
    1
    2
    cd ~/rpmbuild/SPECS/
    rpmbuild -bb kernel-alt.spec
    
  7. 安装编译内核
    1
    2
    cd ~/rpmbuild/RPMS/aarch64
    rpm -ivh kernel-4.14.0-115.el7.0.2.aarch64.rpm
    
  8. grub启动项设置为新安装的内核并重启系统。
  9. 内核安装成功后,检查OS内核版本
    1
    uname -r
    

    可查看到如下所示的版本信息

搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词