> system hangs with earlyoom and swap on zram, disksize=150% MemTotal, compression ratio at the end is 1.4, SwapFree=25%, the zram device occupies 80% of the memory with running Blender https://imgur.com/a/wNvBVIn.
> With disksize=100% MemTotal this should be very rare case. -- https://pagure.io/fedora-workstation/issue/127#comment-629519 > Scaling ZRAM to full memory size +1, in most cases it should make sense. вт, 12 янв. 2021 г. в 01:50, Ben Cotton <bcot...@redhat.com>: > https://fedoraproject.org/wiki/Changes/Scale_ZRAM_to_full_memory_size > > > == Summary == > Fedora 33 [[Changes/SwapOnZRAM|enabled zram by default]]. The size of > the virtual swap devices was set so that the amount of memory used for > compressed swap pages was limited to a quarter of physical memory in > typical scenarios. That size is now increased to half of physical > memory (`zram-fraction` becomes 1.0, `max-zram-size` becomes 8 GiB). > This allows systems with small amounts to successfully launch the > [https://anaconda-installer.readthedocs.io/en/latest/ Anaconda > installer] and other programs. > > == Owner == > > * Name: [[User:Zbyszek|Zbigniew Jędrzejewski-Szmek]] > * Email: zbys...@in.waw.pl > * Name: [[User:jwrdegoede|Hans de Goede]] > * Email: hdego...@redhat.com > > > == Detailed Description == > > When ZRAM was enabled by default in Fedora 33, the size of the device > (before compression) was limited to fraction 0.5 of RAM or 4 GiB, > whichever is less. The reason to limit the fraction to less than 1.0 > is that with only incompressible data in memory, whole RAM would be > filled by the "compressed" pages, leaving no RAM for normal use. But > this concern seems to have been overblown, and there have been no > reports of compressed swap taking up too much memory. In real use, we > will have at least a few hundred MiB of code in memory, which > compresses quite well, so some compression will occur even when > working with incompressible data. In typical usage scenarios, we get > effective compression of 2:1 or 3:1, which means that the compressed > pages use at most between 1/4th and 1/6th of RAM. By increasing the > fraction to 1.0, we expect to consign up to half of RAM for compressed > pages. > > Increasing the size of the device is important for small devices. For > devices with 1GB of RAM, sizing ZRAM to 1 GiB allows successful > installation with Anaconda. In general, it is expected that having > more compressed swap will make the device more functional after > installation too. This increase is the most important for devices with > small amounts of memory (< 1 GiB), but will be beneficial to systems > with slightly larger systems (1–8 GiB). > > Technically, this change is completely trivial, amounting to two lines > of configuration. Nevertheless, there is some potential for problems > with incompressible workloads. The experience with ZRAM so far makes > the Change authors optimistic that no issues will be encountered, but > users and other developers should be aware of the change. > > > == Benefit to Fedora == > > Fedora works better on devices with low RAM. In particular, the > installer can function. > > == Scope == > * Proposal owners: change the defaults in `zram-generator-defaults` > package to `zram-fraction=1.0`, `max-zram-size=8096`. > > * Other developers: N/A (not a System Wide Change) > * Policies and guidelines: N/A (not a System Wide Change) > * Trademark approval: N/A (not needed for this Change) > > > == Upgrade/compatibility impact == > Default configuration is changed. Systems with local configuration > will not be affected. Systems which had zram-generator disabled will > not be affected. > > == How To Test == > Install the new version of the `zram-generator-defaults` package, > execute `sudo systemctl daemon-reload && sudo systemctl restart > swap-create@zram0`, use `zramctl` to check that the device has the > expected size. After some use, check that pages are compressed at > least with ration 2:1: > <pre> > $ zramctl > NAME ALGORITHM DISKSIZE DATA COMPR TOTAL STREAMS MOUNTPOINT > /dev/zram0 lzo-rle 7.6G 4K 74B 12K 4 [SWAP] > ^ ^ ^ > | \____\_______ the ratio of those > values should be more than 2:1 > | > `------ this should be approx the size of RAM > </pre> > (Note that the device is destroyed and recreated during restart. This > means that all pages will be "swapped in", i.e. decompressed. On > machines with low memory, rebooting might be a better option.) > > == User Experience == > Not user visible. > > == Dependencies == > None. > > == Contingency Plan == > * Contingency mechanism: Revert default configuration to previous values. > * Contingency deadline: Final freeze, any time really. > * Blocks release? No > * Blocks product? No > > == Documentation == > None. > > == Release Notes == > The default size of compressed zram devices (`/dev/zram0`) has been > increased to 1.0 fraction of RAM, or 8 GiB, whichever is smaller. > > > -- > Ben Cotton > He / Him / His > Senior Program Manager, Fedora & CentOS Stream > Red Hat > TZ=America/Indiana/Indianapolis > _______________________________________________ > devel mailing list -- devel@lists.fedoraproject.org > To unsubscribe send an email to devel-le...@lists.fedoraproject.org > Fedora Code of Conduct: > https://docs.fedoraproject.org/en-US/project/code-of-conduct/ > List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines > List Archives: > https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org >
_______________________________________________ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org