[[NitinGupta|Nitin Gupta]]
<<MailTo(nitingupta910 AT gmail DOT com)>>
----
. This page contains some prototype code developed for [[CompressedCaching]] project. After seriously insufficient testing, each of these components were eventually merged into final implementation on 2.6.x kernels.
----
|| [[http://linuxcompressed.sourceforge.net/|Project Home Page]] || [[CompressedCaching]] || [[http://sourceforge.net/project/showfiles.php?group_id=13472|Patches]] ||
=== Compression algorithms to kernel mode: ===
Kernel module to test de/compression algorithms (WKdm, WK4x4, LZO): [[/compress-test.tar.gz]]
There are basically three main algorithms that are well studied w.r.t compressed caching by previous works -- WKdm, WK4x4, LZO.
Of these, WKdm, WK4x4 are designed to handle anon pages (non filesystem pages) while LZO is more suitable for filesystem data. (Also, in general, compression speed is in order: WKdm > WK4x4 > LZO, while compression factor order is, in general, reverse).
Now, all three algos are ported to kernel space - WKdm, WK4x4 and LZO. You can test them all using this module. It creates 3 /proc entries: /proc/compress-test/{compress, decompress, algo_idx} as described below: (for some detail see README with this module)
''' In short:'''
__''Write to /proc/compress-test entries:''__
''compress'': compress data witten to it and store in internal buffer.
''algo_idx'': write index of algo you want to test (0: WKdm, 1: WK4x4, 2: LZO)
__''Read from /proc/compress-test entries:''__
''compress'': show original and compressed size (TODO: add other stats like time taken too)
''decompress'': decompress compressed data stored in internal buffer.
''algo_idx'': shows list of algos supported with their index.
----