Skip to content

Commit

Permalink
#104: Add ttrt functional and performance tests to CI
Browse files Browse the repository at this point in the history
  • Loading branch information
tapspatel committed Aug 7, 2024
1 parent 2bdb825 commit 0b7215f
Showing 1 changed file with 118 additions and 0 deletions.
118 changes: 118 additions & 0 deletions .github/workflows/ttrt-flatbuffer-ttnn.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
name: TTRT Flatbuffer TTNN Tests

on:
workflow_dispatch:
workflow_call:
schedule:
- cron: "0 */2 * * *" # This cron schedule runs the workflow every 2 hours
push:
branches: [ "tpatel/issue-104" ]

jobs:
build:
strategy:
fail-fast: false
matrix:
build: [
{name: "TTRT TTNN n150 runtime tests", runs-on: n150, c_compiler: clang, cpp_compiler: clang++, build_type: Release, enable_runtime: ON, enable_perf: OFF},
{name: "TTRT TTNN n150 perf tests", uns-on: n150, c_compiler: clang, cpp_compiler: clang++, build_type: Release, enable_runtime: ON, enable_perf: ON},
]
name: ${{ matrix.build.name }}
runs-on: ${{ matrix.build.runs-on }}
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0 # Fetch all history and tags

- name: Install build dependencies
uses: ./.github/actions/install-deps
with:
os: ${{ matrix.build.runs-on }}

- name: Build and cache ttmlir-toolchain
uses: ./.github/actions/build-toolchain
with:
os: ${{ matrix.build.runs-on }}
sdk: ${{ env.SDK_VERSION }}

- name: Set reusable strings
id: strings
shell: bash
run: |
echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT"
- name: Configure CMake
shell: bash
run: |
source env/activate
cmake -G Ninja \
-B ${{ steps.strings.outputs.build-output-dir }} \
-DCMAKE_CXX_COMPILER=${{ matrix.build.cpp_compiler }} \
-DCMAKE_C_COMPILER=${{ matrix.build.c_compiler }} \
-DCMAKE_BUILD_TYPE=${{ matrix.build.build_type }} \
-DTTMLIR_ENABLE_RUNTIME=${{ matrix.build.enable_runtime }} \
-DTTMLIR_ENABLE_RUNTIME_TESTS=${{ matrix.build.enable_runtime }} \
-DTT_RUNTIME_ENABLE_PERF_TRACE=${{ matrix.build.enable_perf }} \
-S ${{ github.workspace }}
- name: Set perf env variables
if: ${{ matrix.build.enable_perf }} == 'ON'
shell: bash
run: |
export ENABLE_TRACY=1
- name: Build
shell: bash
run: |
source env/activate
cmake --build ${{ steps.strings.outputs.build-output-dir }} --config ${{ matrix.build.build_type }}
- name: Lint
if: matrix.enable_runtime == 'OFF'
shell: bash
run: |
source env/activate
cmake --build ${{ steps.strings.outputs.build-output-dir }} --config ${{ matrix.build.build_type }} -- clang-tidy
- name: Run Test
shell: bash
run: |
source env/activate
cmake --build ${{ steps.strings.outputs.build-output-dir }} --config ${{ matrix.build.build_type }} -- check-ttmlir
- name: Build ttrt
shell: bash
run: |
source env/activate
cmake --build ${{ steps.strings.outputs.build-output-dir }} --config ${{ matrix.build.build_type }} -- ttrt
pip install torch
pip install loguru
pip install pandas
pip install seaborn
- name: Run ttrt functional tests
if: ${{ matrix.build.enable_perf }} == 'OFF'
shell: bash
run: |
source env/activate
ttrt run ${{ steps.strings.outputs.build-output-dir }}/test/ttmlir/Silicon
- name: Run ttrt performance tests
if: ${{ matrix.build.enable_perf }} == 'ON'
shell: bash
run: |
source env/activate
ttrt perf ${{ steps.strings.outputs.build-output-dir }}/test/ttmlir/Silicon
- name: Upload Test Report
uses: actions/upload-artifact@v4
with:
name: test-reports-${{ matrix.build.runs-on }}
path: build/test/report.xml

- name: Show Test Report
uses: mikepenz/action-junit-report@v4
if: success() || failure()
with:
report_paths: build/test/report.xml
check_name: ${{ matrix.build.runs-on }} MLIR Tests

0 comments on commit 0b7215f

Please sign in to comment.