Sieć SONiC: Użycie pamięci systemowej w systemie SONiC — "buff/available"

Summary: W tym artykule wyjaśniono znaczenie pól "buff/cache" i "avail Mem" w danych wyjściowych "top" w natywnym interfejsie wiersza poleceń SONiC systemu Dell Networking.

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

  • Pytanie 1: Co to jest buff/cache?

    "buff/cache" to ilość pamięci używanej przez i pamięć podręczną systemu plików. To użycie pamięci jest kluczowym elementem sposobu, w jaki Linux zarządza i optymalizuje wydajność systemu. Przeanalizujmy, co oznacza "buff/cache":

    :
    Bufor w tym kontekście oznacza część pamięci systemowej (RAM) używaną do tymczasowego przechowywania danych, które są odczytywane lub zapisywane na dysku. Na przykład, gdy program odczytuje dane z pliku, dane są najpierw ładowane do bufora w pamięci. Bufor pomaga zwiększyć wydajność we/wy dysku, ponieważ odczyt lub zapis w pamięci RAM jest szybszy niż dostęp do dysku fizycznego. Bufor może również zapewnić wydajniejsze zapisywanie danych na dysku, zmniejszając liczbę operacji we/wy dysku.

    Pamięć podręczna:
    Pamięć podręczna w tym kontekście wskazuje część pamięci używaną do przechowywania często używanych danych z plików i katalogów. Linux używa mechanizmu zwanego "pamięcią podręczną strony" do buforowania danych z plików i katalogów, które zostały ostatnio odczytane lub zapisane. Te dane w pamięci podręcznej są przechowywane w pamięci, dzięki czemu jeśli te same dane są potrzebne ponownie, można je szybko pobrać z pamięci RAM zamiast odczytywać je z wolniejszej pamięci dyskowej. Ta pamięć podręczna może znacznie poprawić wydajność systemu, zmniejszając zapotrzebowanie na dostęp do dysku w przypadku często używanych danych.

    Gdy aplikacje lub system operacyjny potrzebują więcej pamięci dla aktywnych procesów, można szybko zwolnić pamięć buforową/podręczną, aby zaspokoić te potrzeby.

    Polecenie "top" wyświetla tę wartość. Wyświetla również bieżący stan systemu, użycie procesora, wykorzystanie pamięci.

    UWAGA: Polecenie "top" działa tylko w natywnym interfejsie wiersza poleceń systemu SONiC, a nie w interfejsie MF-CLI FIRMY DELL (MF-CLI to niestandardowy interfejs CLI "struktury zarządzania" firmy Dell). Natywny interfejs wiersza poleceń to interfejs wiersza poleceń, który pojawia się przy pierwszym uruchomieniu przełącznika SONiC. MF-CLI jest osiągany po wpisaniu "sonic-cli" w początkowym natywnym interfejsie wiersza poleceń.
    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
  • Pytanie 2: Jaki jest próg wysokiego wykorzystania pamięci buforowej/podręcznej?

    Pamięć buforowa/podręczna jest używana jako pamięć podręczna do przechowywania często używanych danych. W związku z tym możliwe jest, że znaczna część dostępnej pamięci RAM zostanie przeznaczona na ten cel. Należy zauważyć, że użycie pamięci buforowej/podręcznej jest bardzo dynamiczne i stale zmienia się w zależności od zapotrzebowania systemu. Dlatego bardziej wartościowe jest monitorowanie ogólnego użycia pamięci (lub odpowiadającej mu pamięci dostępnej) i upewnienie się, że system ma wystarczającą ilość wolnej pamięci do uruchamiania aplikacji i procesów.

    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

    Przydatne polecenie umożliwiające wyrażenie procentowej ilości pamięci RAM dostępnej do użytku w przełączniku Dell Enterprise SONiC:

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

    To polecenie dzieli "avail Mem" przez "MiB Mem total".

    Oto kolejny przykład porównujący powyższe polecenia i wskazujący ich relacje w celach informacyjnych:

    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.