On Wed, 13 Jan 2021 16:34:43 +0100, Jan Engelhardt wrote:
On Wednesday 2021-01-13 15:41, Takashi Iwai wrote:
It is the dracut initrd regeneration for me actually, even on SSD it takes *minutes* :).
That's a long-standing pain, yeah. Did anyone profile the dracut operation to point out what takes so long? I know xz takes quite some time, but it's not dominant, I guess.
Quite the contrary.
Intel 8250U, Leap, dracut 049, initramfs slightly fatter due to dm_crypt etc.
defaults (xz -0 --check=crc32 --memlimit-compress=50) 9.7s compress=cat 8.6s ... 29.91MB compress="zstd -T0" 9.4s compress="xz -6 -T0" 18.5s
Compression makes up 11%.
Hm, zstd is almost comparable with xz in this case, but ...
Intel 4700U, Tumbleweed du jour, dracut 051
defaults (xz --check=crc32 --lzma2=dict=1MiB -T0) 10.4s compress=cat 7.5s ... 38.0MB compress="zstd -T0" 7.7s compress="xz -6 -T0" 17.9s
Compression is 27%.
... here is much faster. What makes so different? Or is it about the different xz options? If switching to zstd makes things better, it should be a nice low-hanging fruit; the current kernel already supports zstd initrd.
AMD 5700X, Tumbleweed du jour
defaults (xz --check=crc32 --lzma2=dict=1MiB -T0) 5.2s compress=cat 3.6s ... 26.7MB compress="xz -6 -T0" 10.3s
Compression makes up 30%.
Interested in the number of zstd on AMD, too :) thanks, Takashi