Linux vs. FreeBSD

Cejka Rudolf cejkar na kazi.dcse.fee.vutbr.cz
Pondělí Březen 29 16:50:33 CEST 1999


Jan Kasprzak <kas na INFORMATICS.MUNI.CZ> wrote:
> Martin Kavalec wrote:
> : > No ja bych pridal jeste jednu vec, ktera mi na Linuxu
> : > vadi, ext2 neni spatny FS,ale nekdy je s dovolenim
> : > k zlosti. Mam pocit, ze snad SGI uvadi, ze
> : > neni problem pracovat s tisici (miliony) soubory
> : > v jednom adresari. Nezkousel jsem to, ale kdyz
> : > obcas prijde trochu vic posty a dam ls pres /var/spool/mqueue
> : > s vice jak 20 000 soubory,muzu si jit dat kafe.

Jen "ls" nebo "ls -l"? "ls" se mi jevi jako OK, ale "ls -l" des a hruza.

> : 
> : Nemuze to byt tim, ze ls ty soubory take radi podle abecedy?
> : Neboli, je ls -U take tak pomale?
> : 
> 	Je to tim, ze ext2, ufs, efs a vubec vsechny klasicke filesystemy
> pouzivaji linearne organizovane adresare. Pak je treba vytvareni souboru
> dost pomale (aspon pokud adresar neni v directory cache), protoze se musi

Uff uff. Tohle ale preci s "ls" nijak nesouvisi. Pro sekvencni cteni
adresarovych polozek je linearni struktura takrka idealni (pokud
abstrahuji od nestastneho razeni).

Podivejte se do archivu teto konference - kdysi jsem sem posilal
srovnavaci vysledky pro Linuxove jadro 2.0.34 a 2.1.125 (a FreeBSD).
2.2.1 se mi zatim chovalo stejne spatne jako 2.1.125, o novejsich jeste
nevim. Ve zkratce: Samotny prikaz "ls" byl v pohode a i pro 10000
souboru v jednom adresari byla doba provadeni okolo 1 s vcetne razeni.
Prikaz "ls -l" pro 10000 souboru na jadre 2.0.34 mi trval okolo 6 s,
ale na jadre 2.1.125 uz skoro 30 s (5krat vice!). Pokud se navic
podivate na prubehy, u 2.0.34 byla zavislost na poctu souboru skoro
linearni, ale u 2.1.125 snad dokonce exponencialni (nevim - proste
nejaky odporny nelinearni prubeh), takze pro vice souboru nez 10000 lze
ocekavat jeste horsi rozdily. Sice se tu psalo, ze pri opakovanych
"ls -l" tech 30 s muze klesnout na velmi male hodnoty, je ale nejspis
potreba mit hodne velkou pamet a nejak zabranit tomu, aby data z cache
nebyla nikdy vytlacena (na mych 32 MB RAM veskere opakovane pokusy trvaly
stejne dlouho okolo 30 s).

Takze problem bych hledal spis primo v jadre nebo v organizaci
"adresarova polozka je (nazev, i-uzel) a i-uzel je nekde uplne jinde..."
a nikoli v diskove organizaci adresare.

> nejdriv vsechno nacist, aby se zjistilo, jestli tam soubor tohoto jmena
> uz neni. No a tomu lze odpomoci napriklad stromove organizovanymi adresari
> (reiserfs, xfs, ext3).

--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--=--
Rudolf Cejka  (cejkar na dcse.fee.vutbr.cz;  http://www.fee.vutbr.cz/~cejkar)
Technical University of Brno, Faculty of El. Engineering and Comp. Science
Bozetechova 2, 612 66  Brno, Czech Republic


Další informace o konferenci Linux