mirror of
https://codeberg.org/gigirassy/riptide
synced 2026-08-30 15:27:38 +00:00
Update .forgejo/workflows/pgo-binary.yml
This commit is contained in:
@@ -85,7 +85,7 @@ jobs:
|
||||
run: |
|
||||
/tmp/riptide-pgo/riptide --help
|
||||
|
||||
- name: Train PGO profile
|
||||
- name: Train PGO profile part 1
|
||||
shell: sh
|
||||
env:
|
||||
LLVM_PROFILE_FILE: /tmp/riptide-pgo/profiles/%m-%p.profraw
|
||||
@@ -93,22 +93,38 @@ jobs:
|
||||
set -eu
|
||||
|
||||
SITEMAP_URL='https://riptide-pgo.blitzw.in/sitemaps/sitemap.xml'
|
||||
SITEMAP_URL_2='https://riptide-pgo.blitzw.in/sitemaps2/sitemap.xml'
|
||||
|
||||
printf 'Training with sitemap: <%s>\n' "$SITEMAP_URL"
|
||||
printf 'Training round 1 with sitemap: <%s>\n' "$SITEMAP_URL"
|
||||
|
||||
timeout 10m \
|
||||
/tmp/riptide-pgo/riptide \
|
||||
--sitemap "$SITEMAP_URL" \
|
||||
--output /tmp/pgo-urls.txt \
|
||||
--scheme https \
|
||||
--workers 16 \
|
||||
--timeout-secs 30
|
||||
/tmp/riptide-pgo/riptide \
|
||||
--sitemap "$SITEMAP_URL" \
|
||||
--output /tmp/pgo-urls.txt \
|
||||
--scheme https \
|
||||
--workers 16 \
|
||||
--timeout-secs 30
|
||||
|
||||
test -s /tmp/pgo-urls.txt
|
||||
|
||||
echo "Training input:"
|
||||
echo "Training round 1 input:"
|
||||
wc -l /tmp/pgo-urls.txt
|
||||
|
||||
printf 'Training round 2 with sitemap: <%s>\n' "$SITEMAP_URL_2"
|
||||
|
||||
timeout 10m \
|
||||
/tmp/riptide-pgo/riptide \
|
||||
--sitemap "$SITEMAP_URL_2" \
|
||||
--output /tmp/pgo-urls-2.txt \
|
||||
--scheme https \
|
||||
--workers 16 \
|
||||
--timeout-secs 30
|
||||
|
||||
test -s /tmp/pgo-urls-2.txt
|
||||
|
||||
echo "Training round 2 input:"
|
||||
wc -l /tmp/pgo-urls-2.txt
|
||||
|
||||
echo "Generated profiles:"
|
||||
find /tmp/riptide-pgo/profiles \
|
||||
-name '*.profraw' \
|
||||
@@ -120,9 +136,9 @@ jobs:
|
||||
-name '*.profraw' \
|
||||
-type f \
|
||||
-print -quit
|
||||
)"
|
||||
)"
|
||||
|
||||
- name: Merge PGO profiles
|
||||
- name: Merge Round 1 of PGO profiles
|
||||
shell: sh
|
||||
run: |
|
||||
set -eu
|
||||
@@ -135,14 +151,100 @@ jobs:
|
||||
|
||||
test -s /tmp/riptide-pgo.profdata
|
||||
|
||||
- name: Build optimized Linux binary
|
||||
- name: Build Linux binary 2
|
||||
shell: sh
|
||||
run: |
|
||||
set -eu
|
||||
|
||||
RUSTFLAGS="
|
||||
-C target-feature=+crt-static
|
||||
-C profile-use=/tmp/riptide-pgo.profdata
|
||||
" cargo build \
|
||||
--release \
|
||||
--target "$LINUX_TARGET"
|
||||
|
||||
mkdir -p riptide-pgo-2
|
||||
|
||||
cp \
|
||||
"target/$LINUX_TARGET/release/riptide" \
|
||||
riptide-pgo-2/riptide
|
||||
|
||||
chmod +x riptide-pgo-2/riptide
|
||||
|
||||
- name: Train PGO profile
|
||||
shell: sh
|
||||
env:
|
||||
LLVM_PROFILE_FILE: /tmp/riptide-pgo/profiles/%m-%p.profraw
|
||||
run: |
|
||||
set -eu
|
||||
|
||||
SITEMAP_URL='https://riptide-pgo.blitzw.in/sitemaps/sitemap.xml'
|
||||
SITEMAP_URL_2='https://riptide-pgo.blitzw.in/sitemaps2/sitemap.xml'
|
||||
|
||||
printf 'Training round 1 with sitemap: <%s>\n' "$SITEMAP_URL"
|
||||
|
||||
timeout 10m \
|
||||
/tmp/riptide-pgo2/riptide \
|
||||
--sitemap "$SITEMAP_URL" \
|
||||
--output /tmp/pgo-urls3.txt \
|
||||
--scheme https \
|
||||
--workers 16 \
|
||||
--timeout-secs 30
|
||||
|
||||
test -s /tmp/pgo-urls3.txt
|
||||
|
||||
echo "Training round 1 input:"
|
||||
wc -l /tmp/pgo-urls3.txt
|
||||
|
||||
printf 'Training round 2 with sitemap: <%s>\n' "$SITEMAP_URL_2"
|
||||
|
||||
timeout 10m \
|
||||
/tmp/riptide-pgo2/riptide \
|
||||
--sitemap "$SITEMAP_URL_2" \
|
||||
--output /tmp/pgo-urls-4.txt \
|
||||
--scheme https \
|
||||
--workers 16 \
|
||||
--timeout-secs 30
|
||||
|
||||
test -s /tmp/pgo-urls-4.txt
|
||||
|
||||
echo "Training round 2 input:"
|
||||
wc -l /tmp/pgo-urls-4.txt
|
||||
|
||||
echo "Generated profiles:"
|
||||
find /tmp/riptide-pgo2/profiles \
|
||||
-name '*.profraw' \
|
||||
-type f \
|
||||
-print
|
||||
|
||||
test -n "$(
|
||||
find /tmp/riptide-pgo2/profiles \
|
||||
-name '*.profraw' \
|
||||
-type f \
|
||||
-print -quit
|
||||
)"
|
||||
|
||||
- name: Merge Round 2 of PGO profiles
|
||||
shell: sh
|
||||
run: |
|
||||
set -eu
|
||||
|
||||
LLVM_PROFDATA="${{ steps.llvm.outputs.LLVM_BIN }}/llvm-profdata"
|
||||
|
||||
"$LLVM_PROFDATA" merge \
|
||||
-o /tmp/riptide-pgo2.profdata \
|
||||
/tmp/riptide-pgo2/profiles/*.profraw
|
||||
|
||||
test -s /tmp/riptide-pgo.profdata
|
||||
|
||||
- name: Build finalized Linux binary
|
||||
shell: sh
|
||||
run: |
|
||||
set -eu
|
||||
|
||||
RUSTFLAGS="
|
||||
-C target-feature=+crt-static
|
||||
-C profile-use=/tmp/riptide-pgo.profdata
|
||||
-C profile-use=/tmp/riptide-pgo2.profdata
|
||||
" cargo build \
|
||||
--release \
|
||||
--target "$LINUX_TARGET"
|
||||
|
||||
Reference in New Issue
Block a user