mirror of
https://github.com/Xahau/xahaud.git
synced 2025-12-01 16:05:52 +00:00
perf: disable delta caching (use base-only mode)
OverlayFS operates at FILE LEVEL: - File modified by 8 bytes → Copy entire 500 KB file to delta - ccache updates LRU metadata (8 bytes) on every cache hit - 667 cache hits = 667 files copied = 324 MB delta (nearly full cache) What we need is BYTE LEVEL deltas: - File modified by 8 bytes → Delta is 8 bytes - 100% cache hit scenario: 10 KB delta (not 324 MB) OverlayFS is the wrong abstraction for ccache. Binary diff tools (rsync, xdelta3, borg) would work better, but require significant rework. For now: Disable deltas, use base-only caching - Base cache restore still provides massive speed boost (2-5 min vs 20-30) - Simpler, more reliable - Saves S3 bandwidth (no 324 MB delta uploads) Future: Research binary diff strategies (see Gemini prompt in session notes)
This commit is contained in:
2
.github/actions/xahau-ga-build/action.yml
vendored
2
.github/actions/xahau-ga-build/action.yml
vendored
@@ -76,6 +76,7 @@ runs:
|
||||
${{ runner.os }}-ccache-v${{ inputs.cache_version }}-${{ inputs.compiler-id }}-${{ inputs.configuration }}-${{ inputs.main_branch }}
|
||||
${{ runner.os }}-ccache-v${{ inputs.cache_version }}-${{ inputs.compiler-id }}-${{ inputs.configuration }}-
|
||||
${{ runner.os }}-ccache-v${{ inputs.cache_version }}-${{ inputs.compiler-id }}-
|
||||
use-deltas: 'false' # Disabled: OverlayFS file-level deltas incompatible with ccache's byte-level LRU updates
|
||||
aws-access-key-id: ${{ inputs.aws-access-key-id }}
|
||||
aws-secret-access-key: ${{ inputs.aws-secret-access-key }}
|
||||
|
||||
@@ -193,5 +194,6 @@ runs:
|
||||
with:
|
||||
path: ~/.ccache
|
||||
key: ${{ runner.os }}-ccache-v${{ inputs.cache_version }}-${{ inputs.compiler-id }}-${{ inputs.configuration }}-${{ steps.safe-branch.outputs.name }}
|
||||
use-deltas: 'false' # Disabled: OverlayFS file-level deltas incompatible with ccache's byte-level LRU updates
|
||||
aws-access-key-id: ${{ inputs.aws-access-key-id }}
|
||||
aws-secret-access-key: ${{ inputs.aws-secret-access-key }}
|
||||
|
||||
Reference in New Issue
Block a user