Skip to content

MLPerf inference ResNet50 Closed Division for testing Compliance #1

MLPerf inference ResNet50 Closed Division for testing Compliance

MLPerf inference ResNet50 Closed Division for testing Compliance #1

name: MLPerf inference ResNet50 Closed Division for testing Compliance
on:
schedule:
- cron: '0 0 * * 0' # Runs once a week on Sunday at 00:00 UTC
workflow_dispatch: {} # Allows manual triggering of the workflow
jobs:
build:
name: MLPerf inference MLCommons ResNet50 Closed Division
runs-on: ${{ matrix.os }}
env:
MLC_INDEX: "on"
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
python-version: [ "3.12" ]
backend: [ "onnxruntime", "tf" ]
implementation: [ "python", "cpp" ]
exclude:
- backend: tf
implementation: cpp
- os: macos-latest
backend: tf
- os: windows-latest
implementation: cpp
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python-version }}
- name: Configure git longpaths (Windows)
if: matrix.os == 'windows-latest'
run: |
git config --system core.longpaths true
- name: Export MLC_REPOS in Linux or Mac
if: matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest'
run: |
echo "MLC_REPOS=$HOME/gh action/mlc" >> $GITHUB_ENV
- name: Export MLC_REPOS in Windows
if: matrix.os == 'windows-latest'
run: |
$mlcrepos = "${env:USERPROFILE}\gh action\mlc"
"MLC_REPOS=$mlcRepos" | Out-File -FilePath $env:GITHUB_ENV -Append
- name: Install mlcflow
run: |
pip install mlcflow
pip install tabulate
- name: Pull MLOps repo
run: |
mlc pull repo mlcommons@mlperf-automations --branch=dev
- name: Test MLPerf Inference ResNet50 (Windows)
if: matrix.os == 'windows-latest'
run: |
mlcr run-mlperf,inference,_submission,_short,_all-scenarios --division=closed --submitter="MLCommons" --pull_changes=yes --pull_inference_changes=yes --hw_name="gh_${{ matrix.os }} x86" --model=resnet50 --adr.loadgen.tags=_from-pip --pip_loadgen=yes --implementation=${{ matrix.implementation }} --backend=${{ matrix.backend }} --device=cpu --test_query_count=1000 --quiet --execution_mode=valid --adr.inference-src.tags=_repo.https://github.com/anandhu-eng/inference,_branch.patch-34
- name: Test MLPerf Inference ResNet50 Offline(Linux/macOS)
if: matrix.os != 'windows-latest'
run: |
mlcr run-mlperf,inference,_submission,_short,_all-scenarios --division=closed --submitter="MLCommons" --pull_changes=yes --pull_inference_changes=yes --hw_name="gh_${{ matrix.os }} x86" --model=resnet50 --implementation=${{ matrix.implementation }} --backend=${{ matrix.backend }} --device=cpu --test_query_count=1000 --quiet --execution_mode=valid --adr.inference-src.tags=_repo.https://github.com/anandhu-eng/inference,_branch.patch-34
# Step for Linux/MacOS
- name: Randomly Execute Step (Linux/MacOS)
if: runner.os != 'Windows'
run: |
RANDOM_NUMBER=$((RANDOM % 10))
echo "Random number is $RANDOM_NUMBER"
if [ "$RANDOM_NUMBER" -eq 0 ]; then
echo "run_step=true" >> $GITHUB_ENV
else
echo "run_step=false" >> $GITHUB_ENV
fi
# Step for Windows
- name: Randomly Execute Step (Windows)
if: runner.os == 'Windows'
run: |
$RANDOM_NUMBER = Get-Random -Maximum 10
Write-Host "Random number is $RANDOM_NUMBER"
if ($RANDOM_NUMBER -eq 0) {
Write-Host "run_step=true" | Out-File -FilePath $Env:GITHUB_ENV -Append
} else {
Write-Host "run_step=false" | Out-File -FilePath $Env:GITHUB_ENV -Append
}
- name: Load secrets
id: op-load-secrets
uses: 1password/load-secrets-action@v3
env:
OP_SERVICE_ACCOUNT_TOKEN: ${{ secrets.OP_SERVICE_ACCOUNT_TOKEN }}
PAT: op://7basd2jirojjckncf6qnq3azai/bzbaco3uxoqs2rcyu42rvuccga/credential
- name: Push Results
env:
GITHUB_TOKEN: ${{ steps.op-load-secrets.outputs.PAT }}
if: github.repository_owner == 'mlcommons' && env.run_step == 'true'
run: |
git config --global user.name "mlcommons-bot"
git config --global user.email "[email protected]"
git config --global credential.https://github.1485827954.workers.dev.helper ""
git config --global credential.https://github.1485827954.workers.dev.helper "!gh auth git-credential"
git config --global credential.https://gist.github.com.helper ""
git config --global credential.https://gist.github.com.helper "!gh auth git-credential"
mlcr push,github,mlperf,inference,submission --repo_url=https://github.com/mlcommons/mlperf_inference_test_submissions_v5.0 --repo_branch=auto-update --commit_message="Results from R50 GH action on ${{ matrix.os }}" --quiet