From e42da801daa8d48cf79447b8a170df73ae0e55eb Mon Sep 17 00:00:00 2001 From: Aswinmcw Date: Fri, 8 Nov 2024 10:13:57 +0000 Subject: [PATCH] #0: ci check --- .../t3000-model-perf-tests-impl.yaml | 7 +- cluster_descriptor.yaml | 75 +++++++++++++++++++ 2 files changed, 81 insertions(+), 1 deletion(-) create mode 100644 cluster_descriptor.yaml diff --git a/.github/workflows/t3000-model-perf-tests-impl.yaml b/.github/workflows/t3000-model-perf-tests-impl.yaml index f092abf18d11..2e5bab34d71c 100644 --- a/.github/workflows/t3000-model-perf-tests-impl.yaml +++ b/.github/workflows/t3000-model-perf-tests-impl.yaml @@ -47,19 +47,24 @@ jobs: echo "TT_METAL_HOME=$(pwd)" >> $GITHUB_ENV echo "PYTHONPATH=$(pwd)" >> $GITHUB_ENV - name: Download profiler build artifact + id: download-profiler-artifact if: ${{ matrix.test-group.tracy }} uses: actions/download-artifact@v4 with: name: TTMetal_build_${{ matrix.test-group.arch }}_profiler + continue-on-error: true - name: Download build artifact + id: download-artifact if: ${{ !matrix.test-group.tracy }} uses: actions/download-artifact@v4 with: name: TTMetal_build_${{ matrix.test-group.arch }} - name: Extract files + if: ${{ matrix.test-group.tracy && steps.download-profiler-artifact.conclusion == 'success' }} run: tar -xvf ttm_${{ matrix.test-group.arch }}.tar - uses: ./.github/actions/install-python-deps - name: Run model perf regression tests + if: ${{ matrix.test-group.tracy && steps.download-profiler-artifact.conclusion == 'success' }} shell: bash {0} timeout-minutes: ${{ matrix.test-group.timeout }} run: | @@ -71,7 +76,7 @@ jobs: env python models/perf/merge_perf_results.py - name: Check perf report exists id: check-perf-report - if: ${{ !cancelled() }} + if: ${{ !cancelled() && matrix.test-group.tracy && steps.download-profiler-artifact.conclusion == 'success' }} run: | TODAY=$(date +%Y_%m_%d) PERF_REPORT_FILENAME_MODELS="Models_Perf_${TODAY}.csv" diff --git a/cluster_descriptor.yaml b/cluster_descriptor.yaml new file mode 100644 index 000000000000..637b8dd24f80 --- /dev/null +++ b/cluster_descriptor.yaml @@ -0,0 +1,75 @@ +arch: { + 0: Wormhole, + 1: Wormhole, + 2: Wormhole, + 3: Wormhole, + 4: Wormhole, + 5: Wormhole, + 6: Wormhole, + 7: Wormhole, +} + +chips: { + 0: [1,0,0,0], + 1: [1,1,0,0], + 2: [2,1,0,0], + 3: [2,0,0,0], + 4: [0,0,0,0], + 5: [0,1,0,0], + 6: [3,1,0,0], + 7: [3,0,0,0], +} + +ethernet_connections: [ + [{chip: 0, chan: 0}, {chip: 3, chan: 0}], + [{chip: 0, chan: 1}, {chip: 3, chan: 1}], + [{chip: 0, chan: 8}, {chip: 4, chan: 0}], + [{chip: 0, chan: 9}, {chip: 4, chan: 1}], + [{chip: 0, chan: 14}, {chip: 1, chan: 14}], + [{chip: 0, chan: 15}, {chip: 1, chan: 15}], + [{chip: 1, chan: 6}, {chip: 2, chan: 6}], + [{chip: 1, chan: 7}, {chip: 2, chan: 7}], + [{chip: 1, chan: 8}, {chip: 5, chan: 0}], + [{chip: 1, chan: 9}, {chip: 5, chan: 1}], + [{chip: 2, chan: 8}, {chip: 6, chan: 0}], + [{chip: 2, chan: 9}, {chip: 6, chan: 1}], + [{chip: 2, chan: 14}, {chip: 3, chan: 14}], + [{chip: 2, chan: 15}, {chip: 3, chan: 15}], + [{chip: 3, chan: 8}, {chip: 7, chan: 0}], + [{chip: 3, chan: 9}, {chip: 7, chan: 1}], + [{chip: 4, chan: 6}, {chip: 5, chan: 6}], + [{chip: 4, chan: 7}, {chip: 5, chan: 7}], + [{chip: 6, chan: 6}, {chip: 7, chan: 6}], + [{chip: 6, chan: 7}, {chip: 7, chan: 7}], +] + +chips_with_mmio: [ + 0: 0, + 1: 1, + 2: 2, + 3: 3, +] + +# harvest_mask is the bit indicating which tensix row is harvested. So bit 0 = first tensix row; bit 1 = second tensix row etc... +harvesting: { + 0: {noc_translation: true, harvest_mask: 36}, + 1: {noc_translation: true, harvest_mask: 3}, + 2: {noc_translation: true, harvest_mask: 33}, + 3: {noc_translation: true, harvest_mask: 257}, + 4: {noc_translation: true, harvest_mask: 96}, + 5: {noc_translation: true, harvest_mask: 257}, + 6: {noc_translation: true, harvest_mask: 33}, + 7: {noc_translation: true, harvest_mask: 9}, +} + +# This value will be null if the boardtype is unknown, should never happen in practice but to be defensive it would be useful to throw an error on this case. +boardtype: { + 0: n300, + 1: n300, + 2: n300, + 3: n300, + 4: n300, + 5: n300, + 6: n300, + 7: n300, +}