[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bootstrapping a rootfs in an emulated arm64 chroot is extremely slow from amd64 host



On Thu, 11 Sep 2025, Bagg Tobias (ETAS-ICA/XPC-Fe3) wrote:

Severity: important


Hi,

I'm not sure whether this is the correct mailing list, but I can't determine a certain package for this problem ...

After upgrading from Debian Bookworm to Trixie I can notice that setting up an arm64 rootfs in a chroot environment became extremely slow.

I tried multiple host systems (WSL and Ubuntu) and both QEMU versions (backported version from trixie) on bookworm. The results below are the same.

Trixie:
$ sudo debootstrap --arch arm64 --components=main,contrib,non-free,non-free-firmware trixie trixie
$ pushd trixie/
$ sudo mount -t proc /proc proc/
$ sudo mount -t sysfs /sys sys/
$ sudo mount -t devpts /dev/pts dev/pts/
$ popd
$ sudo chroot trixie/
$ time apt update
real    0m29.622s
user    0m29.397s
sys     0m0.100s
$ time apt install python3-virtualenv --no-install-recommends
real    1m30.492s
user    1m31.017s
sys     0m0.942s
$ virtualenv /opt/trixie && source /opt/trixie/bin/activate
$ time pip install --only-binary=:all: Jinja2 Werkzeug Flask debugpy gunicorn
real    1m12.281s
user    1m11.051s
sys     0m0.260s

Bookworm:
$ sudo debootstrap --arch arm64 --components=main,contrib,non-free,non-free-firmware bookworm bookworm
$ pushd bookworm/
$ sudo mount -t proc /proc proc/
$ sudo mount -t sysfs /sys sys/
$ sudo mount -t devpts /dev/pts dev/pts/
$ popd
$ sudo chroot bookworm/
$ time apt update
real    0m5.977s
user    0m5.727s
sys     0m0.167s
$ time apt install python3-virtualenv --no-install-recommends
real    0m20.539s
user    0m18.112s
sys     0m0.800s
$ virtualenv /opt/bookworm && source /opt/bookworm/bin/activate
$ time pip install --only-binary=:all: Jinja2 Werkzeug Flask debugpy gunicorn
real    0m10.373s
user    0m9.387s
sys     0m0.160s

I'm not sure, but it seems everything related to IO (network stuff and unpacking via apt or pip) is much slower.
I think this problem is similar or the same as for Bug #1071369, but the scope is not just python-venv/python-minimal as e.g., apt is also slower.


I'm not 100% clear what you're asking about but I'm assuming your host system is the same for the two tests?


log.20250908-050003/tarfiles.log:Check rebuild bookworm.arm64.minimal.sqfs at Mon Sep  8 06:01:35 UTC 2025
log.20250908-050003/tarfiles.log:gensquashfs bookworm.arm64.minimal.sqfs start at Mon Sep  8 06:14:12 UTC 2025
log.20250908-050003/tarfiles.log:gensquashfs bookworm.arm64.minimal.sqfs done at Mon Sep  8 06:16:28 UTC 2025

log.20250908-050003/tarfiles.log:Check rebuild trixie.arm64.minimal.sqfs at Mon Sep  8 15:27:10 UTC 2025
log.20250908-050003/tarfiles.log:gensquashfs trixie.arm64.minimal.sqfs start at Mon Sep  8 15:46:55 UTC 2025
log.20250908-050003/tarfiles.log:gensquashfs trixie.arm64.minimal.sqfs done at Mon Sep  8 15:49:29 UTC 2025

I don't have data to see why trixie is slower but 13 to 19 minutes to prepare the 40MB image but almost exactly the same time to compress it.

This is on a bookworm amd64 host with 1 cpu and not much RAM). I will add logging to see why it's slower but that won't be for a few weeks.

It's at least plausible that I'm seeing something similar.

Tim.






Reply to: