Rychlost v Solarisu a v Linuxu

Hana Skoumalova Hana.Skoumalova na ff.cuni.cz
Pondělí Prosinec 11 18:08:12 CET 2000


Takovýhle zájem jsem ani nečekala :-).

Tak tedy pár upřesnění.

Linux:
Pentium II 90 MHz
32 MB RAM
swap 64 MB
kernel 2.2.6
gcc 2.7.2.3

Solaris:
Sparc Ultra 5
192 MB RAM
swap 162 MB
Solaris 2.7
gcc 2.8.1

Teď jsem provedla nějaké testy:

Srovnání rychlosti se zápisem
             na disk              do /dev/null
Linux        12 s                 12 s 
Solaris       6 s                  4 s

Předtím jsem to bohužel změřené neměla, nicméně zdálo se mi, že ten
Linux byl svižnější (na tom těžce neoptimalizovaném kódu). Když jsem ho
ale ještě dál zašmodrchala, tak se chudák Linux zadřel.

Já se radši nebudu moc chlubit, jak ten kód vypadal před vylepšením, ale
pokusím se vyložit, v čem spočívá problém:

Mám slovník se slovesy a k těm slovesům jsou přiřazeny valenční rámce -
to znamená doplnění, která dané sloveso může mít. Vypadá to třeba takto:

adresovat
<v>hPc3-hTc4,hTc4,hPc4r{na},hPc4r{pro},hTc4-hPc4r{na},hTc4-hPc4r{pro}

<v> znamená začátek rámce
Přesný význam značek jako hPc3 teď není důležitý, ale důležité je, že
jednotlivé rámce jsou odděleny čárkou a jednotlivé členy uvnitř rámce
jsou odděleny pomlčkou. Takže sloveso adresovat může mít v rámci členy
hPc3, hTc4, hPc4r{pro} a hPc4r{na}, ale jenom v určitých kombinacích.
Nejobtížnější část mého programu je "přerovnání" vstupu tak, aby se
zjistilo, které členy jsou vzájemně variantní. Výsledek pak vypadá
takto:

adresovat:      [0]:hTc4; [1]:[hPc3|hPc4r{na}|hPc4r{pro}];

Znamená to, že sloveso adresovat má v rámci člen hTc4, který je doplněn
jedním z trojice hPc3, hPc4r{na} nebo hPc4r{pro}. Ještě by tam mělo být
vyznačeno, které členy jsou nepovinné, ale to přijde až později.

Abych dostala kýžený výsledek, vyrábím různé tabulky a pomocí bitových
operátorů zjišťuji, co je podmnožinou čeho, co má neprázdný průnik, atd.
Data v různém stadiu zpracování si ukládám do různých (až
trojrozměrných) polí a když se pak mají taková pole vynulovat, chvíli to
trvá. Teď už to mám myslím si dost rychlé, takže se zase budu věnovat
lingvistické náplni programu.

Hanka
-- 
Hana Skoumalova     Institute of Theoretical & Computational Linguistics
                                                      Charles University
tel: +420 2 24491858                          Celetna 13, 110 00 Praha 1
http://utkl.ff.cuni.cz/~skoumal                           Czech Republic


Další informace o konferenci Linux