Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Richard Purdie <richard.purdie@linuxfoundation.org>
To: Mikko Rapeli <mikko.rapeli@linaro.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 11:10:11 +0000	[thread overview]
Message-ID: <a88e3f9bf38ddcc32cec143d1d9fb664b5a6e033.camel@linuxfoundation.org> (raw)
In-Reply-To: <Zz8Sx6-TzVwnYQJ3@nuoska>

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 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.

Cheers,

Richard




  reply	other threads:[~2024-11-21 11:10 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 [this message]
2024-11-21 11:22     ` Mikko Rapeli

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=a88e3f9bf38ddcc32cec143d1d9fb664b5a6e033.camel@linuxfoundation.org \
    --to=richard.purdie@linuxfoundation.org \
    --cc=mhalstead@linuxfoundation.org \
    --cc=mikko.rapeli@linaro.org \
    --cc=openembedded-core@lists.openembedded.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