02-查看CPU和内存

作者: 玄德公笔记 | 来源:发表于2021-07-04 23:22 被阅读0次

    1. 内存查看和清理

    1.1 内存查看

    [root@DO-NFS data]# free -h
                  total        used        free      shared  buff/cache   available
    Mem:           3.7G        236M        519M        179M        2.9G        3.0G
    Swap:          4.0G         34M        4.0G
    

    说明:

    • shared(共享内存)
      作用:用于进程间相互通讯
      特点:共享、互斥

    • buffers(缓冲区)
      作用:减少磁盘的I/O频率。如每秒100的读写,放入缓冲区,变为1秒10次。

    • cached(缓存区)
      作用:内容重复读写时加快读取速度。如I/O慢的设备将读过的文件放入内存缓存区。

    • 计算和关系
      used+free+shared+buff/cache=total
      available是实际剩余可用的内存(buff/cache中可释放的部分+free)

    1.2 内存清理

    1.2.1 将dirty的内容写回硬盘

    # sync
    

    1.2.2 清理内存

    通过修改proc系统的drop_caches清理,但是available的值是不会变的(最后的示例中可见)。

    • 删除 pagecache(在buffer中)
    # echo 1 > /proc/sys/vm/drop_caches
    

    说明:page cache,高速缓冲存储器(页高缓)。page cache的大小为一页,通常为4K。在linux读写文件时,它用于缓存文件的逻辑内容,从而加快对磁盘上映像和数据的访问。

    • 删除 dentries 和 inodes(在cached中)
    # echo 2 > /proc/sys/vm/drop_caches
    
    • 3个全删:
    #echo 3 > /proc/sys/vm/drop_caches
    
    • 示例
    [root@DO-NFS ~]# free -h
                  total        used        free      shared  buff/cache   available
    Mem:           3.7G        239M        672M        179M        2.8G        3.0G
    Swap:          4.0G         34M        4.0G
    [root@DO-NFS ~]# echo 3 > /proc/sys/vm/drop_caches
    [root@DO-NFS ~]# free -h
                  total        used        free      shared  buff/cache   available
    Mem:           3.7G        238M        3.0G        179M        411M        3.0G
    Swap:          4.0G         34M        4.0G
    

    如前所述,我们验证了该方法 available的值是不会变的。

    2. 查看CPU

    2.1 一些概念

    CPU、物理核、逻辑核(线程)的关系如下:

    image.png

    2.2 查看cpu信息

    • 查看文件 /proc/cpuinfo,信息如下:
    processor       : 0
    vendor_id       : GenuineIntel
    cpu family      : 6
    model           : 85
    model name      : Intel(R) Xeon(R) Platinum 8269CY CPU @ 2.50GHz
    stepping        : 7
    microcode       : 0x1
    cpu MHz         : 2500.002
    cache size      : 36608 KB
    physical id     : 0
    siblings        : 12
    core id         : 0
    cpu cores       : 6
    apicid          : 0
    initial apicid  : 0
    fpu             : yes
    fpu_exception   : yes
    cpuid level     : 22
    wp              : yes
    flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc eagerfpu pni pclmulqdq monitor ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx avx512f avx512dq rdseed adx smap avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 arat avx512_vnni
    bogomips        : 5000.00
    clflush size    : 64
    cache_alignment : 64
    address sizes   : 46 bits physical, 48 bits virtual
    power management:
    
    processor       : 1
    vendor_id       : GenuineIntel
    ……
    

    2.2.1 查看逻辑核(线程)

    第一行 “ processor: 0” 即逻辑cpu的编号,后边还有1、2……,每个逻辑核会写一组信息

    • 统计逻辑核
    [root@node-01 ~]# cat /proc/cpuinfo |grep processor|wc -l
    12
    

    可知是12线程。

    2.2.2 物理核

    上文的 cores id 指的是该线程的核心号,我们统计一下去重得到物理核数。

    • 统计物理核数
    [root@node-01 ~]# cat /proc/cpuinfo |grep "core id"|sort|uniq|wc -l
    6
    

    可知一共6个核心

    2.2.3 物理CPU颗数

    上文的physical id 即物理cpu的编号,统计一下去重得到CPU颗数。

    • 统计物理CPU颗数
    #  cat /proc/cpuinfo |grep "physical id"|sort|uniq |wc -l
    1
    

    可知有一颗物理CPU

    2.2.4 查看CPU信息(型号)

    [root@node-01 ~]# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
         12  Intel(R) Xeon(R) Platinum 8269CY CPU @ 2.50GHz
    

    相关文章

      网友评论

        本文标题:02-查看CPU和内存

        本文链接:https://www.haomeiwen.com/subject/euldultx.html