zoukankan      html  css  js  c++  java
  • kvm 虚拟机的性能调优

    性能优化说明

    性能优化有两个方面:1、linux 系统自带 2、kvm 自带优化。大多数的优化都是默认配置的,只是通过了解这些优化项来进一步了解linux 及kvm 虚拟化

    CPU优化

    场景1:

    上下文切换:
    宿主机
    ring 0
    ring 3

    虚拟机
    ring 0
    ring 3
    解决:vmware 虚拟机编辑处理器--虚拟化引擎--勾选 “虚拟化Intel VT-X/EPT 或AMD-V/RVI(V)”

    场景2

    缓存(分为三级):
    cache miss 进程在一个cpu 上运行时,cpu 会产生该进程相关的缓存(数据、指令),当此进程跳转到其他的cpu 运行时原cpu 的就会存在cache miss 现象,
    所以通过cpu 绑定可以提高缓存命中率进而提高cpu性能

    解决:
    绑定在一个固定的物理cpu 核上(因为同一cpu物理核虚拟出来的逻辑cpu 内存是共享的)
    taskset -cp 1 25718

    缺点:失去灵活性。

    内存优化

    优化方式:

    1、空间优化
    2、寻址

    寻址优化

    EPT技术(vmware 虚拟机编辑处理器--虚拟化引擎--勾选 “虚拟化Intel VT-X/EPT 或AMD-V/RVI(V)”):

    虚拟机:虚拟内存
    虚拟机:物理内存
    宿主机:虚拟内存
    宿主机:物理内存

    大页内存(默认开启)
    [root@linux-node1 ~]# cat /sys/kernel/mm/transparent_hugepage/enabled

    空间优化(默认开启)

    KSM内存合并
    [ksmd]

    I/O优化

    virtio(默认开启)

    kvm 采用半虚拟化技术实现网络、磁盘等io 调度算法
    ps aux | grep virtio (lcentos 一般内核默认内置了此服务)

    kvm I/O优化:

    正常磁盘数据IO 流程:
    虚拟机:application->OS pagecache-disk ->宿主机:virtual disk images->Host os pagecache->物理磁盘缓存->物理磁盘
    可以根据需求直接跳过中间的步骤直接从某一步骤到后面的区域,这样避免了断电造成缓存数据丢失,但是牺牲了性能,毕竟数据先经过缓存比直接从磁盘读取要快很多。

    调度算法(linux 内核自带)

    2.6 内核: Noop CFQ AS Deadline 默认:CFQ
    3.10 内核: Noop CFQ Deadline 默认:Deadline

    算法用途:
    Noop 先后顺序,无其他算法。适用于ssd接口的硬盘(SSD很快,使用算法反而慢了)
    CFG 公平算法
    Deadline 读的时间要短于写,防止写操作饿死,最早应用于数据库服务器上,现在3.10 已经默认采用了
    AS 3.10 已经弃用

    查看当前系统存在的调度算法
    [root@linux-node1 ~]# dmesg | grep -i scheduler
    [ 1.945474] io scheduler noop registered
    [ 1.945476] io scheduler deadline registered (default)
    [ 1.945495] io scheduler cfq registered

    查看当前使用的调度算法
    [root@linux-node1 ~]# cat /sys/block/sda/queue/scheduler
    noop [deadline] cfq

  • 相关阅读:
    bbb SOCKET CAN
    在BBB上使用CCS5开发环境
    BBB的PRU模块
    垃圾邮件分类
    yzoj 2377 颂芬梭哈 题解
    yzoj 2372 小B的数字 题解
    yzoj P2371 爬山 题解
    hdu 1007 Quoit Design 题解
    手写堆
    yzoj P1126 塔 题解
  • 原文地址:https://www.cnblogs.com/fanggege/p/10411906.html
Copyright © 2011-2022 走看看