Wyłącz pamięć podręczną odczytu i zapisu linuksa na partycji

10

Jak mogę wyłączyć pamięć podręczną plików linux na partycji XFS (oba czytają i piszą).

Mamy partycję xfs nad sprzętową macierzą RAID, która przechowuje nasze wideo RAW HD. Większość pędów ma 50-300 gb, więc pamięć podręczna linuksa ma współczynnik trafień 0,001%.

Próbowałem opcji synchronizacji, ale nadal kopiuje pamięć podręczną podczas kopiowania plików.
(około 30x więcej na sesję: P)

/ etc / fstab:

/ dev / sdb1 / video xfs sync, noatime, nodiratime, logbufs = 8 0 1

Używam Debiana Lenny'ego, jeśli to pomaga.

komplementarny
źródło

Odpowiedzi:

6

istnieje rozwiązanie, które idealnie pasuje do Twojego przypadku użycia: http://code.google.com/p/pagecache-mangagement/

Po sprawdzeniu kodu źródłowego:

svn checkout http://pagecache-mangagement.googlecode.com/svn/trunk/ pagecache-mangagement-read-only

kwestia

make
sudo cp *.so /usr/local/lib/
sudo cp *.sh /usr/local/bin/

następnie możesz uruchomić dowolną aplikację

pagecache-mangagement.sh <App>

a aplikacja nie zapełni twoich pamięci podręcznych!

Robert Metzger
źródło
1
Właśnie tego potrzebowałem do innej pracy, ten sam problem. Teraz moje inne programy mogą używać pamięci podręcznej tam, gdzie jest to bardziej przydatne.
komplementuje
6

Nocache narzędzie jest przeznaczone dla podobny cel: zapobieganie poleceń specyficznych od psucia bieżącego bufora cache. Po prostu przygotuj ./nocachesię na polecenie:

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

Zauważ, że podobne narzędzie pagecache-mangagement - narzędzie pozwalające na zarządzanie wykorzystaniem pagecache w dowolnych aplikacjach , jak zauważył rmetzger, jest nadal w takim samym stanie, jak w 2008 roku. Oczywiście może to być dobre lub złe, lub miks :) Nie mam bezpośredniego porównania, ale poprosiłem o to ludzi z nocache

nealmcb
źródło
5

Tego nie da się zrobić czysto. Jeśli wymagają tego w niektórych zastosowaniach to powinny one być modyfikowane, aby przejść O_DIRECTdo ich open(2)połączeń.

Ignacio Vazquez-Abrams
źródło
Pliki są zapisywane / odczytywane za pomocą różnych aplikacji innych firm ... mv, md5sum, samba i tym podobnych. Być może będę w stanie zastąpić niektóre z nich własną aplikacją C w przyszłości ... ale o ile wiem, samba dosnt ma opcję O_DIRECT.
komplementalny
To wydaje się być szafą, którą mogę dostać. Teraz używam O_DIRECT do kopiowania z karty P2 na dysk twardy, a następnie ponownie z karty P2 do md5sum w celu sprawdzenia. To usuwa niepotrzebną połowę pamięci podręcznej, więc jedyne rzeczy, które są buforowanymi plikami wideo na dysku twardym.
komplementuje
2

man raw. Można z tym powiązać surowe urządzenie, które omija pamięć podręczną. Ma pewne ograniczenia. Użyłem go tylko z urządzeniami CD / DVD, więc nie wiem, jak dobrze będzie dla ciebie działać.

Keith
źródło
Czy polecenie raw wiąże divice w sposób, w jaki mogę zamontować moją partycję xfs na / video do użycia z sambą? Dokumentacja i wyniki Google wydają się nieco niejasne.
komplementuje
Nie powinieneś ich mieszać. Myślę, że zamiast tego możesz zamontować nowe surowe urządzenie.
Keith
Dobra, przetestuję to na starym czystym dysku, kiedy będę miał szansę.
komplementuje