FS#1484 - pkgmk: parallel compression/decompression
bsdtar has the --use-compress-program option which can be used with compressors running with multiple threads. I've attached two patches to allow this kind of usage, with two different approaches.
I've summarily tested them with opt/mupdf (using a NVMe drive).
The decompression showed no visible improvements in this case, but the compression did:
110s (-J)
20s (--use-compress-program pxz)
25s (-j)
3s (--use-compress-program lbzip2)
4s (--use-compress-program pbzip2)
11s (-z)
1s (--use-compress-program pigz)
The deepthought repo has the pigz port and mine the others.
I might add a /etc/pkgmk.conf 'plugin' in my pkgmk.conf port in the future.
Loading...
Available keyboard shortcuts
- Alt + ⇧ Shift + l Login Dialog / Logout
- Alt + ⇧ Shift + a Add new task
- Alt + ⇧ Shift + m My searches
- Alt + ⇧ Shift + t focus taskid search
Tasklist
- o open selected task
- j move cursor down
- k move cursor up
Task Details
- n Next task
- p Previous task
- Alt + ⇧ Shift + e ↵ Enter Edit this task
- Alt + ⇧ Shift + w watch task
- Alt + ⇧ Shift + y Close Task
Task Editing
- Alt + ⇧ Shift + s save task
A pkgmk.conf patch for the second approach is here (https://github.com/therealfun/crux-ports/blob/master/pkgmk.conf/FS1484.orig) with the bsdtar_X functions changed to use the parallel compressors.
You can use xz parallel compression without patching pkgmk https://crux.nu/Wiki/HowToSpeedUpBuildingPackages#xz-threads