36 lines
1.2 KiB
Diff
36 lines
1.2 KiB
Diff
|
From a3bfaa191958c4b70d6c674f972c3b911f8b1bfa Mon Sep 17 00:00:00 2001
|
||
|
From: Vratislav Podzimek <vpodzime@redhat.com>
|
||
|
Date: Wed, 13 Nov 2013 13:20:39 +0100
|
||
|
Subject: [PATCH] Run 'xz' and 'lzma' with multiple threads
|
||
|
|
||
|
This speeds up compression a lot on multicore systems.
|
||
|
|
||
|
https://bugzilla.redhat.com/show_bug.cgi?id=1029786
|
||
|
|
||
|
[Edited-by: Harald Hoyer: use getconf for cpu_count]
|
||
|
---
|
||
|
dracut.sh | 6 ++++--
|
||
|
1 file changed, 4 insertions(+), 2 deletions(-)
|
||
|
|
||
|
diff --git a/dracut.sh b/dracut.sh
|
||
|
index 03472ba..bce2662 100755
|
||
|
--- a/dracut.sh
|
||
|
+++ b/dracut.sh
|
||
|
@@ -693,12 +693,14 @@ stdloglvl=$((stdloglvl + verbosity_mod_l))
|
||
|
# eliminate IFS hackery when messing with fw_dir
|
||
|
fw_dir=${fw_dir//:/ }
|
||
|
|
||
|
+cpu_count=$(getconf _NPROCESSORS_ONLN)
|
||
|
+
|
||
|
# handle compression options.
|
||
|
[[ $compress ]] || compress="gzip"
|
||
|
case $compress in
|
||
|
bzip2) compress="bzip2 -9";;
|
||
|
- lzma) compress="lzma -9";;
|
||
|
- xz) compress="xz --check=crc32 --lzma2=dict=1MiB";;
|
||
|
+ lzma) compress="lzma -9 ${cpu_count:+-T$cpu_count}";;
|
||
|
+ xz) compress="xz --check=crc32 --lzma2=dict=1MiB ${cpu_count:+-T$cpu_count}";;
|
||
|
gzip) compress="gzip -9"; command -v pigz > /dev/null 2>&1 && compress="pigz -9";;
|
||
|
lzo) compress="lzop -9";;
|
||
|
lz4) compress="lz4 -9";;
|