Skip to content

fix: optimize read-inline-info #39

fix: optimize read-inline-info

fix: optimize read-inline-info #39

Workflow file for this run

name: CodSpeed Benchmarks
on:
push:
branches:
- master
pull_request:
workflow_dispatch:
jobs:
benchmarks:
runs-on: codspeed-macro
strategy:
matrix:
# IMPORTANT: The binary has to match the architecture of the runner!
cmd:
- testdata/take_strings-aarch64
- ls -alh
- echo "Hello, World!"
valgrind:
- "3.26.0"
- "3.25.0"
- "local"
steps:
- uses: actions/checkout@v4
with:
lfs: true
# Skip installing package docs to avoid wasting time when installing build dependencies
# See: https://github.com/actions/runner-images/issues/10977#issuecomment-2810713336
- name: Skip installing package docs
if: runner.os == 'Linux'
run: |
sudo tee /etc/dpkg/dpkg.cfg.d/01_nodoc > /dev/null << 'EOF'
path-exclude /usr/share/doc/*
path-exclude /usr/share/man/*
path-exclude /usr/share/info/*
EOF
# Build and install Valgrind
- name: Update apt-get cache
run: sudo apt-get update
# Remove any existing Valgrind installation to avoid conflicts
- name: Remove existing Valgrind installation
run: sudo apt-get remove -y valgrind || true
- name: Install build dependencies
run: |
sudo apt-get install -y \
build-essential \
automake \
autoconf \
libc6-dev \
gdb \
docbook \
docbook-xsl \
docbook-xml \
xsltproc
- uses: extractions/setup-just@v3
- name: Build Valgrind (${{ matrix.valgrind }})
run: just build ${{ matrix.valgrind }}
- name: Verify Valgrind build
run: /usr/local/bin/valgrind --version
# Setup benchmarks and run them
- name: Install uv
uses: astral-sh/setup-uv@v5
- name: Run the benchmarks
uses: CodSpeedHQ/action@main
env:
# We currently don't support sub-processes in benchmarks, since we cannot find the
# benchmark root frame when using the process with most samples.
CODSPEED_PERF_ENABLED: false
with:
mode: walltime
run: ./bench/bench.py --cmd ${{ matrix.cmd }} --valgrind-path /usr/local/bin/valgrind