Thread

  1. WIP: simple allocator

    Pavel Stehule <pavel.stehule@gmail.com> — 2010-03-15T17:09:59Z

    Hello,
    
    this patch significantly reduces memory usage of ispell dictionaries.
    
    without patch (Czech dictionary, 64bit linux):
    
    cspell: 48816784 total in 5930 blocks; 89496 free (1587 chunks); 48727288 used
      Ispell dictionary init context: 19226672 total in 12 blocks; 1742624
    free (34 chunks); 17484048 used
    
    final:
    cspell: 48816784 total in 5930 blocks; 89496 free (1587 chunks); 48727288 used
    
    46.5 MB (long mem) + 18.3 MB (short mem)
    
    with patch:
    
    cspell: 893584 total in 80 blocks; 11760 free (10 chunks); 881824 used
      Ispell dictionary simple context: 24647364 total in 188 blocks;
    122464 free; 24524900 used
      Ispell dictionary init context: 2482224 total in 3 blocks; 24512
    free (34 chunks); 2457712 used
        Ispell dictionary simple init context: 8259489 total in 63 blocks;
    59570 free; 8199919 used
    final
    cspell: 893584 total in 80 blocks; 11760 free (10 chunks); 881824 used
      Ispell dictionary simple context: 24647364 total in 188 blocks;
    122464 free; 24524900 used
    
    0.85 + 23.5 MB (long mem) + 2.4 + 7.9 MB (short mem)
    
    Regards
    Pavel Stehule