[: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): attachment: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:''__
1. ''compress'': compress data witten to it and store in internal buffer.
2. ''algo_idx'': write index of algo you want to test (0: WKdm, 1: WK4x4, 2: LZO)
__''Read from /proc/compress-test entries:''__
1. ''compress'': show original and compressed size (TODO: add other stats like time taken too)
2. ''decompress'': decompress compressed data stored in internal buffer.
3. ''algo_idx'': shows list of algos supported with their index.
----