linux性能优化

文章目录


性能优化图

CPU

进程和cpu原理

  1. 进程与线程:

    • 进程是程序的执行实例,有自己的地址空间和系统资源。线程是进程内的执行单元,共享进程的资源。
    • 在多核系统中,使用多线程可以更好地利用多核处理器的性能。
  2. CPU调度:

    • Linux使用调度器来确定哪个进程或线程在给定时间片内执行。
    • 调度策略可以通过调整进程的优先级、使用不同的调度算法或使用cgroups来限制资源来进行优化。
  3. 中断系统:

    • 中断是硬件或软件事件的异步通知,可导致CPU切换执行不同的任务。
    • 通过合理管理中断处理程序,可以减少中断延迟,提高系统响应性。
  4. CPU缓存:

    • 缓存是提高计算机性能的关键因素,包括L1、L2和L3缓存。
    • 优化内存访问模式、数据结构布局,以及避免缓存伪共享等方式,可以提高缓存的命中率。
  5. NUMA(非一致性存储访问):

    • NUMA是一种多处理器体系结构,其中每个处理器连接到共享内存的一个区域。
    • 通过合理分配任务、数据,以及使用NUMA感知的调度策略,可以减少内存访问的延迟。

性能指标

  1. 平均负载(Load Average):

    • 平均负载是系统中活跃进程数的平均值,通常包括1分钟、5分钟和15分钟的负载。
    • 负载高可能表示系统过载,需要进一步分析具体原因。
  2. CPU缓存命中率:

    • 缓存命中率表示从缓存中成功获取数据的比率。高缓存命中率通常是良好性能的指标。
    • 包括L1、L2和L3缓存,优化算法和数据结构可提高缓存命中率。
  3. CPU使用率中的各项指标:

    • 用户CPU(User CPU): 应用程序代码运行所占用的CPU时间。
    • 系统CPU(System CPU): 操作系统内核代码运行所占用的CPU时间。
    • IOWAIT: CPU等待I/O操作完成的时间。
    • 软中断: 由软件触发的中断,例如网络数据包到达。
    • 硬中断: 由硬件设备触发的中断,例如磁盘I/O完成。
    • 窃取CPU(Steal CPU): 在虚拟化环境中,宿主系统从虚拟机中"窃取"走的CPU时间。
    • 客户CPU(Guest CPU): 在虚拟化环境中,虚拟机使用的CPU时间。
  4. 上下文切换中的自愿和非自愿上下文切换:

    • 自愿上下文切换: 进程主动释放CPU,通常因为等待资源。
    • 非自愿上下文切换: 操作系统强制切换进程,通常因为时间片用尽或新进程的到来。
相关推荐
matlab的学徒8 小时前
Web与Nginx网站服务(改)
linux·运维·前端·nginx·tomcat
Insist7538 小时前
prometheus安装部署与alertmanager邮箱告警
linux·运维·grafana·prometheus
BAGAE9 小时前
MODBUS 通信协议详细介绍
linux·嵌入式硬件·物联网·硬件架构·iot·嵌入式实时数据库·rtdbs
灿烂阳光g9 小时前
SELinux 策略文件编写
android·linux
xqlily9 小时前
Linux操作系统之Ubuntu
linux·运维·ubuntu
阿部多瑞 ABU9 小时前
《基于国产Linux的机房终端安全重构方案》
linux·安全
倔强的石头10610 小时前
【Linux指南】Makefile入门:从概念到基础语法
linux·运维·服务器
ajassi200010 小时前
linux C 语言开发 (七) 文件 IO 和标准 IO
linux·运维·服务器
程序猿编码10 小时前
基于 Linux 内核模块的字符设备 FIFO 驱动设计与实现解析(C/C++代码实现)
linux·c语言·c++·内核模块·fifo·字符设备
一只游鱼10 小时前
Zookeeper介绍与部署(Linux)
linux·运维·服务器·zookeeper