On Friday, 30 April 2021 02:30:51 BST Adam Carter wrote:
> On Wed, Apr 28, 2021 at 7:58 PM Kai Peter <k...@lists.qware.org> wrote:
> > Hi,
> > 
> > I have an issue with a machine where I'm not able to detect the real
> > root cause. It hangs up totally. It seems like it was running out of
> > memory - but why? Hopefully somebody can give me some insight. As far I
> > can see right now, it hangs up a few hours after an `emerge --update
> > --newuse --deep --with-bdeps=y @world`.
> > 
> > The machine is an Intel Atom with 8 GB RAM (physical, max) and 24 GB
> > swap (a file). So 32 GB RAM in total.
> 
> Might be worth adding zswap using zstd or lz4 to your config (uses more CPU
> for less IO)
> https://www.kernel.org/doc/html/latest/vm/zswap.html

Zswap will help optimise the swapping of cold pages out of RAM into the 
compressed zswap cache and eventually push these out to the disk.  This won't 
help with the problem of not having enough RAM to start with for compiling 
packages with large resource requirements, like e.g. Chromium.

With monster packages where more RAM is needed even for a single compilation 
job, after all cold pages have been swapped out, hot pages will start being 
swapped out/in.  I think at this point the same I/O race condition will ensue 
as if no zswap were available, plus a compress/decompress CPU load.  I guess 
the point of starting to thrash the on-disk swap trying to free RAM may start 
sooner, since RAM which would otherwise be available for the single 
prioritised compilation job is now being used by zswap.  So, there would be a 
sweet spot in using zswap to improve I/O performance, but it could end up 
becoming a disbenefit on compilation of RAM hungry packages.

Please correct my reasoning above if I have misunderstood how zswap works.

However, the OP problem here seems to be with a leaky BIND?

I found this mentioned upstream - but have not check BGO:

https://gitlab.isc.org/isc-projects/bind9/-/issues/446
 

> If you want to see which processes are using the most memory, run top then
> type 'M' to have top sort by memory instead of CPU. You can also type 'm'
> to make top show the memory numbers as an ascii bar graph. The man page
> explains what VIRT RES SHR mean.

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply via email to