https://github.com/dyung updated https://github.com/llvm/llvm-project/pull/222172
>From 4a9562cdbd75bfe01d78c04d562caf3c86cfe5a8 Mon Sep 17 00:00:00 2001 From: Keith Smiley <[email protected]> Date: Tue, 8 Sep 2026 11:25:49 -0700 Subject: [PATCH] workflows/release-binaries: Fix zstd compression (#219587) 23.1.0 was the first e2e release with zstd archives. I noticed that once it shipped they didn't have a meaningful size improvement over the pre-existing archives. Turns out this is because by default zstd compresses over a 128MB window which wasn't large enough to get meaningful savings. We now use 1GB for this which uses more memory but should take the archive from the 1.8GB that the xz release is, to ~1gb. I played around with a few options and this was the best time vs compress vs memory usage ratio. Assisted-By: codex (cherry picked from commit 9f51fa4e9ead0da931c1f7b5d2aa3fdbc62c845e) --- .github/workflows/release-binaries.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/release-binaries.yml b/.github/workflows/release-binaries.yml index b113456a319ca..6d89a03f47e23 100644 --- a/.github/workflows/release-binaries.yml +++ b/.github/workflows/release-binaries.yml @@ -327,7 +327,11 @@ jobs: RELEASE_BINARY_FILENAME_ZSTD: ${{ needs.prepare.outputs.release-binary-filename-zstd }} ZSTD: ${{ inputs.runs-on == 'windows-11-arm' && './zstd.exe' || 'zstd' }} run: | - xz -dc "$RELEASE_BINARY_FILENAME" | "$ZSTD" --ultra -22 -T0 -o "$RELEASE_BINARY_FILENAME_ZSTD" + # A 1 GiB window captures duplicate code across the large statically + # linked tools. Four workers keep memory use within runner limits. + xz -dc "$RELEASE_BINARY_FILENAME" | \ + "$ZSTD" --ultra -21 --long=30 -T4 -B1024M \ + -o "$RELEASE_BINARY_FILENAME_ZSTD" - name: Generate sha256 digest for binaries id: digest _______________________________________________ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
