Comparing buildworld times on twin machines

Kent Stewart kstewart at owt.com
Sun Sep 28 13:54:49 PDT 2003


On Sunday 28 September 2003 01:28 pm, Charles Howse wrote:
> > On Sunday 28 September 2003 12:37 pm, Charles Howse wrote:
> > > Hi,
> > > I have 2 machines on my home network with (almost) identical
> > > hardware. They both have Celeron 300, same motherboards, same
> > > BIOS, same options set in BIOS, etc.
> > > Same make.conf, same kernel config.
> > > I kill SETI at home before starting on each machine.
> > > The only difference is that curly has 128 MB ram where
> >
> > larry has only
> >
> > > 64.
> > >
> > > They *do not*, however have identical hard drives, even though
> > > each machine has 2 drives, with /usr/obj on the second drive of
> > > each machine.
> > >
> > > When I buildworld, I use the following command, and write the
> > > output to '$blog'.
> > >
> > > [portion of script omitted, entire script is attached as
> > > update1.sh]
> > >
> > > \time -aho $$blog make buildworld
> > >
> > > [snip]
> > >
> > > Larry can buildworld in 1 hr 57 mins.
> > > It takes curly 3 hrs 16 mins, even though curly has twice the
> > > ram.
> > >
> > > If I watch the compile, with one eye on the disk activity light,
> > > it seems to me that the process is largely CPU intensive,
> > > therefore I would expect that the buildworld times should be
> > > roughly equal.
> > >
> > > 1) How can I determine what might be causing curly to take so
> > > long compared to larry?
> > >
> > > 2) Since curly runs httpd, and vsftpd, is it acceptable to run
> > > the entire build/install process in single-user mode in order to
> > > prevent other processes from eating CPU cycles?
> >
> > On my systems, which all run setiathome, I only see a few percent
> > variation in buildworld time with seti running. I start
> > setiathome with
> > a -nice 19 so that it doesn't interfere.
>
> Me, too.
>
> > You might be able to see some of the processes running using top.
> > You could always stop apache.
>
> True, I could do that, but what is your opinion on running the entire
> build/install process from single-user mode? (my original question)

That would work but I run my buildworlds from a consol in KDE and I 
don't see that much difference and running it with KDE stopped. Running 
it single user mode may be faster than shutting apache down. But then 
you won't know what caused it to begin with. 

I have scripts in /root/bin to start and stop it and start it. They are

# cat startapache
#! /bin/sh
/usr/local/sbin/apachectl start

# cat stopapache
#! /bin/sh
/usr/local/sbin/apachectl stop

>
> > I kind of wonder if you have cache turned on in the cpu. That much
> > difference is pretty hard to come up with unless your 2 daemons are
> > interfering. You might see that running top. Watch the swap to see
> > if anything is happening.
>
> Oh, geeeez, technical stuff!  ;-)  I'm a real dumbass in the BIOS.  I
> just select "Load High Performance Settings" on each machine, and
> then change the boot order to my liking.
> I did notice that 'internal cache' is set to 'write-back'.
> Am I on the right track?

I think that performance would turn things on. You may have a bad cache 
but that isn't what I would look at first. Not all Celerons have the 
same kind of cache. I gave a Celeron 433a, which had the on board 
cache, to some friends that needed a computer. I had swapped it out and 
all the needed to do was buy a montior.

Using PC-100 memory is about 15% faster than PC-66 memory. This was the 
difference in accumulated wu processing time for seti on 2xx wus with 
the different speed memory. Jumping up to PC-133 didn't change 
anything. That is like getting a cpu upgrade for just a few $s. A 128MB 
pc-100 sdimm runs around $35 at Best Buy and you know you can do better 
than that off of the Internet.

> *Exactly* how do I watch the swap...in top?
>

Watch top and see if something is forcing processes to swap by watching 
the swap line of information. 

You can also see if apache is accruing time while you do the build. It 
shows you the processes as they accrue time and which one is getting a 
lot of time is what you are looking for. You can't do this in single 
user mode because you only have the console.

Kent

-- 
Kent Stewart
Richland, WA

http://users.owt.com/kstewart/index.html



More information about the freebsd-questions mailing list