Openembedded Core Discussions
 help / color / mirror / Atom feed
From: "Fredrik Gustafsson" <fredrik.gustafsson@axis.com>
To: <openembedded-core@lists.openembedded.org>
Cc: <tools-cfpbuild-internal@axis.com>, <hugo.cedervall@axis.com>
Subject: Add package managers as a plugin
Date: Tue, 23 Jun 2020 13:13:26 +0200	[thread overview]
Message-ID: <20200623111328.5838-1-fredrigu@axis.com> (raw)

Poky today has three different package managers, the well-known formats deb
and rpm is supported as well as ipkg that is good for embedded devices.

When building and having a good cache hit, a significant amount of time is
spent in the phase of generating a rootfs, which is really about the
performance of the package manager. ipkg is way slower than deb or rpm. To
save build time and also get a package manager that is suitanle for use on
targets where flash memory is a concern, support for apk is suggested.

However, it might or might not be what's wanted for Poky since it increases
the test matrix. Therefore this patch series refactors the package
management code so that it's possible to add more package managers in other
own layer. I will send another patch serie that will add apk.

Perfomance metrics below, (note that this includes build times).

APK
===
bitbake core-image-minimal
15.84s user 2.60s system 0% cpu 1:26:19.21 total
16.01s user 2.58s system 0% cpu 1:26:03.72 total
15.69s user 2.61s system 0% cpu 1:26:45.45 total

bitbake core-image-minimal -c cleansstate
bitbake core-image-minimal -c clean
bitbake core-image-minimal -f -c do_rootfs
0.55s user 0.06s system 4% cpu 14.236 total
0.54s user 0.08s system 4% cpu 15.247 total
0.52s user 0.15s system 4% cpu 15.143 total

RPM
===
bitbake core-image-minimal
18.57s user 3.09s system 0% cpu 1:31:29.09 total
18.58s user 3.08s system 0% cpu 1:30:53.80 total
18.20s user 3.31s system 0% cpu 1:31:06.69 total

bitbake core-image-minimal -c cleansstate
bitbake core-image-minimal -c clean
bitbake core-image-minimal -c do_rootfs -f
0.58s user 0.10s system 3% cpu 19.470 total
0.57s user 0.09s system 3% cpu 19.480 total
0.60s user 0.07s system 3% cpu 20.381 total

             reply	other threads:[~2020-06-23 11:13 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-23 11:13 Fredrik Gustafsson [this message]
2020-06-23 11:13 ` [PATCH 1/2] nopackages.bbclass: Move to nopackages_base.bbclass Fredrik Gustafsson
2020-06-23 11:41   ` [OE-core] " Richard Purdie
2020-06-23 11:13 ` [PATCH 2/2] lib/oe: Split package manager code to multiple files Fredrik Gustafsson
2020-06-23 12:02   ` [OE-core] " Richard Purdie
2020-06-23 12:12     ` Fredrik Gustafsson
2020-06-23 12:23       ` Paul Barker
2020-06-23 11:32 ` ✗ patchtest: failure for "nopackages.bbclass: Move to no..." and 1 more Patchwork
2020-06-23 18:50 ` [OE-core] Add package managers as a plugin Denys Dmytriyenko
2020-06-30 15:15   ` Fredrik Gustafsson
2020-06-24 15:18 ` Alex Stewart
2020-06-30 18:38   ` Fredrik Gustafsson
2020-06-30 20:22     ` Alex Stewart
  -- strict thread matches above, loose matches on Subject: below --
2020-06-25 10:13 Fredrik Gustafsson
2020-06-25 10:21 Fredrik Gustafsson
2020-07-01  8:46 Fredrik Gustafsson
2020-07-02 19:29 Fredrik Gustafsson

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=20200623111328.5838-1-fredrigu@axis.com \
    --to=fredrik.gustafsson@axis.com \
    --cc=hugo.cedervall@axis.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=tools-cfpbuild-internal@axis.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