Scheduled Maintenance: We are aware of an issue with Google, AOL, and Yahoo services as email providers which are blocking new registrations. We are trying to fix the issue and we have several internal and external support tickets in process to resolve the issue. Please see: viewtopic.php?t=158230
anybody else using zswap?
- wizard10000
- Global Moderator
- Posts: 591
- Joined: 2019-04-16 23:15
- Location: southeastern us
- Has thanked: 78 times
- Been thanked: 89 times
anybody else using zswap?
Decided to experiment with zswap a little and now have no swap file/partition on my machine
Had to combine stuff from the Arch wiki and systemd-swap's GIT repository to get the thing going but now have up to 12% of my RAM earmarked for compressed memory pages. The service uses about zero ram until the machine starts paging and then will use up to 12% of my 8GB for compressed memory pages.
About the only time my machine uses swap is when I'm running a Win7 machine under KVM/QEMU - I can see a slight increase in performance and the VM boots to a working desktop in 15 seconds.
Anyway, references -
https://wiki.archlinux.org/index.php/Zswap
https://github.com/Nefelim4ag/systemd-swap
Second link is systemd-swap's GIT repository. If you grab the code and run the shell script included it'll create a .deb for you - no compiling required.
I also installed lzo and lz4 - not sure whether either were dependencies as I installed them before I installed the .deb
Was kinda fun - was able to disable and remove my swap partition and resize my root partition while booted into that root partition
cheers -
edit: Even after I removed swap partition from fstab the machine complained about not finding resume location. Fixed that by removing /etc/initramfs-tools/conf.d/resume and then running update-initramfs -u
Had to combine stuff from the Arch wiki and systemd-swap's GIT repository to get the thing going but now have up to 12% of my RAM earmarked for compressed memory pages. The service uses about zero ram until the machine starts paging and then will use up to 12% of my 8GB for compressed memory pages.
About the only time my machine uses swap is when I'm running a Win7 machine under KVM/QEMU - I can see a slight increase in performance and the VM boots to a working desktop in 15 seconds.
Anyway, references -
https://wiki.archlinux.org/index.php/Zswap
https://github.com/Nefelim4ag/systemd-swap
Second link is systemd-swap's GIT repository. If you grab the code and run the shell script included it'll create a .deb for you - no compiling required.
I also installed lzo and lz4 - not sure whether either were dependencies as I installed them before I installed the .deb
Was kinda fun - was able to disable and remove my swap partition and resize my root partition while booted into that root partition
cheers -
edit: Even after I removed swap partition from fstab the machine complained about not finding resume location. Fixed that by removing /etc/initramfs-tools/conf.d/resume and then running update-initramfs -u
we see things not as they are, but as we are.
-- anais nin
-- anais nin
- Head_on_a_Stick
- Posts: 14114
- Joined: 2014-06-01 17:46
- Location: London, England
- Has thanked: 81 times
- Been thanked: 133 times
Re: anybody else using zswap?
I thought zswap was designed to work in conjunction with a swap partition?wizard10000 wrote:now have no swap file/partition on my machine
What happens now when you start running out of RAM? The system has nowhere to page to if the physical swap space isn't there.
deadbang
- wizard10000
- Global Moderator
- Posts: 591
- Joined: 2019-04-16 23:15
- Location: southeastern us
- Has thanked: 78 times
- Been thanked: 89 times
Re: anybody else using zswap?
It *can* work in conjunction with a swap partition (by default it does), it can also do standalone. The 12% of RAM I have reserved for zswap takes the place of physical swap space.Head_on_a_Stick wrote:I thought zswap was designed to work in conjunction with a swap partition?wizard10000 wrote:now have no swap file/partition on my machine
What happens now when you start running out of RAM? The system has nowhere to page to if the physical swap space isn't there.
we see things not as they are, but as we are.
-- anais nin
-- anais nin
-
- Global Moderator
- Posts: 2679
- Joined: 2018-06-20 15:16
- Location: Colorado
- Has thanked: 41 times
- Been thanked: 196 times
Re: anybody else using zswap?
I've mentioned zram-tools a few times.
I have a few examples, it should be tuned to use.
Swappiness should be a tad higher, it works with or without swap partitions or files.
It helps low and high memory configs.
Highly recommended with modern cpu's.
Default for my systems.
https://packages.debian.org/search?keyw ... lla-search
I have a few examples, it should be tuned to use.
Swappiness should be a tad higher, it works with or without swap partitions or files.
It helps low and high memory configs.
Highly recommended with modern cpu's.
Default for my systems.
https://packages.debian.org/search?keyw ... lla-search
Re: anybody else using zswap?
So did I get the idea? ...which appears to be tat most of the time most people's CPU's are idle. So, if you can use them for anything that you need = awesome. If you need more RAM, then compressing stuff to RAM makes sense (as, I suppose, that means sacrificing CPU cycles in the compression to lower space). So them if you toss the entire swap and move everything to RAM, you can even get performance benefits (because swap is slow). But what indeed if you run out of RAM and OOM kicks in, will your lock up be even worse than normal because stuff is compressed also now?
Also what if you game, transcode video or compile stuff a lot, would you suffer and want to turn it off at times?
Also what if you game, transcode video or compile stuff a lot, would you suffer and want to turn it off at times?
- wizard10000
- Global Moderator
- Posts: 591
- Joined: 2019-04-16 23:15
- Location: southeastern us
- Has thanked: 78 times
- Been thanked: 89 times
Re: anybody else using zswap?
I'm still playing Skyrim on a PS3 so definitely not a gamerpylkko wrote:would you suffer and want to turn it off at times?
I played with zram for a bit and ended up abandoning it for systemd-swap because it seemed to be just the thing for managing swap
Posting /etc/systemd/swap.conf so you can get an idea what can be done - the only thing I changed was lowered the zswap default 25% max RAM allocation to 12% since I have 8GB of RAM
Code: Select all
################################################################################
# Defaults are optimized for general usage
################################################################################
################################################################################
# You can override any settings with files in:
# /etc/systemd/swap.conf.d/*.conf
################################################################################
################################################################################
# Zswap
#
# Kernel >= 3.11
# Zswap create compress cache between swap and memory to reduce IO
# https://www.kernel.org/doc/Documentation/vm/zswap.txt
zswap_enabled=1
zswap_compressor=lz4 # lzo lz4
# zswap_max_pool_percent=25 # 1-99
zswap_max_pool_percent=12 # 1-99
zswap_zpool=zbud # zbud z3fold
################################################################################
# ZRam
#
# Kernel >= 3.15
# Zram compression streams count for additional information see:
# https://www.kernel.org/doc/Documentation/blockdev/zram.txt
zram_enabled=0
zram_size=$(( ${RAM_SIZE} / 4 )) # This is 1/4 of ram size by default.
zram_streams=${NCPU}
zram_alg=lz4 # lzo lz4 deflate lz4hc 842 - for Linux 4.8.4
zram_prio=32767 # 1 - 32767
################################################################################
# Swap File Chunked
# Allocate swap files dynamically
# For btrfs fallback to swapfile + loop will be used
# ex. Min swap size 512M, Max 8*512M
swapfc_enabled=0
swapfc_force_use_loop=0 # Force usage of swapfile + loop
swapfc_frequency=1s # How often to check free swap space
swapfc_chunk_size=512M # Allocate size of swap chunk
swapfc_max_count=8 # note: 32 is a kernel maximum
swapfc_free_swap_perc=15 # Add new chunk if free < 15%
# Remove chunk if free > 15+40% & chunk count > 2
swapfc_path=/var/lib/systemd-swap/swapfc/
# Only for swapfile + loop
swapfc_nocow=1 # Disable CoW on swapfile
swapfc_directio=1 # Use directio for loop dev
swapfc_force_preallocated=0 # Will preallocate created files
################################################################################
# Swap devices
# Find and auto swapon all available swap devices
swapd_auto_swapon=1
swapd_prio=1024
we see things not as they are, but as we are.
-- anais nin
-- anais nin
- wizard10000
- Global Moderator
- Posts: 591
- Joined: 2019-04-16 23:15
- Location: southeastern us
- Has thanked: 78 times
- Been thanked: 89 times
Re: anybody else using zswap?
Couldn't tell you yet as my machine almost never swaps. I did notice that my QEMU/KVM Win7 VM boots a little faster than it used to.pylkko wrote:how much does the cpu usage increase? would it affect batter life?
The cool thing about zswap vs. zram is that zswap only allocates memory if needed - if you're not paging I really don't see any impact.
Battery life shouldn't really be impacted as storing pages in memory requires less power than storing them on a physical disk.
we see things not as they are, but as we are.
-- anais nin
-- anais nin
-
- Global Moderator
- Posts: 2679
- Joined: 2018-06-20 15:16
- Location: Colorado
- Has thanked: 41 times
- Been thanked: 196 times
Re: anybody else using zswap?
That's not my experience. zram-tools is a simple install with no required configuration or even a reboot. You don't need to change any swap config. It doesn't suck up memory when not needed.wizard10000 wrote:The cool thing about zswap vs. zram is that zswap only allocates memory if needed - if you're not paging I really don't see any impact.
In addition to running out of memory, another use case is long term uptime. Things are swapped due to lack of use long before a memory shortage. Duplication of many vm's can swap out gig's of redundant code, leaving a multiple of that free.
Firefox uses it very well to swap out tabs not in use. On a fast computer that is transparent and can easily save a gig. With many redundant VM's I see up to a few gigs in zram saving 3-4 GB while less than half memory load.
Simple install and go! You can change the size to suit and increase swappiness to use it more effectively.
One machine now shows 4MB! ..of 25GB in use and 36GB free. Another is at 892MB and has been up to 1.5GB during it's 200+ days of uptime. Neither has touched the swap partition.
Testing VM's with browsers and balloonable memory, ones with zram give notice of memory confinement just by maxing the allotted zram while being perfectly responsive. The same load without would freeze the vm to useful input and require a few hundred MB of memory ballooning to become responsive. It clearly works.
It does use modern cpu extensions, so not for older old machines. (Westmere and up I'd guess)
Re: anybody else using zswap?
No, but if you swap, and therefore compress stuff, your cpu load is gonna be up all the time decompressing and compressing stuff... that will eat a battery. But this is of course in the event that you swawp to begin wthwizard10000 wrote:Battery life shouldn't really be impacted as storing pages in memory requires less power than storing them on a physical disk.pylkko wrote:how much does the cpu usage increase? would it affect batter life?