squashfs: Enhance parallel I/O
authorMinchan Kim <minchan@kernel.org>
Mon, 28 Oct 2013 05:26:30 +0000 (14:26 +0900)
committerMohamad Ayyash <mkayyash@google.com>
Wed, 4 Mar 2015 19:22:09 +0000 (11:22 -0800)
commitc0f8b08ad95ca0724ac465c391aef3fc456f5aa9
treeb1a6729425891e16194889664bc8f588aa0c9213
parent06e4ac0b0a206086bff4cb34c07f5a87e87aef4c
squashfs: Enhance parallel I/O

Now squashfs have used for only one stream buffer for decompression
so it hurts parallel read performance so this patch supports
multiple decompressor to enhance performance parallel I/O.

Four 1G file dd read on KVM machine which has 2 CPU and 4G memory.

dd if=test/test1.dat of=/dev/null &
dd if=test/test2.dat of=/dev/null &
dd if=test/test3.dat of=/dev/null &
dd if=test/test4.dat of=/dev/null &

old : 1m39s -> new : 9s

* From v1
  * Change comp_strm with decomp_strm - Phillip
  * Change/add comments - Phillip

Signed-off-by: Minchan Kim <minchan@kernel.org>
Signed-off-by: Phillip Lougher <phillip@squashfs.org.uk>
fs/squashfs/Kconfig
fs/squashfs/Makefile
fs/squashfs/decompressor_multi.c [new file with mode: 0644]