Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: Noatime instellen onverstandig?  (gelezen 4245 keer)

Noatime instellen onverstandig?
« Gepost op: 2010/05/05, 16:19:30 »
Citaat
In a recent lkml thread, Linus Torvalds was involved in a discussion about mounting filesystems with the noatime option for better performance, "'noatime,data=writeback' will quite likely be *quite* noticeable (with different effects for different loads), but almost nobody actually runs that way." He noted that he set O_NOATIME when writing git, "and it was an absolutely huge time-saver for the case of not having 'noatime' in the mount options. Certainly more than your estimated 10% under some loads." The discussion then looked at using the relatime mount option to improve the situation, "relative atime only updates the atime if the previous atime is older than the mtime or ctime. Like noatime, but useful for applications like mutt that need to know when a file has been read since it was last modified." Ingo Molnar stressed the significance of fixing this performance issue, "I cannot over-emphasize how much of a deal it is in practice. Atime updates are by far the biggest IO performance deficiency that Linux has today. Getting rid of atime updates would give us more everyday Linux performance than all the pagecache speedups of the past 10 years, _combined_." He submitted some patches to improve relatime, and noted about atime:

    "It's also perhaps the most stupid Unix design idea of all times. Unix is really nice and well done, but think about this a bit: 'For every file that is read from the disk, lets do a ... write to the disk! And, for every file that is already cached and which we read from the cache ... do a write to the disk!'"

Het is mogelijk om in fstab de optie noatime op te nemen. Dit betekend dat niet wordt bijgehouden wanneer bestanden zijn benaderd (wel wanneer ze zijn veranderd). Dat scheelt flink snelheid bij het lezen van bestanden. Als deze optie niet geactiveerd is moet namelijk voor ieder bestand dat gelezen wordt een schrijfactie ondernomen worden.

Maar... er schijnen applicaties te zijn die de accesstime gebruiken. Iemand enig idee welke dit zijn, en of normale thuisgebruikers deze applicaties ook gebruiken?

Offline Johan van Dijk

  • Administrator
    • johanvandijk
Re: Noatime instellen onverstandig?
« Reactie #1 Gepost op: 2010/05/07, 13:11:22 »
Voor / zou ik gewoon de standaard relatime gebruiken. Zo loop je het minste risico.

Heb je een aparte partitie voor bijv. data, dan zou je de noatime optie wel kunnen overwegen voor die partitie.

Re: Noatime instellen onverstandig?
« Reactie #2 Gepost op: 2010/05/07, 13:22:36 »
Ik heb net nog even zitten googlen hierop, en vond zowaar iets hierover in onze wiki:

http://wiki.ubuntu-nl.org/community/SSD#noatime

Voor ssd schijven wordt geadviseerd om (ook voor de root) noatime te gebruiken in plaats van relatime.

Niks boven een real life test. Zal het eens proberen. :)

Re: Noatime instellen onverstandig?
« Reactie #3 Gepost op: 2010/05/07, 13:38:45 »
Ok, so far so good. Ik heb al mijn bestandssystemen noatime gemaakt. Dus root, home, ecryptfs data partitie, en een drietal lvm luks encrypted partities (/etc /var /tmp). Mail werkt gewoon, net een virtuele machine opgestart werkt ook zonder problemen. Als er problemen komen meld ik het. :) Ik vind het idee wel aardig dat niet voor iedere leesactie ook geschreven hoeft te worden op mijn harde schijf.

Offline Johan van Dijk

  • Administrator
    • johanvandijk
Re: Noatime instellen onverstandig?
« Reactie #4 Gepost op: 2010/05/07, 16:42:48 »
Als je relatime gebruikt, wordt er ook niet geschreven bij iedere leesactie. Dat scheelt al heel veel in vergelijking met atime.
Ik vraag me dus af hoeveel het in de praktijk nou echt scheelt of je noatime of relatime gebruikt.

Re: Noatime instellen onverstandig?
« Reactie #5 Gepost op: 2010/05/07, 17:48:35 »
Ik zou ook niet weten wat precies hoe groot het verschil is, maar het zou best wel eens aardig kunnen schelen.

Ik heb even naar wat praktijkgetallen gezocht:
http://thunk.org/tytso/blog/2009/03/01/ssds-journaling-and-noatimerelatime/

Uit deze gegevens de hoeveelheid geschreven data vergeleken tussen noatime en relatime bij drie taken:

noatime  relatime  Verschil  
git clone  367366,699,89%
make  207,6216,8104,43%
make clean  6,4513,34206,82%

Dat laat zien dat de verschillen tussen hoeveelheid geschreven data afhankelijk van de taak flink kunnen oplopen tussen relatime en noatime. En dan gaat het nog alleen over schrijfacties. Als ik de onderstaande quote mag geloven kost relatime naast schrijven ook nog meer leesacties:

Citaat
Relatime seems to be wasteful of both IO resources _and_ CPU cycles.
Instead of performing a single IO operation (as atime does), relatime
performs at least three IO operations and three CPU-dependent
operations:

1) a read IO operation to find out the old atime
2) a read IO operation to find out the old ctime
3) a read IO operation to find out the old mtime
4) Comparison of "old atime is <= than mtime/ctime"
5) Find out current time
6) Comparison of "current time minus old atime is > X"

Samen met het verschil in schrijfacties tussen relatime en noatime zou het best wel eens flink kunnen schelen denk ik bij taken waarbij veel bestanden moeten worden gelezen.

Re: Noatime instellen onverstandig?
« Reactie #6 Gepost op: 2010/05/12, 23:53:43 »
Na een week nog geen probleem tegengekomen. Het lijkt erop dat het voor mijn systeem met "huis, tuin en keuken" software de optie noatime prima werkt.

Offline testcees

  • Documentatieteam
    • testcees
    • www.testcees.nl
Re: Noatime instellen onverstandig?
« Reactie #7 Gepost op: 2010/05/13, 00:24:44 »
Thomas bedankt voor de (mogelijk onbedoelde) review van http://wiki.ubuntu-nl.org/community/SSD :)

Zo te lezen gebruik jij een "normale" magnetische (draaiende) hardeschijf, voor een SSD is een klein bijkomend voordeel dat schrijfacties worden beperkt. Dit kan de levensduur verlengen (we hebben het over tientallen jaren, dus zo'n vaart loopt het ook niet).

Tot op heden heb ik nog geen echt nadeel van de noatime optie opgemerkt bij "huis-tuin-en-keuken" gebruik op mijn root (SSD) partititie.

Anderzijds: de genoemde getallen zijn gekopieerd uit een artikel. Het zal best waar zijn maar kan je het verschil echt merken? Hier niet echt. :|

(maar/en ik voer ook niet dagelijks een make opdracht uit, en beperk me tot "huis-tuin-en-keuken" gebruik)
Klik links bovenin op Documentatie

Offline Pjotr

  • Lid
    • Makkelijke Linuxtips
Re: Noatime instellen onverstandig?
« Reactie #8 Gepost op: 2010/05/13, 00:28:27 »
Ik heb een Acer Aspire One 110 met SSD, die al een jaar vlekkeloos draait op 9.04 (jaah, nog steeds 9.04...) met noatime. Heeft alleen een rootpartitie (waar dus alles op staat) en een swap.

Geen problemen mee gehad, dus, in een praktijkproef van een jaar... Toch ben ik er wat huiverig voor, om noatime op al m'n computers toe te passen. Relatime zal toch ook ergens goed voor zijn? En zou het merkbare prestatiewinst opleveren bij een gewone moderne, snelle harde schijf, bij huis-, tuin- en keukengebruik, wanneer ik 't op noatime zet?

Ik ben erg terughoudend bij aanpassingen van de standaardconfiguratie van Ubuntu, wanneer het niet echt nodig is (bij een SSD is deze ingreep wel nodig, zowel voor de levensduur als voor de snelheid).
« Laatst bewerkt op: 2010/05/13, 00:31:59 door Pjotr »

Re: Noatime instellen onverstandig?
« Reactie #9 Gepost op: 2010/05/13, 01:44:30 »
Ik merk totaal geen snelheidsverschil in de praktijk, en ik adviseer niemand die geen ssd schijf heeft om de noatime optie te gebruiken. Het is niet mijn bedoeling om dit forum onnodig meer werk te verschaffen. :)

Ik ben gewoon wat nieuwsgierig van aard. Als ik een discussie lees waarin mensen die verstand van zaken lijken te hebben melden dat atime wellicht het domste Unix ontwerp idee ooit was (zie citaat in eerste bericht), dan prikkelt me dat, en vraag ik me af waarom we dat nog gebruiken. Als niemand me dat kan uitleggen waarom ik dat nodig zou hebben, dan ga ik proberen of het niet zonder kan. Ook al merk ik qua snelheid geen verschil, toch vind ik het leuk dat mijn systeem nu, gestripped van "misschien wel het stomste Unix ontwerp idee ooit", nog steeds prima werkt. :)

Offline testcees

  • Documentatieteam
    • testcees
    • www.testcees.nl
Re: Noatime instellen onverstandig?
« Reactie #10 Gepost op: 2010/05/13, 12:08:03 »
Ik ben gewoon wat nieuwsgierig van aard.
Voor "nieuwsgierige" mensen kan noatime ook interessant zijn. :)

Mogelijk is dit al bekend: Kies in Nautilus (Locaties) voor Lijstweergave ga naar Beeld -> Zichtbare kolommen. Selecteer Datum benaderd.

Voor partities zonder noatime is per bestand te zien wanneer dit bestand is gebruikt (gelezen). Met noatime geeft deze kolom alleen aan wanneer het bestand is geschreven of gewijzigd (en is gelijk aan de kolom Wijzigingsdatum).
Klik links bovenin op Documentatie

Offline Pjotr

  • Lid
    • Makkelijke Linuxtips
Re: Noatime instellen onverstandig?
« Reactie #11 Gepost op: 2010/05/13, 12:27:06 »
Ik zou me kunnen voorstellen, dat atime (en dus ook relatime) een functie vervult bij de herstelfunctie van EXT3/EXT4. Voor het bestandsdagboek, dus.

Dat zou dan meteen verklaren, waarom noatime al meer dan een jaar prima werkt bij mijn AOA 110 met SSD: de SSD is EXT2 geformatteerd en heeft dus sowieso geen bestandsdagboek.