build: re-enabled windows benchmark runs

This commit is contained in:
Allan Jeremy 2022-06-16 15:07:21 +03:00
parent 851a8e8939
commit fbcd37d8b9

View file

@ -12,89 +12,89 @@ on:
- "prototyping/**" - "prototyping/**"
jobs: jobs:
# windows: windows:
# name: Run ${{ matrix.bench.title }} (Windows ${{matrix.arch}}) name: Run ${{ matrix.bench.title }} (Windows ${{matrix.arch}})
# strategy: strategy:
# fail-fast: false fail-fast: false
# matrix: matrix:
# os: [windows-latest] os: [windows-latest]
# arch: [Win32, x64] arch: [Win32, x64]
# bench: bench:
# - { - {
# script: "run-benchmarks", script: "run-benchmarks",
# timeout: 12, timeout: 12,
# title: "Luau Benchmarks", title: "Luau Benchmarks",
# cachegrindTitle: "Performance", cachegrindTitle: "Performance",
# cachegrindIterCount: 20, cachegrindIterCount: 20,
# } }
# benchResultsRepo: benchResultsRepo:
# - { name: "AllanJeremy/luau-benchmark-results", branch: "main" } - { name: "AllanJeremy/luau-benchmark-results", branch: "main" }
# runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
# steps: steps:
# - name: Checkout Luau - name: Checkout Luau
# uses: actions/checkout@v3 uses: actions/checkout@v3
# - name: Build Luau - name: Build Luau
# shell: bash # necessary for fail-fast shell: bash # necessary for fail-fast
# run: | run: |
# mkdir build && cd build mkdir build && cd build
# cmake .. -DCMAKE_BUILD_TYPE=RelWithDebInfo cmake .. -DCMAKE_BUILD_TYPE=RelWithDebInfo
# cmake --build . --target Luau.Repl.CLI --config RelWithDebInfo cmake --build . --target Luau.Repl.CLI --config RelWithDebInfo
# cmake --build . --target Luau.Analyze.CLI --config RelWithDebInfo cmake --build . --target Luau.Analyze.CLI --config RelWithDebInfo
# move build/RelWithDebInfo/* . move build/RelWithDebInfo/* .
# - name: Check dir structure - name: Check dir structure
# run: | run: |
# ls build/RelWithDebInfo ls build/RelWithDebInfo
# ls ls
# - uses: actions/setup-python@v3 - uses: actions/setup-python@v3
# with: with:
# python-version: "3.9" python-version: "3.9"
# architecture: "x64" architecture: "x64"
# - name: Install python dependencies - name: Install python dependencies
# run: | run: |
# python -m pip install requests python -m pip install requests
# python -m pip install --user numpy scipy matplotlib ipython jupyter pandas sympy nose python -m pip install --user numpy scipy matplotlib ipython jupyter pandas sympy nose
# - name: Run benchmark - name: Run benchmark
# run: | run: |
# python bench/bench.py | tee ${{ matrix.bench.script }}-output.txt python bench/bench.py | tee ${{ matrix.bench.script }}-output.txt
# - name: Checkout Benchmark Results repository - name: Checkout Benchmark Results repository
# uses: actions/checkout@v3 uses: actions/checkout@v3
# with: with:
# repository: ${{ matrix.benchResultsRepo.name }} repository: ${{ matrix.benchResultsRepo.name }}
# ref: ${{ matrix.benchResultsRepo.branch }} ref: ${{ matrix.benchResultsRepo.branch }}
# token: ${{ secrets.BENCH_GITHUB_TOKEN }} token: ${{ secrets.BENCH_GITHUB_TOKEN }}
# path: "./gh-pages" path: "./gh-pages"
# - name: Store ${{ matrix.bench.title }} result - name: Store ${{ matrix.bench.title }} result
# uses: Roblox/rhysd-github-action-benchmark@v-luau uses: Roblox/rhysd-github-action-benchmark@v-luau
# with: with:
# name: ${{ matrix.bench.title }} name: ${{ matrix.bench.title }}
# tool: "benchmarkluau" tool: "benchmarkluau"
# output-file-path: ./${{ matrix.bench.script }}-output.txt output-file-path: ./${{ matrix.bench.script }}-output.txt
# external-data-json-path: ./gh-pages/dev/bench/data.json external-data-json-path: ./gh-pages/dev/bench/data.json
# alert-threshold: 150% alert-threshold: 150%
# fail-threshold: 1000% fail-threshold: 1000%
# fail-on-alert: false fail-on-alert: false
# comment-on-alert: true comment-on-alert: true
# github-token: ${{ secrets.GITHUB_TOKEN }} github-token: ${{ secrets.GITHUB_TOKEN }}
# - name: Push benchmark results - name: Push benchmark results
# run: | run: |
# echo "Pushing benchmark results..." echo "Pushing benchmark results..."
# cd gh-pages cd gh-pages
# git config user.name github-actions git config user.name github-actions
# git config user.email github@users.noreply.github.com git config user.email github@users.noreply.github.com
# git add ./dev/bench/data.json git add ./dev/bench/data.json
# git commit -m "Add benchmarks results for ${{ github.sha }}" git commit -m "Add benchmarks results for ${{ github.sha }}"
# git push git push
# cd .. cd ..
unix: unix:
name: Run ${{ matrix.bench.title }} (${{ matrix.os}}) name: Run ${{ matrix.bench.title }} (${{ matrix.os}})
@ -131,9 +131,9 @@ jobs:
python -m pip install requests python -m pip install requests
python -m pip install --user numpy scipy matplotlib ipython jupyter pandas sympy nose python -m pip install --user numpy scipy matplotlib ipython jupyter pandas sympy nose
# - name: Run benchmark - name: Run benchmark
# run: | run: |
# python bench/bench.py | tee ${{ matrix.bench.script }}-output.txt python bench/bench.py | tee ${{ matrix.bench.script }}-output.txt
- name: Install valgrind - name: Install valgrind
if: ${{ matrix.os }} == "ubuntu-latest" if: ${{ matrix.os }} == "ubuntu-latest"
@ -144,54 +144,54 @@ jobs:
if: ${{ matrix.os }} == "ubuntu-latest" if: ${{ matrix.os }} == "ubuntu-latest"
run: sudo bash ./scripts/run-with-cachegrind.sh python ./bench/bench.py "${{ matrix.bench.cachegrindTitle}}Cold" 1 | tee -a ${{ matrix.bench.script }}-output.txt run: sudo bash ./scripts/run-with-cachegrind.sh python ./bench/bench.py "${{ matrix.bench.cachegrindTitle}}Cold" 1 | tee -a ${{ matrix.bench.script }}-output.txt
# - name: Run ${{ matrix.bench.title }} (Warm Cachegrind) - name: Run ${{ matrix.bench.title }} (Warm Cachegrind)
# if: ${{ matrix.os }} == "ubuntu-latest" if: ${{ matrix.os }} == "ubuntu-latest"
# run: sudo bash ./scripts/run-with-cachegrind.sh python ./bench/bench.py "${{ matrix.bench.cachegrindTitle }}" ${{ matrix.bench.cachegrindIterCount }} | tee -a ${{ matrix.bench.script }}-output.txt run: sudo bash ./scripts/run-with-cachegrind.sh python ./bench/bench.py "${{ matrix.bench.cachegrindTitle }}" ${{ matrix.bench.cachegrindIterCount }} | tee -a ${{ matrix.bench.script }}-output.txt
# - name: Checkout Benchmark Results repository - name: Checkout Benchmark Results repository
# uses: actions/checkout@v3 uses: actions/checkout@v3
# with: with:
# repository: ${{ matrix.benchResultsRepo.name }} repository: ${{ matrix.benchResultsRepo.name }}
# ref: ${{ matrix.benchResultsRepo.branch }} ref: ${{ matrix.benchResultsRepo.branch }}
# token: ${{ secrets.BENCH_GITHUB_TOKEN }} token: ${{ secrets.BENCH_GITHUB_TOKEN }}
# path: "./gh-pages" path: "./gh-pages"
# - name: Store ${{ matrix.bench.title }} result - name: Store ${{ matrix.bench.title }} result
# uses: Roblox/rhysd-github-action-benchmark@v-luau uses: Roblox/rhysd-github-action-benchmark@v-luau
# with: with:
# name: ${{ matrix.bench.title }} name: ${{ matrix.bench.title }}
# tool: "benchmarkluau" tool: "benchmarkluau"
# output-file-path: ./${{ matrix.bench.script }}-output.txt output-file-path: ./${{ matrix.bench.script }}-output.txt
# external-data-json-path: ./gh-pages/dev/bench/data.json external-data-json-path: ./gh-pages/dev/bench/data.json
# alert-threshold: 150% alert-threshold: 150%
# fail-threshold: 200% fail-threshold: 200%
# fail-on-alert: true fail-on-alert: true
# comment-on-alert: true comment-on-alert: true
# comment-always: true comment-always: true
# github-token: ${{ secrets.GITHUB_TOKEN }} github-token: ${{ secrets.GITHUB_TOKEN }}
# - name: Store ${{ matrix.bench.title }} result (CacheGrind) - name: Store ${{ matrix.bench.title }} result (CacheGrind)
# uses: Roblox/rhysd-github-action-benchmark@v-luau uses: Roblox/rhysd-github-action-benchmark@v-luau
# if: ${{ matrix.os }} == "ubuntu-latest" if: ${{ matrix.os }} == "ubuntu-latest"
# with: with:
# name: ${{ matrix.bench.title }} (CacheGrind) name: ${{ matrix.bench.title }} (CacheGrind)
# tool: "roblox" tool: "roblox"
# output-file-path: ./${{ matrix.bench.script }}-output.txt output-file-path: ./${{ matrix.bench.script }}-output.txt
# external-data-json-path: ./gh-pages/dev/bench/data.json external-data-json-path: ./gh-pages/dev/bench/data.json
# alert-threshold: 150% alert-threshold: 150%
# fail-threshold: 1000% fail-threshold: 1000%
# fail-on-alert: false fail-on-alert: false
# comment-on-alert: true comment-on-alert: true
# github-token: ${{ secrets.GITHUB_TOKEN }} github-token: ${{ secrets.GITHUB_TOKEN }}
# - name: Push benchmark results - name: Push benchmark results
# if: github.event_name == 'push' if: github.event_name == 'push'
# run: | run: |
# echo "Pushing benchmark results..." echo "Pushing benchmark results..."
# cd gh-pages cd gh-pages
# git config user.name github-actions git config user.name github-actions
# git config user.email github@users.noreply.github.com git config user.email github@users.noreply.github.com
# git add ./dev/bench/data.json git add ./dev/bench/data.json
# git commit -m "Add benchmarks results for ${{ github.sha }}" git commit -m "Add benchmarks results for ${{ github.sha }}"
# git push git push
# cd .. cd ..