X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;f=lib%2Fsorter%2FTODO;h=bd399e2a0d6884cac7df928cae615ffc7eb5378e;hb=aafbea40b7613274180c8bab60012a0322f8d7dd;hp=09e4986b50cb6ad85b96dc4e26312f5a13ff71f1;hpb=f08c91407f0ccdcc07cee4a49ccb4bddd4c35988;p=libucw.git diff --git a/lib/sorter/TODO b/lib/sorter/TODO index 09e4986b..bd399e2a 100644 --- a/lib/sorter/TODO +++ b/lib/sorter/TODO @@ -1,20 +1,12 @@ -Testing: -o Giant runs. -o Records of odd lengths. -o Empty files. - Cleanups: -o Clean up data types and make sure they cannot overflow. (size_t vs. u64 vs. sh_off_t vs. uns) o Log messages should show both original and new size of the data. The speed should be probably calculated from the former. -o Automatically tune ASORT_MIN_RADIX, ASORT_MIN_SHIFT and especially ASORT_RADIX_BITS. -o Check undefs in sorter.h and array.h. +o Buffer sizing in shep-export. Improvements: -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 Add automatic joining to the custom presorter interface? +o When quicksorting a large input (especially in threaded case), invest more + time to picking a good pivot. +o Overlay presorter I/O with internal sorting. Users of lib/sorter/array.h which might use radix-sorting: indexer/chewer.c