
On Wed, Jul 21, 2021 at 06:39:07AM -0400, Andrea Bolognani wrote:
On Tue, Jul 20, 2021 at 04:05:22PM +0100, Daniel P. Berrangé wrote:
For macOS you always get the maximum configuration by default (12 CPUs, 24 GB RAM), but for FreeBSD you get 2 CPUs, 4 GBs by default. This change increases the allocation to 8 CPUs, 8 GBs for FreeBSD.
--- In theory this could make builds quicker. In practice I've not been able to measure a difference due to large variance between runs.
Should we actually do this? The fact that FreeBSD builds take so much time is painful, but if you haven't been able to measure significant improvements from maximizing the number of CPUs assigned to the VM then perhaps other factors such as slow disk speed are to blame instead. In fact, looking at recent jobs it looks like they mostly fall in line with Linux builds...
Yeah, I'm in two minds and just sent this patch to get a second opinion. I noticed the ability to configure this when switching QEMU to use lcitool for generating the freebsd/macos configuration. The increase in resources for FreeBSD VMs made a significant difference to QEMU build times - the difference between passing and hitting the job limit timeout. Thus I'm really puzzelled why libvirt didn't see a real benefit when I tested it. As you say though, FreeBSD builds are no worse than Linux builds, so it isn't critical for us.
We certainly don't need 24 GiB of RAM to build libvirt, and grabbing 12 CPUs seems excessively greedy too. Can we try being nice citizens instead, and allocate something like 4 CPUs and 2 GiB of RAM across the board? I expect that the resulting build times would still be close to what we're seeing for containerized Linux builds, and so the overall pipeline completion time won't be negatively affected.
FWIW, for macOS systems you get the maximum resources no matter what, as they always allocate you an entire system. I presume this is because macOS builders run on physical hardware due to macOS license rules preventing VM usages. Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|