View previous topic :: View next topic |
Author |
Message |
CWP n00b
Joined: 01 Mar 2006 Posts: 4
|
Posted: Sun May 14, 2006 9:44 pm Post subject: Decreasing compile times on an old system. |
|
|
I have an old, underclocked P3 system acting as a router and file server. I also have three fast computers that can be used for compiling, but won't be running Linux full time. Since this P3 system is so slow (and the underclocking makes it even more unsuitable for compiling), I went through some ideas to speed up the compilation times, but with some limited success:
- Using distcc to distribute the work over the three computers. However, the preprocessing part is slow. I find that the three computers have to wait for their jobs rather than the slow computer waiting for the finished objects. In addition, some packages force -j1, which is not helpful in my case.
- I have a dedicated hard disk converted to a removable drive and installed on the fastest of the three computers to precompile binary packages configured with the same CFLAGS and USE flags. /usr/portage/distfiles and packages are shared via NFS. Unfortunately, emerge --sync takes time to complete and I've been reading a few threads here that points the finger at the binaries. Also, some of the time, after emerge --sync finishes on both computers, it tells me to do fixpackages. That, of course, takes time, so I try to ignore it. There's also some packages that portage won't emerge from binaries (eg, when emerging spamassassin, most of the dependencies will not get emerged, even with -k or -K).
So here's something that I came up with to target my specific scenario, but I'm not sure whether there are some unforeseeable problems that may occur.
Using the hard disk from the second method above, mount the / and other necessary partitions of the slow computer via NFS to a folder in the fast computer. Chroot to this new environment and compile the packages as if it were on the fast computer.
So, any thoughts on this setup? |
|
Back to top |
|
|
rokstar83 Guru
Joined: 09 Apr 2005 Posts: 423 Location: MD
|
Posted: Mon May 15, 2006 6:25 pm Post subject: |
|
|
https://forums.gentoo.org/viewtopic-t-462437-highlight-.html
I've been thinking about doing something along the same lines, in an effort to do something a little simpler than having a build host. The only problem i've encounter thus far is a permission problem. I get something to the effect of:
failed to read /root/.bashrc: permission denied
after the chroot call. I imagine although haven't tried yet, chrooting as a non root user would result in the same problem. I'm not an expert on the subject but I was thinking if there was a central authentication system between the two machines it might take care of the issue. I dunno those are my thoughts. |
|
Back to top |
|
|
CWP n00b
Joined: 01 Mar 2006 Posts: 4
|
Posted: Tue May 16, 2006 3:23 pm Post subject: |
|
|
Ahh, ok. After reading the links by aries I guess I can go ahead with it. I knew somebody had thought of the idea before.
As for the permissions problem, sorry. I didn't encounter any problems with that. |
|
Back to top |
|
|
|
|
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
|
|