X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;ds=sidebyside;f=lib%2Fsorter%2FTODO;h=f4fe053d8666e01d8f6536b01917fc279c9f4935;hb=19e85513ebea91a53d30be05cb8047d3b6eea526;hp=b0417ad76e5309ae87fdaf4c074745fdb9e552ae;hpb=87b27e3e532a51e97407cd6f54533138d78ebd01;p=libucw.git diff --git a/lib/sorter/TODO b/lib/sorter/TODO index b0417ad7..f4fe053d 100644 --- a/lib/sorter/TODO +++ b/lib/sorter/TODO @@ -4,15 +4,9 @@ o Records of odd lengths. o Empty files. Improvements: -o Alignment? Use of SSE? -o Use radix-sort for internal sorting. -o Parallelization of internal sorting. o Clean up data types and make sure they cannot overflow. (size_t vs. u64 vs. sh_off_t vs. uns) -o Buffer sizing in internal sorters. -o Switching between direct and normal I/O. -o When merging, choose the output file with less runs instead of always switching? -o Implement multi-way merge. -o Mode with only 2-way unification? -o Speed up 2-way merge. -o Speed up radix splitting. -o A debug switch for disabling the presorter. +o Switching between direct and normal I/O. Should use normal I/O if the input is small enough. +o How does the speed of radix splitting decrease with increasing number of hash bits? + Does it help to use more bits than we need, so that we sort less data in memory? +o Log messages should show both original and new size of the data. The speed + should be probably calculated from the former.