Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Make or break: I need a way to control all this compilation
View unanswered posts
View posts from last 24 hours

Goto page 1, 2  Next  
Reply to topic    Gentoo Forums Forum Index Other Things Gentoo
View previous topic :: View next topic  
Author Message
lars_the_bear
Guru
Guru


Joined: 05 Jun 2024
Posts: 515

PostPosted: Fri Jul 19, 2024 8:46 am    Post subject: Make or break: I need a way to control all this compilation Reply with quote

Hi folks

I've raised this subject before, and I'm sure I'm not the first; but I really need a practical solution, or I'll have to go back to using an all-binary Linux distribution. I like Gentoo; I like what it stands for -- but I can't operate a computer at 100% CPU for days on end.

This morning I ran 'emerge @world'. I last ran it a month ago. Today I have 104 packages to update, about 90 of which have to be compiled. Right now it's compiling gcc, which I know from experience will take two days. When that's done, there are 80+ packages left to do, some of which are huge. The last time I updated, it wasn't quite so bad -- the whole thing took 'only' three days. I think this one could take a week.

I've already switched to using binaries for things like Firefox, LibreOffice, and Thunderbird. I don't know if there are binaries for gcc and the other behemoths that need to be built now.

I could update less frequently, but I think that will just make the update take much longer when I finally do it. This isn't an academic exercise -- I'm updating the laptop computer that I use every day. Right now, I'm almost burning my fingers on the keyboard. I couldn't imagine putting it on my lap. It's not ideal, when the temperature in my office is 30+ celsius already.

I feel there has to be a solution to this problem, because there are people still using Gentoo. I've read about people having to stand their laptops on end to improve cooling, or sit them on forced cooling pads; there are people setting up multiple computers to share the compilation load; I've even read suggestions about doing the compilation off-site in some sort of cloud.

But I just want a practical way to run a laptop computer. I don't want to have to go to these kinds of lengths. I like Gentoo, but I don't like it enough to set up a liquid-cooling plant for my laptop.

Is there a solution? Or is this goodbye?

BR, Lars.
Back to top
View user's profile Send private message
s0ulslack1
n00b
n00b


Joined: 06 Mar 2022
Posts: 25

PostPosted: Fri Jul 19, 2024 10:09 am    Post subject: Reply with quote

Update your hardware :)
Back to top
View user's profile Send private message
Banana
Moderator
Moderator


Joined: 21 May 2004
Posts: 1716
Location: Germany

PostPosted: Fri Jul 19, 2024 10:13 am    Post subject: Reply with quote

Quote:
This morning I ran 'emerge @world'. I last ran it a month ago.

it is not wrong, but do this more often to keep the load lower. I do mine once or even twice a week and no problems so far.

Quote:
Right now it's compiling gcc, which I know from experience will take two days.

This is really long. Can't you change some things or upgrade your hardware? If this is not an option, either bin-host or compiling on another host could solve the issue.
_________________
Forum Guidelines

PFL - Portage file list - find which package a file or command belongs to.
My delta-labs.org snippets do expire
Back to top
View user's profile Send private message
lars_the_bear
Guru
Guru


Joined: 05 Jun 2024
Posts: 515

PostPosted: Fri Jul 19, 2024 11:03 am    Post subject: Reply with quote

Banana wrote:

This is really long. Can't you change some things or upgrade your hardware? If this is not an option, either bin-host or compiling on another host could solve the issue.


Part of the problem is that I have to throttle the CPU, to keep the heat under control. This is a computer that I'm actively using, in a small, hot office. I can actually use it whilst it's compiling -- I'm actually writing code and listening to Spotify, while compiling, and it's fine. But if I removed the throttle, it would just be too hot to use (it levels out at about 95C).

I run my own binhost, but I still have to compile stuff to populate it. Unless you know some other source of binaries? I'm already using all the Gentoo binaries that are available (so far as I know).

To be honest, I don't really want to run multiple computers, just so that one can be compiling all the time. I'm looking to a time when I've retired (soon), and my house isn't full of computers. I just want one computer, that I can keep up to date without too much pain.

If I were to buy another, more capable computer (which is an option) I'm not sure I'd run Gentoo on it. A 14th-gen CPU and 64Gb would cut through the bloat and inefficiency of Ubuntu, which I already know pretty well. My main reason for running Gentoo -- that I can run a minimal, highly-tuned system -- would be gone.

It seems ironic to me, that the kind of hardware that would do best with Gentoo -- new, fast stuff -- potentially benefits least from the unique benefits that Gentoo offers.

What would be the implications of _never_ updating? Is this even possible?

BR, Lars.
Back to top
View user's profile Send private message
Banana
Moderator
Moderator


Joined: 21 May 2004
Posts: 1716
Location: Germany

PostPosted: Fri Jul 19, 2024 12:30 pm    Post subject: Reply with quote

Quote:
Part of the problem is that I have to throttle the CPU, to keep the heat under control. This is a computer that I'm actively using, in a small, hot office. I can actually use it whilst it's compiling -- I'm actually writing code and listening to Spotify, while compiling, and it's fine. But if I removed the throttle, it would just be too hot to use (it levels out at about 95C).

Sounds really like a hardware problem. Even if you upgrade your hardware you need some more cooling.

Quote:
It seems ironic to me, that the kind of hardware that would do best with Gentoo -- new, fast stuff -- potentially benefits least from the unique benefits that Gentoo offers.

This is a downside, since the code needs to be compiled and this takes resources.

Quote:
What would be the implications of _never_ updating? Is this even possible?

You can, but in the future you will have problems if you need to update. With gentoo maybe earlier than with fedora or debian.
_________________
Forum Guidelines

PFL - Portage file list - find which package a file or command belongs to.
My delta-labs.org snippets do expire
Back to top
View user's profile Send private message
lars_the_bear
Guru
Guru


Joined: 05 Jun 2024
Posts: 515

PostPosted: Fri Jul 19, 2024 1:07 pm    Post subject: Reply with quote

Thanks. I wonder whether Gentoo is really appropriate for routine, day-to-day use on modest hardware? It seems, perhaps, that the typical Gentoo user is someone who has a bunch of computers, probably high-end, and doesn't mind spending time tweaking them.

Or, perhaps, the enthusiast who is determined to run Linux on a 486, just to show it can be done (which seems reasonable to me), and doesn't mind compiling for days at a time.

Is anybody running Gentoo, who just wants to run applications without fuss? To be fair, that's what I get from Fedora, so long as I have a heap of RAM and a new-ish CPU. Or is Gentoo really more for tinkerers? I've got nothing against tinkering, but I also need a laptop I can just use.

BR, Lars.
Back to top
View user's profile Send private message
sdauth
l33t
l33t


Joined: 19 Sep 2018
Posts: 644
Location: Ásgarðr

PostPosted: Fri Jul 19, 2024 1:26 pm    Post subject: Reply with quote

lars_the_bear wrote:
Thanks. I wonder whether Gentoo is really appropriate for routine, day-to-day use on modest hardware? It seems, perhaps, that the typical Gentoo user is someone who has a bunch of computers, probably high-end, and doesn't mind spending time tweaking them.


My main system is from 2012 (amd quad core) with 32GB of ram. Outdated by current standard so I did have to make a couple of choice to make it bearable. I don't use any binary package, distcc etc.. but on the other hand I avoid any package with dependencies on webkit, qtwebengine.. I have a couple of package.mask for gcc, rust, llvm, nodejs to avoid newest stable version (as long as it is possible and there are not direct dependencies for some other package, like firefox ; or needed for security reason)
I also only do update by night or when I know I will not run intensive tasks during the day. I don't throttle anything and everything is cooled properly.
Honestly, even when the painful updates happen, like with upcoming llvm 18, rust-1.79 stabilization, it's only a matter of hours..
I think you want to update at least once a week to minimize long compilation time. Personally I update every 48h on this system. Sometimes I wait a bit more if I'm busy with other tasks.
Back to top
View user's profile Send private message
Fitzcarraldo
Advocate
Advocate


Joined: 30 Aug 2008
Posts: 2052
Location: United Kingdom

PostPosted: Fri Jul 19, 2024 2:01 pm    Post subject: Reply with quote

It doesn't matter if you update once a week; at some point there is going to be a big upgrade (e.g. Python, Profile, DE, or whatever) and it's going to take a long time to build all the resulting packages on a legacy laptop. For example, I tend to update once a week but my 2010 and 2015 laptops still have to spend many, many hours (several days sometimes) when there is a KDE frameworks or KDE apps update. You can't have your cake and eat it. My advice would be to use a binary distribution and have done with it.
_________________
Clevo W230SS: amd64, VIDEO_CARDS="intel modesetting nvidia".
Compal NBLB2: ~amd64, xf86-video-ati. Dual boot Win 7 Pro 64-bit.
OpenRC systemd-utils[udev] elogind KDE on both.

My blog
Back to top
View user's profile Send private message
pingtoo
Veteran
Veteran


Joined: 10 Sep 2021
Posts: 1230
Location: Richmond Hill, Canada

PostPosted: Fri Jul 19, 2024 2:09 pm    Post subject: Reply with quote

lars_the_bear,

In my opinion, it is philosophical, Why source code based meta system? Why not ready made system? And how are they different from each other from one specific point of time?

The time reference in my point is that both are same on the day you start to use, both have their own frequency of update. both you have control on how frequent you perform update. The only different are one you have control over how much changes, whereas the binary based usually you have little control of how much you will drag in to your computer, in this regard even Gentoo binary is same as any other binary based distro, with Gentoo binary you have less control of what it will or will not pull in, like it or not.

I don't see Gentoo as Linux distro, I see Portage as recipe books. I don't necessary adopt Gentoo's philosophical of frequent update as way of using computer daily. I don't see Gentoo's Profile system as way to define system structure but as guidance of how server type structure vs desktop type structure. This is why I like Gentoo it give me the freedom of choice and for that I entirely thanks Gentoo developer and community for sharing.

I only use ARM based system, I have few different Linux distro, OpenWrt, AlpineLinux, Ubuntu/Debian and Gentoo. Gentoo being my daily driver.

I choose to setup Gentoo once. Once it is setup to my satisfactions, I don't update it until I have new requirement and I only install to support my new requirement. I do update Gentoo when I fell my system is too outdated, I will reinstall from scratch, Since my system all have SD card based booting mechanism, it is relative easy for me to change entire system. My update frequency are in terms of year, usually 2-4 years.

If your concern security, In my opinion software update rarely is good for security. I rather spend time on perimeter setting (i.e. network) than individual software security, To be honest I don't trust the mind of software developer with security (in part because security seldom is developer's priority) I was once a software developer :)

So can you avoid update you laptop frequently? Think why each update, were you encounter a bug that need newer version to address it?
Back to top
View user's profile Send private message
lars_the_bear
Guru
Guru


Joined: 05 Jun 2024
Posts: 515

PostPosted: Fri Jul 19, 2024 2:15 pm    Post subject: Reply with quote

sdauth wrote:
I also only do update by night or when I know I will not run intensive tasks during the day. I don't throttle anything and everything is cooled properly.


So far as I know, my laptop is cooled properly. The CPU is rated for continuous running at 100C, so 90-95C is within normal bounds. Well, normal bounds for the hardware; but the exhaust air melts the varnish on my desk. The 200W PSU is literally too hot to pick up. I can force the fan speed to maximum, to reduce the temperature without throttling, but it sounds like I'm standing behind a jet plane. The laptop (it's a T540) is designed to run really hot, I think. I have other Lenovo laptops, and they all run hot unless throttled.

I'm not worried about the health of the laptop -- but I wouldn't leave it running unthrottled overnight, in case it starts a fire. I have tried what someone else suggested: just suspending at night, and waking again in the morning. But this doesn't really make the overall process any quicker. And it makes my office even hotter than it normally is during the day.

I suppose I could buy a cooler-running laptop, if I could find specifications for that kind of thing.

I don't know how I could update every 48hrs, as you suggest. I think I would be compiling _all the time_. I could mask out updates for the real monster packages, as you say; but I wonder how long that will work, before a dependency fails?

I like Gentoo, but I'm not sure how practical it is. That you seem to be able to make it work is encouraging, but I don't seem to have the same experience as you. Perhaps I have just been unlucky?

BR, Lars.
Back to top
View user's profile Send private message
lars_the_bear
Guru
Guru


Joined: 05 Jun 2024
Posts: 515

PostPosted: Fri Jul 19, 2024 2:37 pm    Post subject: Reply with quote

Fitzcarraldo wrote:
...and it's going to take a long time to build all the resulting packages on a legacy laptop.


I guess this is a philosophical problem on my part. I grew up in a time and place where nothing was ever discarded, and stuff was expected to last forever, with appropriate maintenance. So it's difficult for me to accept a 2017 laptop as obsolete. There are things at the back of my fridge older than that.

I'm aware that we don't live in that kind of world anymore, for better or worse. Still, I really did hope that Gentoo would allow me to have my cake and eat it, as you say. I was rather hoping that I was just doing something wrong, that I was just missing the configuration setting "compile_all_day=false" or something. Guess not. But some folks are clearly making it work on older hardware. I'd like to know more about how they do that, before I give up.

BR, Lars.
Back to top
View user's profile Send private message
Hu
Administrator
Administrator


Joined: 06 Mar 2007
Posts: 22612

PostPosted: Fri Jul 19, 2024 2:48 pm    Post subject: Reply with quote

In my opinion, the single biggest win comes from avoiding heavy software packages. Don't use KDE or GNOME: they offer a lot of functionality, but come with a high compile time (and probably a relatively high runtime memory usage) as a price. Pick one of the minimalist window managers instead.

Don't use the testing branch. Testing gets more frequent revision bumps than stable, which means more compilations if you want to keep current.

Don't build Rust. You may not be able to avoid using the rust compiler, but you can avoid building it, and I am not aware of meaningful gains from building it locally.

Your laptop might be able to survive being run at 95C, but if it were my hardware, I'd find a way to keep it cooler than that, especially if maximizing longevity is a major goal.
Back to top
View user's profile Send private message
sdauth
l33t
l33t


Joined: 19 Sep 2018
Posts: 644
Location: Ásgarðr

PostPosted: Fri Jul 19, 2024 3:02 pm    Post subject: Reply with quote

lars_the_bear wrote:
I don't know how I could update every 48hrs, as you suggest. I think I would be compiling _all the time_. I could mask out updates for the real monster packages, as you say; but I wonder how long that will work, before a dependency fails?

I like Gentoo, but I'm not sure how practical it is. That you seem to be able to make it work is encouraging, but I don't seem to have the same experience as you. Perhaps I have just been unlucky?BR, Lars.


I wouldn't call that luck. Maybe it is working for me because of the combination of packages I use. For example, I use xfce / openbox (xfce & friends are rarely receiving updates & openbox, well, it's not a problem :lol: ) on all my gentoo boxes (when X is required) I avoid anything kde or gnome because first I don't like that :o and they often require rebuilding stuff quite often. But it is not always easy, right now my biggest issue is with the qt packages situation. I have qt5 for some packages, qt6 for other and some (a lot actually) are not yet available with qt6 so I have two qt on my system.
I started by adding a -qt6 in make.conf but some package (I think it was mkvtoolnix, with "gui" USE) wanted qt6 only so no way to avoid that since I use it almost daily.
Back to top
View user's profile Send private message
lars_the_bear
Guru
Guru


Joined: 05 Jun 2024
Posts: 515

PostPosted: Fri Jul 19, 2024 3:21 pm    Post subject: Reply with quote

Hu wrote:
In my opinion, the single biggest win comes from avoiding heavy software packages. Don't use KDE or GNOME: they offer a lot of functionality, but come with a high compile time (and probably a relatively high runtime memory usage) as a price. Pick one of the minimalist window managers instead.


Done that. I use Xfce4. In fact, that's what I use on Ubuntu as well. I have USE=-gnome, etc.

Fortunately, today's update did not include FreeCAD or Darktable (three days and two days respectively). But I guess it's only a matter of time. I can avoid Gnome and KDE, but I can't really avoid the software I actually want to run :) It seems to me that I already have the most minimal system that is possible, to be able to run the software I need. I don't know how I can cut back any further.

Perhaps I've just been unlucky. I've run 'emerge @world' only twice so far, and both times I've gotten a new gcc, Firefox, Thunderbird, plus > 100 others. I switched over to using -bin for Firefox, Thunderbird, and LibreOffice, because compiling takes days. But compiling gcc is not a quick job, either.

To be honest, when I started with Gentoo, I had no idea that so much would need to be updated, so often. If I update monthly, can I expect to get a new gcc every time? How often are there updates to the other behemoths like Python, rust, Qt6?

BR, Lars.
Back to top
View user's profile Send private message
grknight
Retired Dev
Retired Dev


Joined: 20 Feb 2015
Posts: 1908

PostPosted: Fri Jul 19, 2024 4:16 pm    Post subject: Reply with quote

lars_the_bear wrote:
But compiling gcc is not a quick job, either.

gcc is not quick because it must compile itself 3 times over:
  • First, it bootstraps the new version using the current compiler
  • Next, it uses the bootstrap to compile normally
  • Finally, it repeats using this normal compile to do it again in order to compare stage 2 and 3 results to make sure they are equal as a sanity check
Back to top
View user's profile Send private message
pjp
Administrator
Administrator


Joined: 16 Apr 2002
Posts: 20484

PostPosted: Fri Jul 19, 2024 4:43 pm    Post subject: Reply with quote

lars_the_bear wrote:
Thanks. I wonder whether Gentoo is really appropriate for routine, day-to-day use on modest hardware? It seems, perhaps, that the typical Gentoo user is someone who has a bunch of computers, probably high-end, and doesn't mind spending time tweaking them.
I've never liked tweaking settings. I use stable, not ~ testing. I use an older PC (~2010? AMD Phenom II X4 965) to build binaries for my newer laptop (~2016 Intel Core i5-7200U). Rather than tweak settings to optimize for each CPU, my goal is to create a single set of binaries that will run on both computers.

I also have some other laptops. If I ever do anything with them, I intend to use the same set of binaries on those.

So maybe you can repurpose an old PC to help with your situation.

I've considered finding a binary distro, but then I know I'd be frustrated with their choices (I don't use KDE, qt, GNOME, pulseaudio, or systemd). I also don't want to use an (even more?) obscure distro.

You can also mask larger packages to delay how often you update them. For example, I just masked gcc for that reason. I'll update 13 when it's convenient:
Code:
# tail -8 /etc/portage/package.mask/LTS.gcc
### Delay upgrade, 2024-07-17
# U: sys-devel/gcc-13.3.1_p20240614:13::gentoo
# I: sys-devel/gcc-13.2.1_p20240210:13::gentoo
>sys-devel/gcc-13.2.1_p20240210

# U: sys-devel/gcc-12.4.0:12::gentoo
# I: sys-devel/gcc-12.3.1_p20240209
=sys-devel/gcc-12.4.0

_________________
Quis separabit? Quo animo?
Back to top
View user's profile Send private message
Fitzcarraldo
Advocate
Advocate


Joined: 30 Aug 2008
Posts: 2052
Location: United Kingdom

PostPosted: Fri Jul 19, 2024 5:05 pm    Post subject: Reply with quote

lars_the_bear,

Why don't you try Calculate Linux? It's a binary distribution based on Gentoo but apparently you can also use Portage if you want (so I'm told; I've never used it myself):

Calculate Linux Web site wrote:
Calculate is a fast and functional user-friendly Linux distribution, based on Gentoo and still backward compatible with it. It maintains an optimal balance between state-of-the-art and stability, providing the latest versions of applications and stable versions of libraries. As Calculate Linux is a rolling-release distribution, you install the system once and update it throughout the life of your hardware.

_________________
Clevo W230SS: amd64, VIDEO_CARDS="intel modesetting nvidia".
Compal NBLB2: ~amd64, xf86-video-ati. Dual boot Win 7 Pro 64-bit.
OpenRC systemd-utils[udev] elogind KDE on both.

My blog
Back to top
View user's profile Send private message
lars_the_bear
Guru
Guru


Joined: 05 Jun 2024
Posts: 515

PostPosted: Sat Jul 20, 2024 7:14 am    Post subject: Reply with quote

[quote="pjp"]
lars_the_bear wrote:
I use an older PC (~2010? AMD Phenom II X4 965) to build binaries for my newer laptop (~2016 Intel Core i5-7200U). Rather than tweak settings to optimize for each CPU, my goal is to create a single set of binaries that will run on both computers.


Your situation seems somewhat similar to mine, and it seems you've been using Gentoo for ~20 years. So I guess you could teach me something ;)

But -- on a 2010 PC, how long does it take to build GCC, or Rust? Doesn't this PC have to be compiling constantly?

My wife isn't keen on having a stack of computer fans whirring away all day and night. I get away with the Raspberry Pi's, because they're fanless, and only use about 2W of power. Maybe what I need is some sort of low-power, fanless x86 board, that is capable of building Gentoo binaries? It wouldn't matter if it had to run continuously, and the whole process could be automated.

But it all seems like a lot of work, just to run a laptop. I'm curious about how you manage your set-up, at a practical level.

BR, Lars.
Back to top
View user's profile Send private message
pa4wdh
l33t
l33t


Joined: 16 Dec 2005
Posts: 881

PostPosted: Sat Jul 20, 2024 9:20 am    Post subject: Reply with quote

lars_the_bear wrote:
Thanks. I wonder whether Gentoo is really appropriate for routine, day-to-day use on modest hardware? It seems, perhaps, that the typical Gentoo user is someone who has a bunch of computers, probably high-end, and doesn't mind spending time tweaking them.

I'm using low-end passively cooled hardware and i'm always using the system i'm updating.

My way to cope with the load:
- Update only once every 3 months (updates will take a long time, but system is usable between updates)
- If the load of the update keeps you from doing what you need to do you can try to reduce the MAKEOPTS -j<something>. For example my server has 8 Atom cores, but i'm using only 6 for updates so two cores are available for its usual server processes. Of course the update will take longer, but your system will be usable during the update
- You can also try to give portage a lower priority, so it will still take every bit of CPU you have, but other processes will get priority (get more CPU time) than portage. See man make.conf and checkout PORTAGE_NICENESS or search for priority.
_________________
The gentoo way of bringing peace to the world:
USE="-war" emerge --newuse @world

My shared code repository: https://code.pa4wdh.nl.eu.org
Music, Free as in Freedom: https://www.jamendo.com
Back to top
View user's profile Send private message
lekto
Apprentice
Apprentice


Joined: 20 Sep 2014
Posts: 207
Location: Ancient Rome

PostPosted: Sat Jul 20, 2024 11:04 am    Post subject: Reply with quote

How about building packages in a cloud? At least the big ones.
Back to top
View user's profile Send private message
lars_the_bear
Guru
Guru


Joined: 05 Jun 2024
Posts: 515

PostPosted: Sat Jul 20, 2024 11:27 am    Post subject: Reply with quote

pa4wdh wrote:

- Update only once every 3 months (updates will take a long time, but system is usable between updates)


Thanks May I ask how long a 'long time' is?

I've assumed that updates will take longer if they are less frequent, but perhaps that's not always the case. If you update only once every 3 months, you might miss out of two releases of Firefox; but perhaps that's not the end of the world?

With hindsight, I can see that a red hot-running laptop isn't the ideal platform for Gentoo. Unfortunately, all my laptops are of this kind. These ThinkPads aren't really laptops at all -- they're marketed as 'mobile workstations'. I suspect that owners don't usually put them on their laps. There's a reason they have 200W PSUs.

There's no problem using these laptops while updating -- not from a CPU point of view. It's just the fan noise and the fire risk.

I guess I'll keep using Gentoo on my laptop, and see how long an update takes in three months, with the CPU throttled to a safe temperature.

BR, Lars.
Back to top
View user's profile Send private message
sdauth
l33t
l33t


Joined: 19 Sep 2018
Posts: 644
Location: Ásgarðr

PostPosted: Sat Jul 20, 2024 11:47 am    Post subject: Reply with quote

@lars_the_bear: Have you tried to replace the thermal paste on the cpu ? It is relatively easy and quick to access the CPU on the T series. (I have a T400 & T420, from experience, every two years or so, a complete cleaning of fans is needed otherwise air doesn't come out or barely and temps are rising really fast)
So maybe dust accumulated in the heatsink too. If it can run a bit cooler, you would at least be able to avoid throttling.
Back to top
View user's profile Send private message
pa4wdh
l33t
l33t


Joined: 16 Dec 2005
Posts: 881

PostPosted: Sat Jul 20, 2024 11:53 am    Post subject: Reply with quote

Quote:
Thanks May I ask how long a 'long time' is?

Sure. On my desktop with libreoffice, firefox, thunderbird, lxqt and some other random stuff installed it usually takes a few days of 24x7 compiling. Libreoffice, gcc and rust are usually the biggest contributors to that time.
To give you some real-world numbers:
Code:

2024-04-21T20:19:58 >>> sys-devel/gcc-13.2.1_p20240210: 1:31:54
2024-04-22T07:34:03 >>> dev-lang/rust-1.75.0-r1: 2:46:10
2024-04-22T23:50:01 >>> app-office/libreoffice-7.6.4.1: 3:44:49
2024-06-16T14:19:02 >>> www-client/firefox-115.9.0: 2:23:02

Keep in mind that this system has a Pentium J5040 CPU, probably comparable to an old Core I3.
(Also note the times, a result of running 24x7 during updates).

Quote:
I've assumed that updates will take longer if they are less frequent, but perhaps that's not always the case. If you update only once every 3 months, you might miss out of two releases of Firefox; but perhaps that's not the end of the world?

There are basically two things: Yes, with a longer interval there are more packages which need to be updated so it takes longer.
On the other side, i think rust is released every 6 weeks or so, so my 3-month cycle can skip 1 or 2 versions. So my big once in 3 months update will take less time than all the small updates if i updated (for example) every week. Similar reasoning can be applied to other big packages. With rust i sometimes even explicitly exclude it from the update if it isn't required.
In my experience (mainly running with stable packages, with some small exceptions) 3 months is short enough not to run into problems you wouldn't have with a shorter cycle.

Quote:

With hindsight, I can see that a red hot-running laptop isn't the ideal platform for Gentoo. Unfortunately, all my laptops are of this kind. These ThinkPads aren't really laptops at all -- they're marketed as 'mobile workstations'. I suspect that owners don't usually put them on their laps. There's a reason they have 200W PSUs.

For my passively cooled PC i wrote this daemon: https://code.pa4wdh.nl.eu.org/tools/cputemp2maxfreq/about/
It scales down the (maximum) CPU frequency based on it's temperature. It keeps my system at about 70 degrees during high load by lowering the frequency from its hardware maximum of 3,2 GHz to 2,3 GHz.
Maybe it's useful for you too.
_________________
The gentoo way of bringing peace to the world:
USE="-war" emerge --newuse @world

My shared code repository: https://code.pa4wdh.nl.eu.org
Music, Free as in Freedom: https://www.jamendo.com


Last edited by pa4wdh on Sat Jul 20, 2024 8:24 pm; edited 1 time in total
Back to top
View user's profile Send private message
lars_the_bear
Guru
Guru


Joined: 05 Jun 2024
Posts: 515

PostPosted: Sat Jul 20, 2024 4:49 pm    Post subject: Reply with quote

sdauth wrote:
@lars_the_bear: Have you tried to replace the thermal paste on the cpu ?


To be honest, although I'm not sure there's any fault, I'd try this if it were easy. But getting to the cooling bits on the T540p is horrible. Odd, really, because everything else is reasonably accessible.

I've had the T540p since new, and it's always run hot. The manual even has a section on preventing heat damage to the user by, for example, 'periodically lifting your fingers from the keyboard'. I don't think there's any problem with the cooling system -- blistering hot air blasts out of the exhaust, which suggests it's picking up plenty of heat from somewhere. I guess you don't supply a 200W PSU unless your product uses a lot of power, and it's all going to end up as heat, sooner or later.

While my T540p has always run hot, it's burned more CPU cycles in the two months I've had Gentoo on it, than in the last six years. I'm not entirely happy about the temperature, even thought the unit seems designed to run that way. I'm not sure it's designed to blast out 200W for days on end.
Back to top
View user's profile Send private message
pjp
Administrator
Administrator


Joined: 16 Apr 2002
Posts: 20484

PostPosted: Sat Jul 20, 2024 9:19 pm    Post subject: Reply with quote

lars_the_bear wrote:
Your situation seems somewhat similar to mine, and it seems you've been using Gentoo for ~20 years. So I guess you could teach me something ;)

But -- on a 2010 PC, how long does it take to build GCC, or Rust? Doesn't this PC have to be compiling constantly?
Seems as though I built it in late 2012, but the CPU (or versions of it) were first available in Feb 2009. Apparently the 965 was a "top-level" processor when it was relased, but 3.5+ years later, it wasn't particularly expensive.

I don't use rust, so I don't build it. I use rust-bin. The last gcc I updated was sys-devel/gcc-13.2.1_p20240210 that took 3h 55m to build. The latest esr firefox took a bit under 4h 20m to build. I (usually) don't build "big" packages at the same time.

For a while I've been updating daily*. I sync from the host then update it. I then share a squashfs image of ::gentoo with the chroot. Usually updates don't take long, so I update the chroot next. It uses X, so it's updates aren't always the same. Then depending on what updates I've had, I update the laptop (usually) once per week with binaries built in the chroot on the host.

* Updating daily is kind of a pain, but I previously delayed updates and it felt like I was spending a lot more time resolving some kind of issue (many of my own choosing. Not wanting package x, or delaying package y, etc.). Add in python upgrades or other issues, and doing it daily makes it somewhat easier.

One advantage of using squashfs images is that if I miss a day, Older images are retained for a while (check a mirror under "gentoo/snapshots/squashfs"). Daily images appear to be retained for the current and previous month. Prior to that, there's one per month back to 2016. So if I'm not able to update daily for a while, I still often get a couple or few images for a given week.

There's still room for improvement in my workflow, but it's currently to the point that improving it would be quite a bit more work than I want to spend. As I'm not familiar with any automated build environments, it's easy to do other things I'd rather be doing.


lars_the_bear wrote:
My wife isn't keen on having a stack of computer fans whirring away all day and night. I get away with the Raspberry Pi's, because they're fanless, and only use about 2W of power. Maybe what I need is some sort of low-power, fanless x86 board, that is capable of building Gentoo binaries? It wouldn't matter if it had to run continuously, and the whole process could be automated.
I've found fanless to be either very expensive or too slow. Even for an older PC, you can probably upgrade to quieter fans if need be. A lot may depend on your environment and situation. My careers is computer based, so I'm going to have at least one PC and one laptop. I'm not willing to spend the money for a usable fanless system, and ARM/64 still seems geared more toward a tinkerer than someone who wants to use a computer.

Once in a while I consider doing something with an ARM... system, but then I see what people are dealing with and quickly dismiss the idea. I'm not interested in 3D printing parts for it, a bunch of dongles coming out of a tiny package that's awkward to stow out of the way. And not many have at least 2 NICs, since I'd mostly be using them as headless devices. The days when I wanted to do that sort of thing are mostly gone.

lars_the_bear wrote:
But it all seems like a lot of work, just to run a laptop. I'm curious about how you manage your set-up, at a practical level.
Hopefully that was useful, Ask if there's anything else you think might be useful. To be honest, I'd switch to a binary distro if I thought it would be easier. Given my previously mentioned constraints, I don't think one exists.
_________________
Quis separabit? Quo animo?
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Other Things Gentoo All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum