Hlavní navigace

Názor k článku Optimalizace práce s SSD disky v Linuxu od Andrej Podzimek - Pokud chci rychlé čtení malých bloků, koupím si...

  • Článek je starý, nové názory již nelze přidávat.
  • 2. 5. 2011 17:45

    Andrej Podzimek (neregistrovaný)

    Pokud chci rychlé čtení malých bloků, koupím si spoustu RAM (na žádném stroji nemám pod 8 GB) a zajistím si vhodný preload, který je v té či oné podobě dostupný v podstatě ve všech distribucích.

    Neznám situaci, kdy by čtení malých bloků bylo potřeba neustále. Binárky a knihovny? Ty ošetří RAM a preload. A pokud jde o kompilaci, u které se čte spousta malých souborů, *napřed* se přece rozbalí archiv -- tedy všechny malé soubory se téměř sekvenčně zapíší na disk a především zůstanou i v RAM, protože jí je prostě dost. Takže ani tady není důvod ke čtení spousty malých bloků. Nějak mi tedy uniká důvod, proč mi má záležet na údajně rychlé odezvě SSD.

    Odezva SSD je rychlá v prvních měsících. Jakmile se vyskytnou první vadné bloky (což na sebe nenechá dlouho čekat), nastane naprosté zoufalství s přístupovou dobou řádově desítek sekund k některým důležitým souborům. A nedá se s tím nic udělat, kromě vyhození SSD oknem. SSD tedy není za všech okolností rychlejší než disky...

    Flashdisk mi už selhal tolikrát, že bych ho v podstatě nechtěl ani zadarmo jako reklamní předmět. A to jsem na něm nekompiloval kernel. :-) Stačí tam jen párkrát nakopírovat nějaký hodně košatý adresářový strom. Wear-leveling pak totálně selže a poškozené bloky způsobí, že se z toho nedá pořádně číst a rychlost zápisu klesne téměř na nulu. Jenže místo aby ten flashdisk nějak rozumně hlásil „ano, jsem v háji, reklamuj mě“, jen mlčí a neříká nic. Uživatel může například půl dne čekat a spekulovat, zda ta data ještě uvidí či nikoliv. Takovou technologii zkrátka používat nechci.

    Karty ve foťáku v podstatě slouží k přidávání souborů velmi podobné velikosti, které se ve velké většině případů po přidání nepřepisují. Věřím, že u nich wear-leveling funguje o něco lépe a vydrží tedy déle.