build: updated static analyze

This commit is contained in:
Allan Jeremy 2022-06-16 17:49:05 +03:00
parent f12ef47cf1
commit ee128af5c1

View file

@ -3,8 +3,7 @@ name: Luau static file analysis
on: on:
push: push:
branches: branches:
- "feat/add-static-file-luau-analyze" - master
pull_request:
paths-ignore: paths-ignore:
- "docs/**" - "docs/**"
- "papers/**" - "papers/**"
@ -30,7 +29,7 @@ jobs:
cachegrindIterCount: 20, cachegrindIterCount: 20,
} }
benchResultsRepo: benchResultsRepo:
- { name: "AllanJeremy/luau-benchmark-results", branch: "main" } - { name: "luau-lang/benchmark-data", branch: "main" }
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
@ -47,53 +46,68 @@ jobs:
- name: Install python dependencies - name: Install python dependencies
run: | run: |
pip install requests numpy scipy matplotlib ipython jupyter pandas sympy nose sudo pip install requests numpy scipy matplotlib ipython jupyter pandas sympy nose
- name: Install valgrind - name: Install valgrind
run: | run: |
sudo apt-get install valgrind sudo apt-get install valgrind
# - name: Run Luau Analyze on static file - name: Run Luau Analyze on static file
# run: python ./bench/measure_time.py ./build/release/luau-analyze bench/static_analysis/LuauPolyfillMap.lua | tee ${{ matrix.bench.script }}-output.txt run: sudo python ./bench/measure_time.py ./build/release/luau-analyze bench/static_analysis/LuauPolyfillMap.lua | tee ${{ matrix.bench.script }}-output.txt
- name: Run ${{ matrix.bench.title }} (Cold Cachegrind) - name: Run ${{ matrix.bench.title }} (Cold Cachegrind)
run: sudo bash ./scripts/run-with-cachegrind.sh python ./bench/measure_time.py "${{ matrix.bench.cachegrindTitle}}Cold" 1 ./build/release/luau-analyze bench/static_analysis/LuauPolyfillMap.lua | tee -a ${{ matrix.bench.script }}-output.txt run: sudo ./scripts/run-with-cachegrind.sh python ./bench/measure_time.py "${{ matrix.bench.cachegrindTitle}}Cold" 1 ./build/release/luau-analyze bench/static_analysis/LuauPolyfillMap.lua | tee -a ${{ matrix.bench.script }}-output.txt
# - name: Run ${{ matrix.bench.title }} (Warm Cachegrind) - name: Run ${{ matrix.bench.title }} (Warm Cachegrind)
# run: sudo bash ./scripts/run-with-cachegrind.sh python ./bench/measure_time.py "${{ matrix.bench.cachegrindTitle}}" 1 ./build/release/luau-analyze bench/static_analysis/LuauPolyfillMap.lua | tee -a ${{ matrix.bench.script }}-output.txt run: sudo bash ./scripts/run-with-cachegrind.sh python ./bench/measure_time.py "${{ matrix.bench.cachegrindTitle}}" 1 ./build/release/luau-analyze bench/static_analysis/LuauPolyfillMap.lua | 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"
# gh-pages-branch: "main" gh-pages-branch: "main"
# 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: Push benchmark results - name: Store ${{ matrix.bench.title }} result (CacheGrind)
# if: github.event_name == 'push' uses: Roblox/rhysd-github-action-benchmark@v-luau
# run: | with:
# echo "Pushing benchmark results..." name: ${{ matrix.bench.title }}
# cd gh-pages tool: "roblox"
# git config user.name github-actions gh-pages-branch: "main"
# git config user.email github@users.noreply.github.com output-file-path: ./${{ matrix.bench.script }}-output.txt
# git add ./dev/bench/data.json external-data-json-path: ./gh-pages/dev/bench/data.json
# git commit -m "Add benchmarks results for ${{ github.sha }}" alert-threshold: 150%
# git push fail-threshold: 200%
# cd .. fail-on-alert: true
comment-on-alert: true
comment-always: true
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: Push benchmark results
if: github.event_name == 'push'
run: |
echo "Pushing benchmark results..."
cd gh-pages
git config user.name github-actions
git config user.email github@users.noreply.github.com
git add ./dev/bench/data.json
git commit -m "Add benchmarks results for ${{ github.sha }}"
git push
cd ..