Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Strony: 1
Witam.
Chciałbym przenieść /tmp do ramdysku wraz z cache'em przeglądarki firefox by oszczędzić "oranie" dysku.
1) Odnośnie /tmp to po zmianie w pliku fstab zauważyłem że /tmp w ramie zajmuje w porywach do 100KB co wydaje mi się wartością śmiesznie małą i odnosze wrażenie że coś poknociłem
wycinek z df -k
System plików rozm. użyte dost. %uż. zamont. na /dev/sda5 220G 10G 199G 5% / tmpfs 2,0G 111K 2,0G 1% /tmp tmpfs 792M 4,0K 792K 1% /run/user/116 tmpfs 792M 28K 792K 1% /run/user/1000
w tym czasie odpalony był firefox z ok 10 katami w tym youtube i oczywiście terminal
tmp przeniesione do ramdysku za pomoca fstab
<file system> <mount option> <type> <options> <dump> <pass> tmpfs /tmp tmpfs noexec,nosuid,size=2G 0 0
czy to poprawna konfiguracja ? jakiś krok został przeze mnie pominięte ? bo ta wartosć tmo o wadze 111KB wydaje mi się podejrzanie mała.
2) Jeśli chodzi o cache firefoxa to pamięć podręczna wsadzona do ram według poradnika https://www.8px.pl/przyspieszamy-firefox-a-cache-w-pamieci-ram/
ale firefox, w zasadzie dodatek do firefoxa dalej pokazuje użycie przestrzeni ram i przestrzeni dysku (w tym przypadku po 91,6MB ramu i dysku) https://zapodaj.net/d83ae41388b17.bmp.html
Kiedy powracam do ustawień fabrycznych firefoxa dodatek pokazuje zajętość pamięci ale tylko dysku a nie ramu czyli prawidłowo a po zmianach z linka takie dziwne rzeczy się dzieją.
Ma Ktoś z forumowiczów jakiś pomysł jak to sprawdzić czy faktycznie po modyfikacji configa firefoxa cache leci do ramu i do dysku czy może tylko do ramu a dodatek pokazuje bzdury i się myli ?
3) Ostatnie pytanie. Czy jeśli w fstab mam przy partycjach dopisaną opcje discard
<file system> <mount option> <type> <options> <dump> <pass> UUID=81ccg135-a212-41v4-9f6a-9904e6ca0f2f / ext4 discard,errors=remount-ro 0 1 UUID=2093a947-8803-467a-b34f-ac2f55cff81a /boot ext4 discard,defaults 0 2
to czy w takim wypadku muszę jeszcze korzystać z polecenia trim ręcznie (ew cron) raz na jakiś czas czy discart załatwia sprawe trimowania co jakiś czas ?
aha bym zapomniał: Debian 8.7 z kernelem 3.16 na lapku z jednym dyskiem
Pozdrawiam.
Offline
Firefox cache trzyma w ~/.cache/mozilla/ , zatem podlinkuj sobie ten katalog do /tmp/ i będziesz miał go w RAM. Możesz sobie nawet wydzielić kawałek pamięci operacyjnej i podmontować go w to wskazane miejsce.
Ostatnio edytowany przez morfik (2017-01-30 18:55:37)
Offline
Dzięki za odpowiedź morfik. A możesz mi rozjaśnić sprawę "ręcznego" trimowania a dopisania opcji discard do fstab
Offline
Jak zrobiłeś wszystko prawidłowo z tego linka to masz cache Firefoxa w RAM-ie. Sprawdź w pasku adresu Firefoxa about:cache
Ostatnio edytowany przez jawojx (2017-01-30 22:15:51)
Offline
jawojx napisał(-a):
Jak zrobiłeś wszystko prawidłowo z tego linka to masz cache Firefoxa w RAM-ie. Sprawdź w pasku adresu Firefoxa about:cache
about:cache wygląda tak jakby dysk i ram były w użyciu bo storage in use jest takie samo w ram i disk zaś w storage disc location pisze ze tylko ram
memory Number of entries: 5455 Maximum storage size: 800000 KiB Storage in use: 158786 KiB Storage disk location: none, only stored in memory List Cache Entries disk Number of entries: 5455 Maximum storage size: 800000 KiB Storage in use: 158786 KiB Storage disk location: none, only stored in memory List Cache Entries appcache Number of entries: 0 Maximum storage size: 512000 KiB Storage in use: 0 KiB Storage disk location: /media/ramdisk/OfflineCache
Offline
Przy dysku tak samo jak i przy ramie jest informacja że nic nie jest przechowywane na dysku tylko wszystko jest w pamięci. Zobacz że nawet wielkość przechowywanych plików jest taka sama.
only stored in memory = tylko przechowywane w pamięci
A i jeszcze. Jeżeli jeszcze chcesz trzymać cały profil Firefoxa w pamięci RAM, to do tego lepsze jest profile-sync-daemon niż cache do ramdysku.
Ostatnio edytowany przez jawojx (2017-01-30 23:58:26)
Offline
Ok dzięki za porady jawojx :) ale myśle że sam cache w ram na ten czas mi starczy. A odnośnie discart i trim podpowie ew. rozjaśni mi ktoś te kwestie ?
Offline
Cały temat był w twoim wcześniejszym wątku i wydaje mi się że wszystko już było. Ja mam takie opcje dodane do fstab discard,noatime,commit=600, czyli discard mam.
Nie bardzo wiem co jeszcze chcesz wiedzieć, czy trim działa ?
Co do działania trim, to pokaż:
ls -l /etc/systemd/system | grep fstrim
systemctl status fstrim.timer
z roota sprawdź czy trimuje.
fstrim --verbose --all
Jeszcze szybkość odczytu bym zobaczył.
Sprawdź z roota.
hdparm -t /dev/sdx #<-- za x oczywiście twoja litera dysku SSD
Ostatnio edytowany przez jawojx (2017-01-31 11:44:28)
Offline
ls -l /etc/systemd/system | grep fstrim dał wynik:
-rw-r--r-- 1 root root 91 sty 26 14:53 fstrim.service -rw-r--r-- 1 root root 174 sty 26 14:53 fstrim.timer
następnie systemctl status :
● fstrim.timer - Discard unused blocks once a week Loaded: loaded (/etc/systemd/system/fstrim.timer; enabled) Active: active (waiting) since wto 2017-01-31 16:48:35 CET; 10min ago Docs: man:fstrim
natomiast hdparm -t /dev/sda dał chyba marny wynik:
/dev/sda: Timing buffered disk reads: 772 MB in 3.01 seconds = 256.83 MB/sec
Dysk to GOODRAM iridium pro 240gb i w różnych tbenchmarkach wynik osiągał ok 500mb/s
ale w przypadku hdparam nie mam punktu odniesienia
Ostatnio edytowany przez keermiit (2017-01-31 17:26:01)
Offline
Jak widać trim działa. Co do
Dysk to GOODRAM iridium pro 240gb i w różnych tbenchmarkach wynik osiągał ok 500mb/s
ale w przypadku hdparam nie mam punktu odniesienia
to jak tam jest SATA 3 to słabo, ale może masz tam SATA 2 na płycie, to nie wiele da się zrobić. Pokaż z roota:
hdparm -I /dev/sdx | grep Transport #<-- za x oczywiście twoja litera dysku SSD
Ostatnio edytowany przez jawojx (2017-01-31 17:52:12)
Offline
jawojx napisał(-a):
Jak widać trim działa. Co do
Dysk to GOODRAM iridium pro 240gb i w różnych tbenchmarkach wynik osiągał ok 500mb/s
ale w przypadku hdparam nie mam punktu odniesieniato jak tam jest SATA 3 to słabo, ale może masz tam SATA 2 na płycie, to nie wiele da się zrobić. Pokaż z roota:
Kod:
hdparm -I /dev/sdx | grep Transport #<-- za x oczywiście twoja litera dysku SSD
Wynik :
Transport: Serial, ATA8-AST, SATA 1.0a, SATA II Extensions, SATA Rev 2.5, SATA Rev 2.6, SATA Rev 3.0
Po hdparam -Tt /dev/sda :
Timing cached reads: 6664 MB in 2.00 seconds = 3333.37 MB/sec Timing buffered disk reads: 758 MB in 3.00 seconds = 252.54 MB/sec
Ostatnio edytowany przez keermiit (2017-01-31 18:13:11)
Offline
No masz na płycie tylko kontroler SATA II. Przełącznik T z pamięci dysku, przełącznik t z dysku, nas interesuje tylko t. Mogłoby być trochę więcej, ale to jest normalny odczyt na kontrolerze SATA II tak w przedziale 250-280, niby powinno być ze 300 tyle teoria, ale ja na SATA II nigdy tyle nie widziałem.
Pokaż w jakim czasie uruchamia się system.
systemd-analyze
Ostatnio edytowany przez jawojx (2017-01-31 18:40:49)
Offline
Czas startu
Startup finished in 2.836s (kernel) + 4.536s (userspace) = 7.373s
Ogólnie z czasu startu i odpalania aplikacji jestem mega zadowolony aczkolwiek priorytetem była dla mnie niezawodność.
Może skusze się jeszcze na dopisanie noatime do fstab i poczytam troche o commit =)
ale mam wrażenie że system startuje ułamek dłużej niż wynik 7.3. tak licząc w myślach to do 9 sekund dobiłem
ale kwarc w mojej głowie kiepsko drga.
Ostatnio edytowany przez keermiit (2017-01-31 22:52:42)
Offline
Siedem czy dziewięć to mała różnica ważne że startuje tak jak powinien z SSD szybko i bez problemów które odbiły by się na czasie uruchomienia. Czyli wiesz robi noatime, a nie wiesz nic o commit.
Cytat z manuala:
commit=nrsec
Sync all data and metadata every nrsec seconds. The default value is 5 seconds
Czyli czas po którym dane zostaną uaktualnione/zapisane/synchronizowane na dysk, domyślnie jest 5 s. Ja mam 600 = 10 minut, ale ja tak ustawiam jak mam UPS lub baterie w laptopie. Ryzyko takie że jak się coś sypnie, nie ma danych z ostatnich paru minut i tyle. Jak nie masz częstych braków w dostawie energii ryzyka nie ma dużego. Musisz wybrać sam z tym że domyślne 5s. przy SSD to przesada jak dla mnie.
Możesz zmienić jeszcze planistę/schedulera na taki który lepiej sobie radzi SSD. Ja mam ustawiony deadline. Zobacz co masz ustawione:
cat /sys/block/sdx/queue/scheduler #<-- za x oczywiście twoja litera dysku SSD
Więcej o tym tu:
https://wiki.debian.org/SSDOptimization#Low-Latency_IO-Scheduler
No nie wyśpię się, zagapiłem się.
Offline
noop deadline [cfq]
Oooo dzięki za inf. szukałem i dodatkowo mam tu jeszcze od Ciebie informacje na temat commit. Super. A co do noatime co nie wiem czy to dobry pomysł czy nie. N ten czas zostawie sobie noatime a jak okaże się że to bruzdzi w systemie w niektórych apkach to sie wyłączy. Nie wiem czy monitorowanie znacznika czasu dostępu do pliku będzie kłopotem. Chyba że okaże się że data modyfikacji też będzie nieuaktualniana to wtedy się poważniej nad tym zastanowię.
Hmmm samo otwieranie przykładowego pliku *.sh nie zmienia we właściwościach pliku daty dostępu do do niego (odczytania).
Dostęp: czw, 26 sty 2017, 17:29:31 Zmieniono: czw, 26 sty 2017, 17:28:58
Natomiast po edycji przykładowego pliku *.sh uaktualnia się czas zmiany i tenże czas zmiany jest równy modyfikacji
Dostęp: śro, 1 lut 2017, 19:45:47 Zmieniono: śro, 1 lut 2017, 19:45:47
Czyli noatime działa tak jak wywnioskowałem po lekturach. Yyyyyyy chyba =D
Ostatnio edytowany przez keermiit (2017-02-01 19:55:43)
Offline
A co masz źle rozumieć, dobrze wnioskowałeś. Uaktualniany jest czas zmiany, a nie czas odczytu. Można, nie trzeba zmieniać. Ja mam i nie było problemów.
Na działającym systemie możesz zmienić scheduler i sprawdzić co ci bardziej odpowiada. Masz trzy dostępne noop deadline cfq. Już wiesz że cfq masz jako domyślny.
Z roota:
echo deadline > /sys/block/sdx/queue/scheduler #<-- za x oczywiście twoja litera dysku SSD
O schedulerze możesz poczytać tu:
https://ex-android.blogspot.com/2016/02/io-schedulers-poradnik.html
Wady które tam są opisane przy deadline, ja nie miałem tych zachowań.
Jak i na Wikipedii coś też jest:
https://pl.wikipedia.org/wiki/Dyspozytor
Doczytałem coś z początku wątku.
1) Odnośnie /tmp to po zmianie w pliku fstab zauważyłem że /tmp w ramie zajmuje w porywach do 100KB co wydaje mi się wartością śmiesznie małą i odnosze wrażenie że coś poknociłem
Co do 2GB dla ramdysku dla tmp, to może być mało jak np. będziesz kopiował DVD ( można oczywiście zmienić tmp dla programu ). To że przydzielasz tyle, pewnie już to zauważyłeś, nie zabiera tyle miejsca w pamięci. Dopiero jak coś tam skopiujesz zobaczysz że RAM-u zabrało. Ale może nic nie robisz na dużych plikach to i to jest aż nadto. Możesz zrobić tak:
dd if=/dev/zero of=/tmp/1G_test bs=1M count=1000
A sprawdzić zajętą pamięć potem usunąć i sprawdzić jeszcze raz.
Offline
Hmm
sudo echo deadline > /sys/block/sda/queue/scheduler bash: /sys/block/sda/queue/scheduler: Brak dostępu
hmmm coś z usdoers ??
z racji mojej niemalże zerowej koncentracji jutro się temu przygląne dokładniejj
p.s dzięki jawojx za wskazówki
heh już ogarnięte. Doinformuje się w kwestii schedulera i zobaczymy narazie domyślny pozostaje cfq
noop deadline [cfq]
POZDRAWIAM
Ostatnio edytowany przez keermiit (2017-02-01 22:31:36)
Offline
Strony: 1