On Wednesday, 28 April 2021 09:58:57 BST Wols Lists wrote:
> On 27/04/21 23:00, Michael wrote:
> > There's three options, I can think of:
> > 
> > 1. Use dev-lang/rust-bin, as Matt suggested above.
> > 
> > 2. Buy more RAM, or use a surrogate PC with more RAM to cross-compile it.
> > 
> > 3. Use a partition with enough space on it to bind mount /var/tmp/portage,
> > for this package only.
> > 
> > I use the 3rd option, but I'm wondering if option 1 may be the smartest
> > move for my needs.
> 
> 4. Add gazillibytes of swap. With a maximum of 16GB on my mobo, my two
> disks each have a 32GB swap partition so that's 80GB of "ram" available
> to my system. My /var/tmp/portage tmpfs is 30GB.
> 
> So obviously I use option 4 :-)
> 
> Cheers,
> Wol

The "add more swap" solution remains feasible, but only for PCs which already 
have adequate RAM.  By 'adequate RAM' I mean enough RAM to run the OS, plus at 
least a single compilation thread.  With, say, <4G RAM, even a single 
compilation thread of a monster package will end up thrashing your disk 
continuously.  The solutions are to set MAKEOPTS="-j1", plus deploy zram for /
var/tmp/portage, plus add adequate swap and if your swap is on a spinning disk 
also use a better scheduler:

echo bfq > /sys/block/sda/queue/scheduler

Nevertheless, if a bin package exists and does what you need it to do, the 
above gymnastics are probably akin to ricing with substandard hardware.  :-)

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

Reply via email to