3 o Records of odd lengths.
7 o Use radix-sort for internal sorting.
8 o Parallelization of internal sorting.
9 o Clean up data types and make sure they cannot overflow. (size_t vs. u64 vs. sh_off_t vs. uns)
10 o Switching between direct and normal I/O.
11 o When merging, choose the output file with less runs instead of always switching?
12 o Deal with too rough range estimates in radix splitting.
13 o How does the speed of radix splitting decrease with increasing number of hash bits?
14 Does it help to use more bits than we need, so that we sort less data in memory?
15 o Log messages should show both original and new size of the data. The speed
16 should be probably calculated from the former.