🤹♀️ Как сбросить кеш ядра Linux

Бесплатные инструменты

Используйте утилиту sync для синхронизации памяти, ожидающей записи в постоянное хранилище.

$ sync

Изучите /proc/meminfo и убедитесь, что объем «грязной памяти», ожидающей записи на диск (определяется в килобайтах), уменьшится.

Вы также можете заметить небольшой всплеск памяти Writeback, которая активно записывается обратно в постоянное хранилище, и WritebackTmp, который напрямую связан с FUSE (файловая система в пользовательском пространстве).

Изменения в использовании памяти до и после выдачи этой команды.

MemTotal:16287088 kB (MemFree:7688696 kB | MemFree: 7713352 kBMemAvailable: 8315048 kB | MemAvailable:8339800 kBBuffers:18452 kB | Buffers: 18492 kBCached: 1836208 kB | Cached:1836268 kBSwapCached: 0 kB (Active: 6457040 kB | Active:6430504 kBInactive: 1459164 kB | Inactive:1459204 kBActive(anon): 6070180 kB | Active(anon):6043584 kBInactive(anon): 1021284 kB (Active(file):386860 kB | Active(file): 386920 kBInactive(file):437880 kB | Inactive(file): 437920 kBUnevictable: 32 kB (Mlocked: 32 kB (SwapTotal: 999420 kB (SwapFree:999420 kB (Dirty:21200 kB | Dirty: 0 kB←Writeback:0 kB (AnonPages:6061728 kB | AnonPages: 6035384 kBMapped: 1248224 kB | Mapped:1248260 kBShmem:1029928 kB (Slab:348728 kB | Slab: 348748 kBSReclaimable:120864 kB | SReclaimable: 120852 kBSUnreclaim:227864 kB | SUnreclaim: 227896 kBKernelStack:29168 kB | KernelStack: 29184 kBPageTables: 91616 kB | PageTables:91656 kBNFS_Unstable: 0 kB (Bounce: 0 kB (WritebackTmp: 0 kB (CommitLimit:9142964 kB (Committed_AS:22529316 kB | Committed_AS: 22536664 kBVmallocTotal: 34359738367 kB (VmallocUsed:0 kB (VmallocChunk: 0 kB (HardwareCorrupted:0 kB (AnonHugePages:38912 kB (ShmemHugePages: 0 kB (ShmemPmdMapped: 0 kB (CmaTotal: 0 kB (CmaFree:0 kB (HugePages_Total:0(HugePages_Free: 0(HugePages_Rsvd: 0(HugePages_Surp: 0(Hugepagesize:2048 kB (DirectMap4k: 658988 kB (DirectMap2M: 11786240 kB (DirectMap1G:5242880 kB

Используйте утилиту sysctl для выдачи команды ядру для аннулирования кэша страниц, который является основным дисковым кэшем, используемым, когда данные либо считываются с диска, либо записываются на диск.

$ sudo sysctl -w vm.drop_caches=1

Изучите /proc/meminfo, чтобы убедиться, что кэш страниц в памяти уменьшится.

Изменения в использовании памяти до и после выдачи этой команды.

MemTotal:16287088 kB (MemFree:1595736 kB | MemFree: 7079620 kBMemAvailable: 8339004 kB | MemAvailable:8325900 kBBuffers:1714248 kB | Buffers:1088 kB←Cached: 5524636 kB | Cached:1853228 kB←SwapCached: 0 kB (Active: 8972220 kB | Active:6319944 kBInactive: 4226696 kB | Inactive:1496236 kBActive(anon): 5963252 kB | Active(anon):5962128 kBInactive(anon): 1063684 kB | Inactive(anon):1076596 kBActive(file): 3008968 kB | Active(file): 357816 kB←Inactive(file): 3163012 kB | Inactive(file): 419640 kB←Unevictable: 32 kB (Mlocked: 32 kB (SwapTotal: 999420 kB (SwapFree:999420 kB (Dirty:296 kB | Dirty: 968 kB Writeback:0 kB (AnonPages:5955404 kB | AnonPages: 5957264 kBMapped: 1250196 kB | Mapped:1250348 kBShmem:1066912 kB | Shmem: 1076720 kBSlab: 1149756 kB | Slab:1047280 kBSReclaimable:914580 kB | SReclaimable: 812116 kBSUnreclaim:235176 kB | SUnreclaim: 235164 kBKernelStack:29200 kB | KernelStack: 29104 kBPageTables: 91272 kB | PageTables:91288 kBNFS_Unstable: 0 kB (Bounce: 0 kB (WritebackTmp: 0 kB (CommitLimit:9142964 kB (Committed_AS:22527888 kB | Committed_AS: 22538996 kBVmallocTotal: 34359738367 kB (VmallocUsed:0 kB (VmallocChunk: 0 kB (HardwareCorrupted:0 kB (AnonHugePages:38912 kB (ShmemHugePages: 0 kB (ShmemPmdMapped: 0 kB (CmaTotal: 0 kB (CmaFree:0 kB (HugePages_Total:0(HugePages_Free: 0(HugePages_Rsvd: 0(HugePages_Surp: 0(Hugepagesize:2048 kB (DirectMap4k: 658988 kB (DirectMap2M: 11786240 kB (DirectMap1G:5242880 kB (

Используйте утилиту sysctl, чтобы выдать команду ядру для освобождения восстанавливаемых объектов slab, включая dentries и inode.

$ sudo sysctl -w vm.drop_caches=2

Изучите /proc/meminfo, чтобы убедиться, что память SReclaimable, выделенная для внутренних структур данных ядра, которые могут быть восстановлены, уменьшится.

Просмотрите /proc/slabinfo для подробной информации о кешировании inode, dentry.

Изменения в использовании памяти до и после выдачи этой команды

MemTotal:16287088 kB (MemFree:7078272 kB | MemFree: 7827464 kBMemAvailable: 8329644 kB | MemAvailable:8411084 kBBuffers: 2564 kB | Buffers:3696 kBCached: 1843068 kB | Cached:1804908 kBSwapCached: 0 kB (Active: 6334520 kB | Active:6341572 kBInactive: 1484256 kB | Inactive:1438124 kBActive(anon): 5973268 kB | Active(anon):5979840 kBInactive(anon): 1062816 kB | Inactive(anon):1016812 kBActive(file):361252 kB | Active(file): 361732 kBInactive(file):421440 kB | Inactive(file): 421312 kBUnevictable: 32 kB (Mlocked: 32 kB (SwapTotal: 999420 kB (SwapFree:999420 kB (Dirty: 1100 kB | Dirty:1568 kBWriteback:0 kB (AnonPages:5968564 kB | AnonPages: 5971180 kBMapped: 1249996 kB | Mapped:1248236 kBShmem:1062948 kB | Shmem: 1025484 kBSlab: 1047264 kB | Slab: 346196 kBSReclaimable:811972 kB | SReclaimable: 118788 kB ←SUnreclaim:235292 kB | SUnreclaim: 227408 kBKernelStack:29120 kB | KernelStack: 29136 kBPageTables: 91416 kB | PageTables:91560 kBNFS_Unstable: 0 kB (Bounce: 0 kB (WritebackTmp: 0 kB (CommitLimit:9142964 kB (Committed_AS:22508796 kB | Committed_AS: 22493648 kBVmallocTotal: 34359738367 kB (VmallocUsed:0 kB (VmallocChunk: 0 kB (HardwareCorrupted:0 kB (AnonHugePages:38912 kB (ShmemHugePages: 0 kB (ShmemPmdMapped: 0 kB (CmaTotal: 0 kB (CmaFree:0 kB (HugePages_Total:0(HugePages_Free: 0(HugePages_Rsvd: 0(HugePages_Surp: 0(Hugepagesize:2048 kB (DirectMap4k: 658988 kB (DirectMap2M: 11786240 kB (DirectMap1G:5242880 kB (

Изменения в статистике распределителя slab ядра до и после выполнения этой команды.

$ sdiff -l -w 57 slabinfo.20 slabinfo.21slabinfo - version: 2.1 (# name  

Отправка комментария

0 Комментарии