density
density copied to clipboard
Improve efficiency for small files
It takes a certain amount of data for density's algorithms to be running optimally (ratio wise). Adding an intermediary processing could be interesting before routing data to the bigger and faster algorithms. It would also enable preparation of the main algorithm's data structures, while ensuring a good compression ratio immediately thus greatly benefiting smaller files. As a side effect, #10 would be probably unnecessary as the compression process would be instantly efficient.
As a reference, here are the compression ratio convergence curves for the 3 algorithms using enwik7, as of 0.12.4 beta.
x-axis => input size read in bytes y-axis => compression ratio, between 0 and 1
green curve => overall compression ratio red curve => spot compression ratio
Density Chameleon
Density Cheetah
Density Lion