[ Skip to the content ]

Institute of Formal and Applied Linguistics Wiki


[ Back to the navigation ]

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision Both sides next revision
treex:api-implementation [2015/12/11 11:06]
popel
treex:api-implementation [2015/12/11 11:09]
popel
Line 27: Line 27:
   perl -MDevel::Size=:all -E 'my $s="s"; say total_size {map {$_=>\$s} 1..1_000_000}'# ref     96M   perl -MDevel::Size=:all -E 'my $s="s"; say total_size {map {$_=>\$s} 1..1_000_000}'# ref     96M
  
-Reference v Perlu zabírá stejně jako int (v céčku na 64bitech má typicky pointer 8 bajtů, int 4 bajty a long long int 8 bajtů, což je vše samozřejmě mnohem míň než v Perl).+Reference v Perlu zabírá stejně jako int, a to těch 24 až 32 bajtů (v céčku na 64bitech má typicky pointer 8 bajtů, int 4 bajty a long long int 8 bajtů, což je vše samozřejmě mnohem míň než v Perlu).
 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á.

[ Back to the navigation ] [ Back to the content ]