Hi Benjamin, I am also not seeing much difference on VIM4. The dracut-install version 060+5-1ubuntu3.2~ppa1 is providing only 200-300 ms improvement over 060+5-1ubuntu3.1 version.
On Tue, Jul 2, 2024 at 12:10 AM Benjamin Drung <[email protected]> wrote: > There is another performance improvement upstream: > https://github.com/dracut-ng/dracut-ng/pull/408 > > I tested this change a Raspberry Pi Zero 2W, but it had no measurable > performance improvement: > > ``` > $ sudo hyperfine --warmup 1 -r 10 "update-initramfs -u" > Benchmark 1: update-initramfs -u > Time (mean ± σ): 249.595 s ± 7.243 s [User: 66.584 s, System: > 170.342 s] > Range (min … max): 240.879 s … 260.506 s 10 runs > ``` > > Dave, can you test dracut 060+5-1ubuntu3.2~ppa1 from > https://launchpad.net/~bdrung/+archive/ubuntu/ppa to see if that would > improve the situation on the other Pis? Viraniac, could you test that > version on your VIM4? > > -- > You received this bug notification because you are subscribed to the bug > report. > https://bugs.launchpad.net/bugs/2065180 > > Title: > performance regression in dracut-install 060 > > Status in Dracut: > New > Status in cryptsetup package in Ubuntu: > Fix Released > Status in dracut package in Ubuntu: > Fix Released > Status in initramfs-tools package in Ubuntu: > Fix Released > Status in lvm2 package in Ubuntu: > Fix Released > Status in miniramfs package in Ubuntu: > Fix Released > Status in thin-provisioning-tools package in Ubuntu: > Fix Released > Status in cryptsetup source package in Noble: > New > Status in dracut source package in Noble: > Fix Released > Status in initramfs-tools source package in Noble: > Incomplete > Status in lvm2 source package in Noble: > New > Status in miniramfs source package in Noble: > New > Status in thin-provisioning-tools source package in Noble: > New > > Bug description: > [ Impact ] > > When compared to Ubuntu 23.10, creating intramfs files with update- > initramfs takes 2 to 5 times more time on ARM devices. > > IIUC, dracut-install usage was added to initramfs-tools to speed up > the process. But now its way slower. Even running update-initramfs on > jammy, which doesn't use dracut-install, is way faster then the time > taken on Noble. > > first bad commit - > > https://github.com/dracutdevs/dracut/commit/3de4c7313260fb600507c9b87f780390b874c870 > > Updating the initrd on a Raspberry Pi Zero 2W on Ubuntu 24.04 (noble) > with initramfs-tools 0.142ubuntu25.1 takes over six minutes: > > ``` > bdrung@zero2w:~$ sudo hyperfine --warmup 1 -r 10 "update-initramfs -u" > Benchmark 1: update-initramfs -u > Time (mean ± σ): 402.751 s ± 5.592 s [User: 166.316 s, System: > 228.909 s] > Range (min … max): 394.380 s … 411.445 s 10 runs > ``` > > [ Test Plan ] > > 1. Measure `update-initramfs -u` before the update. > 2. Log the content of the initrd before the update: `lsinitramfs > /boot/initrd.img` > 3. update dracut-install / initramfs-tools-core > 4. Measure `update-initramfs -u`. It should be faster (the performance > improvements on amd64 should be very small and might be within the > measurement uncertainty). > 5. Check with lsinitramfs that the content of the newly generated initrd > hasn't changed. > > [ Where problems could occur ] > > The code that is responsible for including the kernel modules into the > initrd is touched. Negative consequences could be that some needed > kernel modules will not be included any more (should be covered by the > test case) or that building new initrds will fail. > > The initramfs-tools fix changes how manual_add_modules behaves. > `manual_add_modules` does not copy kernel modules, but queues them for > being copied when the newly added function `apply_add_modules` is > called. > > I checked all instances of calls to `manual_add_modules` for possible > regressions (see comment #15). Only miniramfs needs to be adjusted to > also call `apply_add_modules`. But this change could break consumers > of the `manual_add_modules` function that are outside of the Ubuntu > archive. I googled for `apply_add_modules` but found no public outside > users. > > [ Benchmarks ] > > Stock noble on a Raspberry Pi Zero 2W: > > ``` > bdrung@zero2w:~$ sudo hyperfine -r 5 "update-initramfs -u" > Benchmark 1: update-initramfs -u > Time (mean ± σ): 415.664 s ± 6.015 s [User: 166.728 s, System: 232.523 > s] > Range (min … max): 409.139 s … 422.632 s 5 runs > ``` > > noble with dracut-install 060+5-1ubuntu3.1 (with linux 6.8.0-1006.6 on > 2024-07-01): > > ``` > bdrung@zero2w:~$ sudo hyperfine --warmup 1 -r 10 "update-initramfs -u" > Benchmark 1: update-initramfs -u > Time (mean ± σ): 248.054 s ± 5.569 s [User: 67.410 s, System: > 169.412 s] > Range (min … max): 238.909 s … 257.384 s 10 runs > ``` > > [ Other Info ] > > $ lsb_release -rd > No LSB modules are available. > Description: Ubuntu 24.04 LTS > Release: 24.04 > > $ apt-cache policy dracut-install > dracut-install: > Installed: 060+5-1ubuntu3 > Candidate: 060+5-1ubuntu3 > Version table: > *** 060+5-1ubuntu3 500 > 500 http://ports.ubuntu.com/ubuntu-ports noble/main arm64 > Packages > 100 /var/lib/dpkg/status > > To manage notifications about this bug go to: > https://bugs.launchpad.net/dracut/+bug/2065180/+subscriptions > > -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2065180 Title: performance regression in dracut-install 060 To manage notifications about this bug go to: https://bugs.launchpad.net/dracut/+bug/2065180/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
