zoukankan      html  css  js  c++  java
  • Linux调优(内存,CPU)

    一、相关概念简介

    • system call:系统调用
    • time slice:cpu时间片
    • O(1):Linux系统进程调度器
    • page frame:分页
    • RSS:常驻内存集,无法被页面化的数据
    • MMU:内存管理单元,维护线性地址空间和物理地址空间的映射表
    • TLB:转换后缓冲器
    • huge page:大页
    • NUMA:非一致内存访问,有多颗CPU,每颗CPU有自己的内存段,每段叫做一个node,建议进程做CPU亲缘性绑定

    二、CPU内存调优

    • 调进程与CPU的亲缘性
    # taskset -p mask pid
    # taskset mask -- program
    # taskset -c 0,,2-7 -- myprogram
    
    # taskset -p -c 1 17947  #将pid为17947的进程绑定至第2颗CPU上,重启失效
    
    • 查看进程当前运行在哪颗CPU上
    # ps axo psr,pid,cmd
    
    • cpu中断统计
    # cat /proc/interrupts
    
    • numactl:对MUMA策略管理
    • 调整进程优先级:nice, renice
    • 隔离CPU,被隔离的CPU不会处理中断
    # vim /etc/grub.conf
    	kernel ...... lsolcpus=1,2,3...
    
    • 调度类别:
    SCHED_FIFO [0-99]
    	chrt -f [1-99] /path/to/program arguments
    SCHED_RR
    	chrt -f [1-99] /path/to/program arguments
    SCHED_NORMAL [100-139]
    	nice,renice
    
    • 0 - 139
    1-99:实时优先级
    100-139:动态优先级
    
    • 性能监控工具
    htop
    dstat
    glances
    sysdig
    sar -P ALL 1 2
    vmstat 1 5
    iostat -c 1
    
    • 配置大页
    vm.nr_hugepages = 10
    
    • 当前系统打开最大文件数
    fs.file-max = 8192
    
    • 当前系统所以异步io允许的最大事件数
    fs.aio-max-nr = 65535
    
    • OOM可调参数
    vm.panic_on_oom = 0
    /proc/pid/oom_adj  [-16-15] #数字越高,被杀死的值越大,如果是-17则这个进程是无懈可击的
    

    三、内存总结

    nr_hugepages
    swapiness
    overcommit_memory
    
  • 相关阅读:
    Yii Listview 更新及搜索
    Yii框架CGridView columns中使用数组或变量传值
    冲刺七天---05
    冲刺七天---04
    爱心图书剧本描述
    冲刺七天----03
    冲刺七天---02
    冲刺七天---01
    PSP周总结03
    psp周总结02
  • 原文地址:https://www.cnblogs.com/L-dongf/p/11068678.html
Copyright © 2011-2022 走看看