Based on: #21375
When running guix builds, I’ve found that a large portion of the time was being allocated to gzip
. Therefore I experimented with replacing gzip
with pigz
, which makes use of multiple cores. Here are the wall-clock durations for building all architectures on my workstation (AMD Ryzen Threadripper 2970WX 24-Core Processor):
no depends cache | depends cache | |
---|---|---|
gzip | 93.19 mins | 44.75 mins |
pigz | 75.76 mins | 27.37 mins |
change | -17.43 mins (-19%) | -17.38 mins (-39%) |
However, I do understand if people don’t think the gains are worth increasing our manifest size. Please let me know what you think!
0$ find guix-build-$(git rev-parse --short=12 HEAD)/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum
1c5c26a1f9048ffe786d956cc4fc7ec3347a6084d0f91cc83bb40a775c57ad0dc guix-build-ed8cfdd531de/output/aarch64-linux-gnu/bitcoin-ed8cfdd531de-aarch64-linux-gnu-debug.tar.gz
28cbc109723f8877e98b7d453ffc3b41d7a443105a1e3325c59cb3d3ef24ae504 guix-build-ed8cfdd531de/output/aarch64-linux-gnu/bitcoin-ed8cfdd531de-aarch64-linux-gnu.tar.gz
354d49f2aabb365aade70f7097d903fc3879405170d729c26de385ec1efde3d26 guix-build-ed8cfdd531de/output/arm-linux-gnueabihf/bitcoin-ed8cfdd531de-arm-linux-gnueabihf-debug.tar.gz
42613ecc288989f2abe0037f2158b321b9991689d4cce0576aebc2eb4ad2eb0aa guix-build-ed8cfdd531de/output/arm-linux-gnueabihf/bitcoin-ed8cfdd531de-arm-linux-gnueabihf.tar.gz
55711f8bfbcc8c60b956bd9a74891a84972ef9568467fb04021c8315d5cb7372a guix-build-ed8cfdd531de/output/dist-archive/bitcoin-ed8cfdd531de.tar.gz
6ac4c96ec8b17e08e021628d7311966be4df198360e6564a3441fb22d1590b0fb guix-build-ed8cfdd531de/output/powerpc64-linux-gnu/bitcoin-ed8cfdd531de-powerpc64-linux-gnu-debug.tar.gz
7a84a9fe20e3f2c1ddff94794db2f5981965f48c37e5d0288ef5a6c904b4ef991 guix-build-ed8cfdd531de/output/powerpc64-linux-gnu/bitcoin-ed8cfdd531de-powerpc64-linux-gnu.tar.gz
812af621c5c081ffbe0722f24a4616e22cca0623632990231f0d4016e5821a365 guix-build-ed8cfdd531de/output/powerpc64le-linux-gnu/bitcoin-ed8cfdd531de-powerpc64le-linux-gnu-debug.tar.gz
9623f9a6055cffae19b1b352e967fb94b6fd0d9d1e4bb3cac555997308256cdf1 guix-build-ed8cfdd531de/output/powerpc64le-linux-gnu/bitcoin-ed8cfdd531de-powerpc64le-linux-gnu.tar.gz
10c47ebaa781fad44ff249b61a4d7b05214b838580546b3c11de971c639835114b guix-build-ed8cfdd531de/output/riscv64-linux-gnu/bitcoin-ed8cfdd531de-riscv64-linux-gnu-debug.tar.gz
1179717355815f39e291e5fe3ca5ba1390240344a4b9b2d12325fba9cdab81a735 guix-build-ed8cfdd531de/output/riscv64-linux-gnu/bitcoin-ed8cfdd531de-riscv64-linux-gnu.tar.gz
126db76e37fcab591c13ebd7fe2527c62415f5ca16c91a8d395c49d36d84f22211 guix-build-ed8cfdd531de/output/x86_64-apple-darwin18/bitcoin-ed8cfdd531de-osx-unsigned.dmg
13fd79d768e2478e5ab6a0534fad3c8ff033efe34dd26d98040fa8ace7c642073c guix-build-ed8cfdd531de/output/x86_64-apple-darwin18/bitcoin-ed8cfdd531de-osx-unsigned.tar.gz
1496239efb584677390a9d95c08b1ec5b29d01c40619f252eb7d2fb7ca3f6e2571 guix-build-ed8cfdd531de/output/x86_64-apple-darwin18/bitcoin-ed8cfdd531de-osx64.tar.gz
15d5c5017202f69a74e0c172295de2e08beb007c32acd7f0e6f6213a6876bf5960 guix-build-ed8cfdd531de/output/x86_64-linux-gnu/bitcoin-ed8cfdd531de-x86_64-linux-gnu-debug.tar.gz
16ff5de879eec3f3a6cdb25e50f77a105b82224bded2212411f204b414d87571f5 guix-build-ed8cfdd531de/output/x86_64-linux-gnu/bitcoin-ed8cfdd531de-x86_64-linux-gnu.tar.gz
177ab80db27c3234c09804c39c72476b6a3ea92973d783b42031ac28911c914ac2 guix-build-ed8cfdd531de/output/x86_64-w64-mingw32/bitcoin-ed8cfdd531de-win-unsigned.tar.gz
18d351fc91e7b30ab73a6debf3f6fb46a1087e4e18c48b504ff56a01f37e74151f guix-build-ed8cfdd531de/output/x86_64-w64-mingw32/bitcoin-ed8cfdd531de-win64-debug.zip
19b5bdd32eb5391e6cbb25b9ef485f386263a41651bbe7b3d48910d586e8078910 guix-build-ed8cfdd531de/output/x86_64-w64-mingw32/bitcoin-ed8cfdd531de-win64-setup-unsigned.exe
2023ea865a9916795bb3925bb9f29848e6d3b3e769d42acb99bd33880c8a0e93dc guix-build-ed8cfdd531de/output/x86_64-w64-mingw32/bitcoin-ed8cfdd531de-win64.zip