Skip to content

testing benchmark run #254

testing benchmark run

testing benchmark run #254

name: Benchmark torchserve nightly
on:
push
# run every day at 2:15am
#schedule:
# - cron: '15 02 * * *'
jobs:
nightly:
strategy:
fail-fast: false
matrix:
hardware: [benchmark-test-ankith]
runs-on:
- self-hosted
- ${{ matrix.hardware }}
timeout-minutes: 1320
steps:
- name: Clean up previous run
run: |
echo "Cleaning up previous run"
cd $RUNNER_WORKSPACE
pwd
cd ..
pwd
rm -rf _tool
- name: Setup Python 3.8
uses: actions/setup-python@v4
with:
python-version: 3.8
architecture: x64
- name: Setup Java 17
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: '17'
- name: Checkout TorchServe
uses: actions/checkout@v3
- name: Install dependencies
run: |
sudo apt-get update -y
sudo apt-get install -y apache2-utils
pip install -r benchmarks/requirements-ab.txt
- name: Benchmark cpu nightly
if: ${{ matrix.hardware == 'cpu' }}
run: python benchmarks/auto_benchmark.py --input benchmarks/benchmark_config_cpu.yaml --skip false
- name: Benchmark gpu nightly
if: ${{ matrix.hardware == 'benchmark-test-ankith' }}
run: python benchmarks/auto_benchmark.py --input benchmarks/benchmark_config_gpu.yaml --skip false --skip_upload true
- name: Benchmark inf1 nightly
if: ${{ matrix.hardware == 'inf1' }}
env:
NEURON_RT_NUM_CORES: 4
run: python benchmarks/auto_benchmark.py --input benchmarks/benchmark_config_neuron.yaml --skip false
- name: Benchmark inf2 nightly
if: ${{ matrix.hardware == 'inf2' }}
env:
NEURON_RT_NUM_CORES: 1
run: python benchmarks/auto_benchmark.py --input benchmarks/benchmark_config_neuronx.yaml --skip false
#- name: Save benchmark artifacts
# uses: actions/upload-artifact@v2
# with:
# name: nightly ${{ matrix.hardware }} artifact
# path: /tmp/ts_benchmark
#- name: Download benchmark artifacts for auto validation
# uses: dawidd6/action-download-artifact@v2
# with:
# workflow: ${{ github.event.workflow_run.workflow_id }}
# workflow_conclusion: success
# if_no_artifact_found: ignore
# path: /tmp/ts_artifacts
# name: ${{ matrix.hardware }}_benchmark_validation
#- name: Validate Benchmark result
# run: python benchmarks/validate_report.py --input-artifacts-dir /tmp/ts_artifacts/${{ matrix.hardware }}_benchmark_validation
#- name: Update benchmark artifacts for auto validation
# run: python benchmarks/utils/update_artifacts.py --output /tmp/ts_artifacts/${{ matrix.hardware }}_benchmark_validation
#- name: Upload the updated benchmark artifacts for auto validation
# uses: actions/upload-artifact@v2
# with:
# name: ${{ matrix.hardware }}_benchmark_validation
# path: /tmp/ts_artifacts
#- name: Open issue on failure
# if: ${{ failure() && github.event_name == 'schedule' && matrix.hardware == 'cpu' }}
# uses: dacbd/create-issue-action@v1
# with:
# token: ${{ secrets.GITHUB_TOKEN }}
# title: Nightly ${{ matrix.hardware }} benchmark failed
# body: Commit ${{ github.sha }} daily scheduled [CI run](https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}) failed, please check why
# assignees: ''