]> mj.ucw.cz Git - libucw.git/blob - debug/sorter/NOTES
Moved tests related to the sorter to debug/sorter/.
[libucw.git] / debug / sorter / NOTES
1 Users of lib/sorter.h:  (WARNING: Obsolete, corresponds to v3.9 or even v3.8)
2
3 centrum/indexer/patch-index.c           u32             oid
4 gather/daemon/expire.c                  variable        complex
5 gather/daemon/gc.c                      variable        complex
6 gather/daemon/gc.c                      variable        hash
7 gather/shepherd/shep-cleanup.c          5 bytes         oid                             4 min
8 gather/shepherd/shep-cleanup.c          fixed           hash                            35 min
9 gather/shepherd/shep-export.c           fixed           oid                             9 min
10 gather/shepherd/shep-export.c           fixed           weight
11 gather/shepherd/shep-plan.c             fixed           weight + oid                    in mem
12 gather/shepherd/shep-plan.c             fixed           site ptr + complex              in mem
13 gather/shepherd/shep-record.c           fixed           reducible to int                in mem
14 gather/shepherd/shep-record.c           fixed           oid                             in mem
15 gather/shepherd/shep.c                  fixed           oid
16 gather/shepherd/shep.c                  fixed           hash
17 gather/shepherd/shep-cork.c             fixed           hash + int                      20 min
18 gather/shepherd/shep-feedback.c         fixed           hash
19 gather/shepherd/shep-merge.c            fixed           hash + int
20 gather/shepherd/shep-merge.c            fixed           complex (probably can create monotone hashes for that)  38 min
21 gather/shepherd/shep-recover.c          fixed           fp + more
22 gather/shepherd/shep-select.c           fixed           weight (non-triv) + hash        21 min
23 indexer/backlinker.c                    8 bytes         int
24 indexer/feedback-gath.c                 fixed           hash + complex                  7 min
25 indexer/fpsort.c                        fixed           hash + oid                      9 min
26 indexer/keywords.c                      fixed           complex multi-pass
27 indexer/labelsort.c                     variable        oid + complex                   2:00
28 indexer/mergesigns.c                    fixed           complex, but has hashes         1:33
29 indexer/mergesums.c                     fixed           hash
30 indexer/mkgraph.c                       complex         complex (with melding) (probably can be replaced by sorting edges and melding afterwards)       34 min
31 indexer/psort.c                         fixed           hash + oid                      2 min
32 indexer/reftexts.c                      fixed           hash
33 indexer/reftexts.c                      fixed           via merges                      3:30
34 indexer/reftexts.c                      fixed           oid + int
35 indexer/resolve.c                       fixed           hash                            1:00 + 3:45
36 indexer/resolve.c                       fixed           masked int                      22 min
37 indexer/ssort.c                         variable        hash (with melding)             1:30
38 indexer/wsort.c                         variable        id (with melding)               7:20
39 lang/lang-tables.c                      fixed           complex
40 lang/stem-dict-gen.c                    variable        hash (with melding)
41
42 Users of lib/arraysort.h on big arrays:
43
44 indexer/chewer.c                        fixed           hash + others
45 indexer/chewer.c                        u32             id
46 indexer/lexfreq.c                       ptr             indirect int
47 indexer/lexorder.c                      ptr             complex
48 indexer/lexorder.c                      ptr             complex
49 indexer/lexsort.c                       ptr             complex
50
51 Interface:
52
53 Key structure           fixed aligned / fixed unaligned / variable
54 Data structure          none / given by data_len(key) function
55 Key I/O                 default (breadb/bwriteb or attempt direct I/O) / user-defined
56 Data I/O                always built-in
57 Input                   file / fastbuf / generator function
58                         + delete input ASAP flag
59 Output                  file / fastbuf / consumer function
60 Key comparison          comparison function
61                         monotone hash function
62                         preliminary comparison function (?)
63 Key merging             none / guaranteed unique / user-defined merge function:
64                                 multi-way merge in memory
65                                 2-way merge on fastbufs