diff options
author | https://www.google.com/accounts/o8/id?id=AItOawmxPyZBI4RKiZF7keCzydFZ3zkSEeDQkQM <Sergio@web> | 2011-12-29 23:00:45 +0100 |
---|---|---|
committer | GNU Hurd web pages engine <web-hurd@gnu.org> | 2011-12-29 23:00:45 +0100 |
commit | 85469a4ef5436ae7eeae7ed70959b71ca264a0c6 (patch) | |
tree | 2fe1e84804c82fe900c37cbb9e13aebbb190dd90 | |
parent | b34601114c54c517b4274752683df73372995ebb (diff) |
-rw-r--r-- | user/Sergio_Lopez.mdwn | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/user/Sergio_Lopez.mdwn b/user/Sergio_Lopez.mdwn index 94850717..b9789e71 100644 --- a/user/Sergio_Lopez.mdwn +++ b/user/Sergio_Lopez.mdwn @@ -18,6 +18,24 @@ License|/fdl]]."]]"""]] ### Advisory Pageout +#### Rationale +This work has two objectives: + +- Put a limit on the number of dirty (or better said, potentially dirty) pages that can be at one given time on Hurd. Having lots of dirty pages stresses the translators when syncing its memory objects, since they could receive a huge amount of m_o_data_return messages in a short amount of time. This is the primary cause for thread explosions. + +- When memory is scarce due to work load, try to avoid flushing anonymous memory. This is done by trying to satisfy the target of free pages releasing clean external pages (which can be considered as cache). + +#### Trying it +I've commited this work to this branch: + +<http://git.savannah.gnu.org/cgit/hurd/gnumach.git/log/?h=k0ro/advisory_pageout/master> + +You'll also need the counterpart for user space: + +<http://blogs.nologin.es/slopez/files/hurd-advisory_pageout.patch> + +If you try it, please let me know your experience with it. + ### Reduce task map fragmentation ### memfs (Memory FS translator) |