Re: [PATCHv11 4/4] zswap: add documentation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, May 13, 2013 at 07:40:03AM -0500, Seth Jennings wrote:
> This patch adds the documentation file for the zswap functionality
> 
> Signed-off-by: Seth Jennings <sjenning@xxxxxxxxxxxxxxxxxx>
> ---
>  Documentation/vm/zswap.txt |   72 ++++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 72 insertions(+)
>  create mode 100644 Documentation/vm/zswap.txt
> 
> diff --git a/Documentation/vm/zswap.txt b/Documentation/vm/zswap.txt
> new file mode 100644
> index 0000000..88384b3
> --- /dev/null
> +++ b/Documentation/vm/zswap.txt
> @@ -0,0 +1,72 @@
> +Overview:
> +
> +Zswap is a lightweight compressed cache for swap pages. It takes pages that are
> +in the process of being swapped out and attempts to compress them into a
> +dynamically allocated RAM-based memory pool.  If this process is successful,
> +the writeback to the swap device is deferred and, in many cases, avoided
> +completely.  This results in a significant I/O reduction and performance gains
> +for systems that are swapping.
> +

*Potentially* reduces IO and *potentially* shows performance gains. If the
system is swap trashing, this may make things worse as you're generating
the same amount of IO but having to compress/decompress as well. If there
is less physical memory available because zswap pool is fragmented then an
application may be pushed to swap prematurely and again, the performance
is worse. Don't oversell this and the comment applies throughout the
documentation.

I also think it should be marked with a bit fat warning that it's a WIP
and an additional warning that the performance characteristics are very
heavily workload dependant.

-- 
Mel Gorman
SUSE Labs

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]