Results of actual compile printk format compression

From: Timothy Miller (
Date: Fri Jun 06 2003 - 17:52:49 EST

Just a quick note...

Although my experiments with kernel printk format string compression
have reported estimated shrinkage, this is the first time I have been
able to compile a whole kernel with the compression filter.

These results come from doing an allyesconfig of 2.5.68 and then weeding
out anything that didn't build. One program extracts strings from
preprocessor output, a second program determines how the strings will be
encoded, and the third makes substitutions during a kernel compile.

The uncompressed compile resulted in a kernel image of 24011892 bytes.
The resulting image with format strings compressed is 23904708 bytes
which is a shrinkage of 107184 bytes. Subtracting out an estimate of 3K
for the dictionary and necessary modifications to printk, that results
in a reduction of something like 104112 which is 4% of the original
kernel size.

That may not seem like a lot, but if you consider only the printk
strings themselves, they are compressed to less than 50% of their
original size (counting the dictionary but not printk code mods).

So, I ask... is this a useful savings? Is there any chance anyone would
bother to increase their compile time by a factor of 5 in order to shave
off 4% or 100k bytes?

(Not to mention that allyesconfig is a very unrealistic scenario.)

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

This archive was generated by hypermail 2b29 : Sat Jun 07 2003 - 22:00:31 EST