Comments (2)
Yes! It is intentionally done this way, since we don't want to wait for the disk to fetch a trace log.
If the trace logs would not be cached, online-prefetching would not work as expected!
Background
If precached detects a fork()
and subsequent exec()
system call, it will hash the new process' file name and its command line parameters, and then search all trace logs looking for this specific hash value. If such a trace log of a previous program execution does exist, precached will initiate a replay of this trace log. This won't be as effective as loading the process' files ahead of time, but it at least may help a little bit. Especially if said process does a lot of "disk read"-computation-"disk read"-computation... cycles, online-prefetching may improve the startup performance considerably.
Benchmark of LibreOffice Calc:
Loaded ahead of time: 4 major page faults
Loaded with precached online-prefetching enabled: 257 major page faults
Loaded without precached: 1323 major page faults
from precached.
Okay that makes sense.
from precached.
Related Issues (19)
- Fix Compiler Warnings
- slow shutdown HOT 11
- flatpak HOT 7
- SUID blacklist HOT 14
- high cpu usage 2 HOT 27
- run as non root HOT 5
- decrease cpu usage over time HOT 8
- feedback on version 1.7.1 HOT 1
- Does not work on linux systems with kernel lockdown HOT 43
- hot-applications list displays same item multiple times HOT 2
- selinux confinement for precached HOT 10
- create directories at install HOT 2
- blacklist is not honored HOT 1
- unclean build HOT 2
- allow mouse interaction inside precachedtop
- high cpu usage HOT 1
- Do files in cache become to old? HOT 2
- Dependencies tree HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from precached.