ネットワーキングSONiC: SONiCのシステム メモリー使用量 - 「buff/available」

Summary: この記事では、Dell Networking SONiCのネイティブCLIの「top」出力にある「buff/cache」および「avail Mem」フィールドの意味について説明します。

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

  • 質問1: バフ/キャッシュとは何ですか?

    「buff/cache」は、ファイルシステムのバッファとキャッシュに使用されるメモリの量です。このメモリ使用量は、Linuxがシステムパフォーマンスを管理および最適化する方法の重要な部分です。「バフ/キャッシュ」の意味を分解してみましょう。

    バッファー:
    このコンテキストでのバッファーは、ディスクからの読み取りまたはディスクへの書き込み中のデータを一時的に保持するために使用されるシステム メモリー(RAM)の一部を指します。たとえば、プログラムがファイルからデータを読み取る場合、データは最初にメモリ内のバッファーに読み込まれます。物理ディスクにアクセスするよりもRAMの読み取りまたは書き込みが高速であるため、バッファーを使用するとディスクI/Oパフォーマンスが向上します。また、バッファーを使用すると、データをより効率的にディスクに書き込むことができ、ディスクI/O操作の数を減らすことができます。

    キャッシュ
    このコンテキストでのキャッシュとは、ファイルやディレクトリーから頻繁にアクセスされるデータを格納するために使用されるメモリーの部分を指します。Linuxは、「ページキャッシュ」と呼ばれるメカニズムを使用して、最近読み書きされたファイルやディレクトリからのデータをキャッシュします。このキャッシュされたデータはメモリに保持されるため、同じデータが再度必要になった場合、低速のディスクストレージから読み取るのではなく、RAMからすばやく取り出すことができます。このキャッシュは、頻繁に使用されるデータのためにディスクにアクセスする必要性を減らすことで、システムパフォーマンスを大幅に向上させることができます。

    アプリケーションまたはオペレーティング システムがアクティブなプロセスに対してより多くのメモリーを必要とする場合、これらのニーズに対応するためにバッファー/キャッシュ メモリーを迅速に解放できます。

    「top」コマンドは、この値を表示します。また、システムの現在のステータス、CPU使用率、メモリー使用率も表示されます。

    メモ: 「top」コマンドは、SONiCのネイティブCLIでのみ機能し、DellのMF-CLIでは機能しません(MF-CLIはDellのカスタム「管理フレームワーク」CLIです)。ネイティブCLIは、SONiCスイッチを初めて起動したときに表示されるコマンドライン インターフェイスです。最初のネイティブcliに「sonic-cli」を入力すると、MF-CLIにアクセスできます。
    admin@sonic:~$ top
    top - 16:43:51 up 8 days, 18:15,  1 user,  load average: 1.54, 1.50, 1.51
    Tasks: 365 total,   2 running, 363 sleeping,   0 stopped,   0 zombie
    %Cpu(s):  2.8 us,  4.2 sy,  0.0 ni, 93.1 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
    MiB Mem :  15482.2 total,  11292.8 free,   2299.6 used,   1889.8 buff/cache 
    MiB Swap:      0.0 total,      0.0 free,      0.0 used.  12965.1 avail Mem
  • 質問2: 高いバッファー/キャッシュ メモリー使用率のしきい値はどれくらいですか?

    バッファー/キャッシュ メモリーは、頻繁にアクセスされるデータを格納するためのキャッシュとして使用されます。したがって、使用可能なRAMのかなりの部分がこの目的に割り当てられる可能性があります。注目すべき点は、バッファ/キャッシュメモリの使用は非常に動的であり、システムの需要に基づいて絶えず変化するということです。したがって、全体的なメモリ使用量(または対応する「使用可能なメモリ」)を監視し、システムにアプリケーションとプロセスを実行するのに十分な空きメモリがあることを確認することがより重要です。

    top - 14:17:13 up 207 days,  1:59,  1 user,  load average: 2.66, 2.19, 2.03
    Tasks: 386 total,   2 running, 384 sleeping,   0 stopped,   0 zombie
    %Cpu(s): 12.5 us,  9.7 sy,  0.0 ni, 77.8 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
    MiB Mem :  15482.6 total,   8571.4 free,   2692.5 used,   4218.8 buff/cache
    MiB Swap:      0.0 total,      0.0 free,      0.0 used.  12773.1 avail Mem   <--- system's total available RAM

    Dell Enterprise SONiCスイッチで使用可能なシステムRAMの割合を示す便利なコマンドです。

    free | grep Mem | awk '{print $7/$2 * 100 }'

    このコマンドは、「avail Mem」を「MiB Mem total」で除算します。

    上記のコマンドを比較し、参照のためにそれらの関係を示す別の例を次に示します。

    admin@Leaf3B:~$ top
    top - 21:49:49 up  1:25,  1 user,  load average: 0.59, 0.60, 0.64
    Tasks: 329 total,   1 running, 328 sleeping,   0 stopped,   0 zombie
    %Cpu(s):  7.9 us,  4.2 sy,  0.0 ni, 87.5 id,  0.0 wa,  0.0 hi,  0.4 si,  0.0 st
    KiB Mem : 15928852 total, 12074024 free,  2439884 used,  1414944 buff/cache
    KiB Swap:        0 total,        0 free,        0 used. 13120520 avail Mem
    
      PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
    21685 root      20   0  172992  33116   8436 S  52.9  0.2   3:16.11 python3.6
     1278 root      20   0   92872  15116   3264 S  17.6  0.1   2:24.49 redis-serv+
     5366 admin     20   0   43540   3812   3020 R  17.6  0.0   0:00.03 top
    18469 root      20   0 1643080 451968  78276 S  11.8  2.8   8:17.32 syncd
     1097 root      20   0  136440  15188   5912 S   5.9  0.1   0:07.75 watchdogd
    19856 admin     20   0  334880  61900  35296 S   5.9  0.4   0:00.44 docker
    20985 root      20   0  159488  18616   5036 S   5.9  0.1   0:19.22 xcvrd
        1 root      20   0   57768   7820   5544 S   0.0  0.0   0:32.58 systemd
        2 root      20   0       0      0      0 S   0.0  0.0   0:00.00 kthreadd
        3 root      20   0       0      0      0 S   0.0  0.0   0:00.91 ksoftirqd/0
        4 root      20   0       0      0      0 S   0.0  0.0   0:01.90 kworker/0:0
        5 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/0:+
        7 root      20   0       0      0      0 S   0.0  0.0   0:06.93 rcu_sched
        8 root      20   0       0      0      0 S   0.0  0.0   0:00.00 rcu_bh
        9 root      rt   0       0      0      0 S   0.0  0.0   0:00.39 migration/0
       10 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 lru-add-dr+
       11 root      rt   0       0      0      0 S   0.0  0.0   0:00.00 watchdog/0
    
    admin@Leaf3B:~$ free
                  total        used        free      shared  buff/cache   available
    Mem:       15928852     2438836    12074940       36060     1415076    13121528
    Swap:             0           0           0
    admin@Leaf3B:~$ free | grep Mem | awk '{print $7/$2 * 100 }'
    82.3662
    admin@Leaf3B:~$

 

Affected Products

Enterprise SONiC Distribution
Article Properties
Article Number: 000215960
Article Type: How To
Last Modified: 17 شباط 2025
Version:  3
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.