From: Mikko Rapeli <mikko.rapeli@linaro.org>
To: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Michael Halstead <mhalstead@linuxfoundation.org>,
Steve Sakoman <steve@sakoman.com>,
openembedded-core <openembedded-core@lists.openembedded.org>
Subject: Re: [OE-core] Space optimizations in kirkstone and scarthgap for sstate objects
Date: Thu, 21 Nov 2024 13:22:37 +0200 [thread overview]
Message-ID: <Zz8X_Ru0s6U87A3N@nuoska> (raw)
In-Reply-To: <a88e3f9bf38ddcc32cec143d1d9fb664b5a6e033.camel@linuxfoundation.org>
Hi,
On Thu, Nov 21, 2024 at 11:10:11AM +0000, Richard Purdie wrote:
> On Thu, 2024-11-21 at 13:00 +0200, Mikko Rapeli wrote:
> > Hi,
> >
> > On Thu, Nov 21, 2024 at 10:41:29AM +0000, Richard Purdie via lists.openembedded.org wrote:
> > > We've been trying to resolve some of our sstate CDN issues and one
> > > thing causing us big headaches are large sstate files. By far the worst
> > > offenders are webkitgtk and llvm.
> > >
> > > In master (and in styhead) we have these:
> > >
> > > https://git.yoctoproject.org/poky/commit/?id=d9066258a1e48e75cf814fb0940ac420bcdd6e99
> > > https://git.yoctoproject.org/poky/commit/?id=aca8acceb87e568115da9696732e915d91da9652
> > > https://git.yoctoproject.org/poky/commit/?id=1d8d9b1f87b21af36d9c328132f71c528eefd5b0
> > >
> > > which did significantly reduce the size of the output. Unfortunately I
> > > made the first two work with changes to DEBUG_LEVELFLAG which are not
> > > suited for backporting:
> > >
> > > https://git.yoctoproject.org/poky/commit/?id=1cf0974ad242f7eb2815a4ef0e3e5b6507ca56ea
> > > https://git.yoctoproject.org/poky/commit/?id=ae4ec59b3eff85aaa1cfe914a134e56e1d125744
> > >
> > > I do think we should apply a similar tweak to kirkstone and scarthgap
> > > though. The third patch above shouldbackport. We should be able to do
> > > something equivalent for llvm. Any thoughts?
> > >
> > > Michael obtained some sstate size info which I've shared below. You can
> > > tell the age by the sstate version number (10, 12 and 14 are kirkstone,
> > > scarthgap and styhead/master) and the recipe versions.
> >
> > Can similar changes be done via the CI build scripts in the affected branches,
> > without modifying poky?
>
> In theory, yes. I'm not sure we want to "hide" this kind of change
> though.
I understand, just wanted to show this as an option. Changes which are specific
to your infrastructure and which break stable rules could be considered
as specific to the CI build jobs you run, hence not hiding but keeping
such changes in CI scripts, which generate the build configurations
and matrixes and the local.conf's.
> > I would not mind breaking stable rules when it's about keeping upstream
> > infrastructure sane and running. Details can be documented to users if they
> > are impacted and need to revert those changes in their configuration.
>
> If we do make a change, users would easily be able to reverse it
> locally if needed.
>
> > Would be nice to know what kind of issues these are in detail and what is the CDN
> > implementation.
>
> Most CDNs have object size limits so the setup cascades through
> different levels of completely different systems to cope with our large
> object sizes.�The CDNs themselves are not designed for large objects
> either, in their view we should split these into multiple smaller
> objects. That isn't really possible without rewriting the way bitbake
> works with sstate.
>
> Objects are only pulled into the CDN at first request too, the larger
> the objects, the longer this takes. The setup has changed a bit as
> we've tried to work out how we can make it work. One issue was the size
> of the "pipe" between our servers and the CDN nodes. The new
> infrastructure/data centre location has resolved that potential
> bottleneck.
I've used "rsync sstate mirror from main server before build" as CDN
which did not break but underlying VMware virtual storage did break
under heavy bitbake load.
Cheers,
-Mikko
prev parent reply other threads:[~2024-11-21 11:22 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-11-21 10:41 Space optimizations in kirkstone and scarthgap for sstate objects Richard Purdie
2024-11-21 11:00 ` [OE-core] " Mikko Rapeli
2024-11-21 11:10 ` Richard Purdie
2024-11-21 11:22 ` Mikko Rapeli [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Zz8X_Ru0s6U87A3N@nuoska \
--to=mikko.rapeli@linaro.org \
--cc=mhalstead@linuxfoundation.org \
--cc=openembedded-core@lists.openembedded.org \
--cc=richard.purdie@linuxfoundation.org \
--cc=steve@sakoman.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox