The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выполнение команды с отключением кеширования операций с файловой системой в Linux
В некоторых ситуациях необходимо выполнить операцию без влияния на кэш файловой
системы, например, скопировать данные без их попадания в кэш. Для отключения
кэша на уровне отдельных команд можно использовать утилиту nocache,
перехватывающую вызовы open и close, и выполняя принудительно системый вызов
posix_fadvise c параметром POSIX_FADV_DONTNEED.

В качестве одной из областей использования доступа к  ФС c отключением
кэширования можно отметить выполнение резервного копирования без влияния на
содержимое кэша - в обычных условиях копирование большого числа файлов вытеснит
часть других данных из кэша, при этом заранее известно, что новые данные точно
не будут востребованы в ближайшее время. Избежать оседания данных в кэше при
копировании можно выполнив следующую команду:

   ./nocache cp -a ~/ /mnt/backup/home-$(hostname)

Другим применением может быть проведение тестов с исключением влияния кэша ФС.
 
16.06.2013 , Источник: https://github.com/Feh/nocache...
Ключи: cache, vfs, nocache, backup, linux / Лицензия: CC-BY
Раздел:    Корень / Администратору / Система / Диски и файлы / Диагностика и Восстановление после сбоя

Обсуждение [ RSS ]
  • 1.1, pavlinux (ok), 18:35, 16/06/2013 [ответить]  
  • +1 +/



    $ time ./nocache find /media/kernel/linux/
    ...
    real    0m12.242s
    user    0m1.219s
    sys     0m0.868s

    $ time ./nocache find /media/kernel/linux/
    real    0m1.963s
    user    0m1.015s
    sys     0m0.475s


    И че? И где?

     
     
  • 2.2, ABATAPA (ok), 08:29, 17/06/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Под рутом выполните.
     
     
  • 3.4, pavlinux (ok), 15:25, 17/06/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Неа, оно работает только на open(), с правами на запись, ну и соответственно wirte();
      
     
     
  • 4.7, Аноним (-), 13:54, 18/06/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Неа, оно работает только на open(), с правами на запись, ну и
    > соответственно wirte();

    Ну вот дирлист и "не закэшировался" :)

     
  • 2.5, Andrey Mitrofanov (?), 15:33, 17/06/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > И че? И где?

    Очевидно же, имеется в виду влияние на _другие процессы в системе через _вымывание кеша.

    Так что пускай А:{1: сборку ядра; 2: ну, прибумай сам чего-н... полезное! нужное всем!!} + Б:{1: ничего больше; 2: копирование много больших файлов из from/ в to/ с удалением в цикле; 3: то же, что в 2, с _nohache_}. Ну, само собой, всё после холожной перезагрузки, несколько раз, отбрасывая оут-лаяры, и т.п. статистические must-have.

    Воооот... Потом всё это в табличку и на pavlinux.ru -- фороникс слюной захлеюнётся.
    А, да, сравнивать влияние на А: вариантов Б: и писать Умный Вывод в конце.

     
     
  • 3.8, pavlinux (ok), 21:23, 18/06/2013 [^] [^^] [^^^] [ответить]  
  • +/
    >[оверквотинг удален]
    > _вымывание кеша.
    > Так что пускай А:{1: сборку ядра; 2: ну, прибумай сам чего-н... полезное!
    > нужное всем!!} + Б:{1: ничего больше; 2: копирование много больших файлов
    > из from/ в to/ с удалением в цикле; 3: то же,
    > что в 2, с _nohache_}. Ну, само собой, всё после холожной
    > перезагрузки, несколько раз, отбрасывая оут-лаяры, и т.п. статистические must-have.
    > Воооот... Потом всё это в табличку и на pavlinux.ru -- фороникс слюной
    > захлеюнётся.
    > А, да, сравнивать влияние на А: вариантов Б: и писать Умный Вывод
    > в конце.

    Митрофаныч, обсуждение переплыло в житхаб, тут уже устарелые новости!
    Будем мутить некэширование dirent, там чувак жаловался, что на 4 мегах оперативки,
    рекурсивный обход 200 мильонов файлов это жопа для кэша!

     
  • 2.6, Аноним (-), 12:41, 18/06/2013 [^] [^^] [^^^] [ответить]  
  • +/
    real    0m12.242s
    real    0m1.963s
     
  • 2.9, Павел Одинцов (?), 23:39, 11/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Полезно, спасибо!
     

  • 1.3, A_n_D (ok), 10:03, 17/06/2013 [ответить]  
  • +/
    Спасибо за инфу.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру