Pre-fault and optionally lock files into the kernel's page cache to improve application startup times and reduce desktop lagging.
Prefault is a lightweight tool used to pre-fault and optionally mlock() pages from often used files into memory, ahead of time. You may use prefault to lock core system binaries into memory, to avoid eviction of important pages during memory pressure, which would then cause a 'laggy' user experience.
$ yay prefault-git
$ sudo dnf copr enable x3n0m0rph59/prefault-git
$ sudo dnf install prefault-git
$ git clone https://github.com/X3n0m0rph59/prefault.git
$ cd prefault/
$ cargo build --release
# ... copy files ...
- Much more lightweight
- Much smaller code base
- Saves power, since it does not require any calculations, once the process snapshots have been created
- Does not need a full fledged daemon
- More or less static, does not adapt to system behavior changes
- Manual intervention required if updates of a package introduce changes to the dependencies of a binary
prefault - Copyright (C) 2019-2020 the prefault developers