Content deleted Content added
Added proper short description replacing current one which seems to be garbage or vandalism |
m v2.05 - Fix errors for CW project (Reference before punctuation - Link equal to linktext - Unbalanced quotes in ref name or illegal character.) |
||
Line 10:
==Types==
There are two general types of virtual memory compression : (1) sending compressed pages to a swap file in main memory, possibly with a backing store in auxiliary storage,<ref name ="CaseForCompressedCaching"/><ref name="zram_kernel_org">{{cite web |url="https://www.kernel.org/doc/html/next/admin-guide/blockdev/zram.html" |title="zram: Compressed RAM-based block devices" |last="Gupta" |first="Nitin" |website="docs.kernel.org" |publisher="The kernel development community" |access-date=2023-12-29 }}</ref><ref name="zswap_kernel_org">{{cite web |url="https://www.kernel.org/doc/html/v4.18/vm/zswap.html" |title="zswap" |website="https://www.kernel.org/doc/html/v4.18/vm/zswap.html" |publisher="The kernel development community" |access-date=2023-12-29 }}</ref>
The first type (1) usually uses some sort of [[LZ77_and_LZ78|LZ]] class dictionary compression algorithm combined with [[
One of the most used class of algorithms for the second type (2), the WK class of compression algorithms, takes advantage of in-memory data regularities present in pointers and integers.<ref name ="CaseForCompressedCaching"/> Specifically, in target code generated by most high-level programming languages, both integers and pointers are often present in records whose elements are word-aligned. Furthermore, the values stored in integers are usually small. Also pointers tend to point to nearby locations. Additionally, common data patterns such as a word of all zeroes can be encoded in the compressed output by a very small code. Using these data regularities, the WK class of algorithms use a very small dictionary ( 16 entries in the case of [[WKdm]] ) to achieve up to a 50% compression ratio while achieving much greater speeds and having less overhead than LZ class dictionary compression schemes.<ref name ="CaseForCompressedCaching"/>
|