Gentoo Archives: gentoo-user

From: Dale <rdalek1967@×××××.com>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] Not enough RAM for dev-qt/qtwebengine build
Date: Sat, 15 Jun 2019 20:02:36
Message-Id: 74dacf05-058d-90a7-f80b-34438173f6cc@gmail.com
In Reply to: Re: [gentoo-user] Not enough RAM for dev-qt/qtwebengine build by Alec Ten Harmsel
1 Alec Ten Harmsel wrote:
2 > On Sat, Jun 15, 2019, at 14:19, Walter Dnes wrote:
3 >> On Thu, Jun 13, 2019 at 05:15:41PM +0300, Alexey Eschenko wrote
4 >>> Thank you. Didn't think about that. Don't know why though. My
5 >>> MAKEOPTS was "-j32". Looks like that was too many for package like
6 >>> qtwebengine. Solved the problem with creating specific environment
7 >>> for qtwebengine and setting it up in /etc/portage/package.env/ It was
8 >>> veeeery long build process but this time it finished successfully. I
9 >>> think I'll try to find more appropriate value for qtwebengine which
10 >>> could be used with 32GB of RAM.
11 >> Please use plain text, not HTML.
12 >>
13 >> According to
14 >> https://blogs.gentoo.org/ago/2013/01/14/makeopts-jcore-1-is-not-the-best-optimization/
15 >> the fastest compiles come with setting MAKEOPTS to the number of cores
16 >> in your machine. E.g. for a dual core cpu, use "-j2", for a 4 core cpu
17 >> use "-j4", etc. To check the number of cpus in your machine, execute...
18 >>
19 >> grep -c ^flags /proc/cpuinfo
20 > That's a good rule but not necessarily always true. My old machine was an i7-3930K (6 cores, 12 threads) w/ 32G RAM. I had /var/tmp on tmpfs. I benchmarked firefox, chromium, and some other big projects once and -j13 was consistently the fastest on that box.
21 >
22 > As that blog post says:
23 >
24 >> I’m just saying, ${core} + 1 is not the best optimization for me
25 >> and the test confirms the part:“but this guideline isn’t always perfect”
26 > Depends on available RAM, how fast your disk is, etc.
27 >
28 > Alec
29 >
30 >
31
32
33 As a AMD CPU user, I always set mine to number of cores plus one.  That
34 seems to always be the most efficient for me.  I have portages work
35 directory on tmpfs for all but a couple large packages.  I used to make
36 exceptions for Firefox, Seamonkey, Libreoffice and qtweb something or
37 other.  Since I upgraded my memory to 32GBs I removed all but
38 Libreoffice.  My biggest problem was when more than one of those wanted
39 to compile at the same time. 
40
41 The best way to know what to set it to, test it.  Set it to cores plus
42 one and test.  Then set it to half the number of cores, twice the number
43 of cores etc until you find that sweet spot.  One could even do that
44 during normal updates although it may not be as accurate.  I suspect if
45 ten people with ten different systems tested this, we'd get half a dozen
46 different results, maybe more. 
47
48 The best thing in my opinion, start emerge, go to bed and then hope it
49 is done when you wake up.  lol 
50
51 Dale
52
53 :-)  :-)