RFC: Primary architecture promotion requirements
jwboyer at gmail.com
Tue Mar 20 16:08:16 UTC 2012
On Tue, Mar 20, 2012 at 11:58 AM, Brendan Conoboy <blc at redhat.com> wrote:
> On 03/20/2012 08:24 AM, Jakub Jelinek wrote:
>> I think the speed of the build hardware should be also part of the
>> as all primary architectures are built synchronously. GCC on x86_64/i686
>> currently builds often in 2 hours, sometimes in 4 hours if a slower or
>> busy box is chosen, but on ARM it regularly builds 2 days. That is a slow
>> down factor of 12x-24x, guess for other larger packages it is similar.
> Our current build systems can turn GCC 4.7 around in about 24 hours. The
> enterprise hardware we anticipate using will take that down to about 12
> hours. If speed of build hardware is a consideration, where do you draw the
> line? No secondary arch is going to get to the speed of x86_64 in the
> foreseeable future, so it's effectively a way to keep PA an exclusive x86
> I think the real question is, for the developers of on devel-list, how will
> longer builds for one arch than another affect your workflow? If builds on
> two architectures start at the same time, but one takes longer to finish
> than the other, how will that impact you? Right now you'll still be able to
> see and use the results of the faster build before the slower build
> completes, so are you materially impacted?
I thought about this a bit yesterday. My conclusions are that it will
impact people in 2 cases.
1) The build works fine on i686 and x86_64 and completes in the current
"normal" time, but then the ARM build fails some number of minutes/hours
later. For most packages, that likely isn't a big deal but for large
packages like gcc and the kernel, I could have done exactly what you
propose and downloaded the x86 results while waiting hours for ARM to
complete and tested. If the ARM build fails while I'm doing that, I need
to go and redo that testing after ARM is fixed because it failing will fail
the entire koji build.
2) Updates. Submitting updates requires the entire build to be complete
which means you have to wait for the slowest thing to finish. Having to
wait for 12 hours effectively means you can't even test your update until
the next day, and then after you test it you can submit it. Again, this
is mostly compounded for large packages, but it does impact workflow.
More information about the devel