Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
treex:api-implementation [2015/12/08 21:31] popel |
treex:api-implementation [2015/12/11 11:06] popel |
||
---|---|---|---|
Line 23: | Line 23: | ||
Když dám stringy/ | Když dám stringy/ | ||
- | perl -MDevel:: | + | |
- | perl -MDevel:: | + | perl -MDevel:: |
- | perl -MDevel:: | + | perl -MDevel:: |
- | Reference zabírá stejně jako int. | + | Reference |
Z hlediska rychlosti by bylo lepší ukládat přímo referenci na string (místo intu, kterým by se pak muselo indexovat pole). | Z hlediska rychlosti by bylo lepší ukládat přímo referenci na string (místo intu, kterým by se pak muselo indexovat pole). | ||
Ušetřil bych 32 bajtů na každém stringovém atributu (a pokud by měl ten string víc než 15 znaků, tak ještě víc) a navíc bych potřeboval paměť pro slovník, která je ale (díky zipfovskému rozdělení lemmat, na větších dokumentech) zanedbatelná. | Ušetřil bych 32 bajtů na každém stringovém atributu (a pokud by měl ten string víc než 15 znaků, tak ještě víc) a navíc bych potřeboval paměť pro slovník, která je ale (díky zipfovskému rozdělení lemmat, na větších dokumentech) zanedbatelná. | ||
Line 36: | Line 36: | ||
Je dobré testovat i celkovou paměť virtuální i resident: | Je dobré testovat i celkovou paměť virtuální i resident: | ||
- | perl -MDevel:: | + | |
- | | + | 96277560 |
VSZ | VSZ | ||
- | 292780 271456 270416 | + | |
Zde je vidět, že Devel:: | Zde je vidět, že Devel:: | ||
+ | |||
+ | ==== Benchmark Perlích accessorů ==== | ||
+ | Zápis i čtení | ||
+ | LV V::Magic H 64759/ | ||
+ | LV V::Magic A 74649/ | ||
+ | LV Sentinel H | ||
+ | LV Sentinel A | ||
+ | Moose 1155163/ | ||
+ | object H | ||
+ | object A | ||
+ | LV C:: | ||
+ | Mouse 3111529/ | ||
+ | LV C:: | ||
+ | C:: | ||
+ | Moops 3688969/ | ||
+ | Moo 3738065/ | ||
+ | O:: | ||
+ | C:: | ||
+ | hash | ||
+ | array 5386997/ | ||
+ | |||
+ | Zápis atributu | ||
+ | H-lv-check-sentinel | ||
+ | A-lv-check-sentinel | ||
+ | A-set-check-perl | ||
+ | H-set-check-perl | ||
+ | --- | ||
+ | H-set-lemma-perl | ||
+ | A-set-lemma-perl | ||
+ | A-lv-lemma-perl | ||
+ | H-lv-lemma-perl | ||
+ | --- | ||
+ | A-set-lemma-xs | ||
+ | H-set-lemma-xs | ||
+ | H-lv-lemma-xs | ||
+ | A-lv-lemma-xs | ||
+ | --- | ||
+ | H-direct | ||
+ | A-direct | ||
+ | |||
+ | Čtení atributu: | ||
+ | h-get_lemma_perl | ||
+ | a-get_lemma_perl | ||
+ | h-lv_lemma_perl | ||
+ | a-lv_lemma_perl | ||
+ | --- | ||
+ | h-lv_lemma_xs | ||
+ | a-lv_lemma_xs | ||
+ | h-get_lemma_xs | ||
+ | a-get_lemma_xs | ||
+ | --- | ||
+ | h-direct | ||
+ | a-direct | ||
+ |