|
106 | 106 |
|
107 | 107 | env:
|
108 | 108 | S3_METRICS_PATH: s3://openvm-public-data-sandbox-us-east-1/benchmark/github/metrics
|
| 109 | + S3_FLAMEGRAPHS_PATH: s3://openvm-public-data-sandbox-us-east-1/benchmark/github/flamegraphs |
109 | 110 | FEATURE_FLAGS: "bench-metrics,parallel,nightly-features"
|
110 | 111 | INPUT_ARGS: ""
|
111 | 112 | CARGO_NET_GIT_FETCH_WITH_CLI: "true"
|
@@ -228,16 +229,25 @@ jobs:
|
228 | 229 |
|
229 | 230 | s5cmd cp $METRIC_PATH ${{ env.S3_METRICS_PATH }}/${METRIC_NAME}-${current_sha}.json
|
230 | 231 |
|
231 |
| - # - name: Install inferno-flamegraph |
232 |
| - # run: cargo install inferno |
| 232 | + - name: Install inferno-flamegraph |
| 233 | + if: ${{ contains(env.FEATURE_FLAGS, 'profiling') }} |
| 234 | + run: cargo install inferno |
233 | 235 |
|
234 |
| - # - name: Generate flamegraphs |
235 |
| - # run: | |
236 |
| - # if [[ -f $METRIC_PATH ]]; then |
237 |
| - # python3 ci/scripts/metric_unify/flamegraph.py $METRIC_PATH |
238 |
| - # s5cmd cp '.bench_metrics/flamegraphs/*.svg' "${{ env.PUBLIC_S3_PATH }}/${current_sha}/" |
239 |
| - # echo "UPLOAD_FLAMEGRAPHS=1" >> $GITHUB_ENV |
240 |
| - # fi |
| 236 | + - name: Generate flamegraphs |
| 237 | + if: ${{ contains(env.FEATURE_FLAGS, 'profiling') }} |
| 238 | + run: | |
| 239 | + if [[ -f $METRIC_PATH ]]; then |
| 240 | + GUEST_SYMBOLS_PATH="${METRIC_PATH%.json}.syms" |
| 241 | + if [[ -f $GUEST_SYMBOLS_PATH ]]; then |
| 242 | + echo "Generating flamegraphs with guest symbols" |
| 243 | + python3 ci/scripts/metric_unify/flamegraph.py $METRIC_PATH --guest-symbols $GUEST_SYMBOLS_PATH |
| 244 | + else |
| 245 | + echo "No guest symbols found, generating flamegraphs without symbols" |
| 246 | + python3 ci/scripts/metric_unify/flamegraph.py $METRIC_PATH |
| 247 | + fi |
| 248 | + s5cmd cp '.bench_metrics/flamegraphs/*.svg' "${{ env.S3_FLAMEGRAPHS_PATH }}/${METRIC_NAME}-${current_sha}/" |
| 249 | + echo "UPLOAD_FLAMEGRAPHS=1" >> $GITHUB_ENV |
| 250 | + fi |
241 | 251 |
|
242 | 252 | ##########################################################################
|
243 | 253 | # Update s3 for latest main metrics upon a push event #
|
|
0 commit comments