Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 02 Jun 2005 15:22:50 +0300
From:      Maxim Sobolev <sobomax@portaone.com>
To:        =?ISO-8859-1?Q?Dag-Erling_Sm=F8rgrav?= <des@des.no>
Cc:        cvs-src@FreeBSD.org, Scott Long <scottl@samsco.org>, Tim Kientzle <kientzle@FreeBSD.org>, cvs-all@FreeBSD.org, src-committers@FreeBSD.org
Subject:   Re: cvs commit: src/lib/libarchive archive_private.h archive_read.c archive_read_data_into_fd.c archive_write.c archive_write_set_compression_bzip2.c archive_write_set_compression_gzip.c archive_write_set_compression_none.c
Message-ID:  <429EFA1A.1050503@portaone.com>
In-Reply-To: <867jhdnj2o.fsf@xps.des.no>
References:  <200506011552.j51FqdR2046893@repoman.freebsd.org> <429DED77.9050003@samsco.org> <429DF37B.8010203@portaone.com> <429DF38B.2020107@samsco.org> <429DF9E9.9060307@portaone.com> <867jhdnj2o.fsf@xps.des.no>

next in thread | previous in thread | raw e-mail | index | archive | help
Dag-Erling Smørgrav wrote:
> Maxim Sobolev <sobomax@portaone.com> writes:
> 
>>Therefore, IMHO, the only realistical approach is to improve
>>tinderboxes to minimize detection window (i.e. faster, multi-CPU
>>hardware and/or tools like ccache) and to make breakage information
>>delivery more direct.
> 
> 
> Faster, multi-CPU hardware will not help.  The tinderbox is
> constrained by memory bandwidth, not CPU speed.  A cluster of seven
> $200 Mini-ITX boxes can do a full -CURRENT tinderbox run in two or
> three hours, vs. eight to ten hours on a single $1400 box.
> 
> Ccache won't help either, because buildworld always starts by building
> a new toolchain, which invalidates the cache.

Yes, but ccache can be easily extended to make it useable for 
buildworlds. Currently it uses path to, last modification time of (and 
probably size of) the compiler binary to decide validity of existing 
cache, which is not very intelligent check. I've verified that albeit 
they have different modification times (obviously), every buildworld 
produces compiler binaries with the same MD5 checksum. Therefore ccache 
can be extended to keep table with four values {path, modtime, size, 
MD5} for each compiler binary, so that it can lookup the MD5 checksum 
based on path, modtime and size of compiler binary and the use that MD5 
for deciding upon validity of the cache.

-Maxim



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?429EFA1A.1050503>