--- # This workflow runs all the Weekly GPU Tests. # For now this file is kept separate as we are still developing and testing # this workflow. It will eventually be merged with "weekly-tests.yaml" name: Weekly Tests (GPU) on: # Runs every Sunday from 7AM UTC schedule: - cron: 00 7 * * 6 # Allows us to manually start workflow for testing workflow_dispatch: jobs: build-gem5: runs-on: [self-hosted, linux, x64] container: ghcr.io/gem5/gcn-gpu:latest steps: - uses: actions/checkout@v3 with: # Scheduled workflows run on the default branch by default. We # therefore need to explicitly checkout the develop branch. ref: develop - name: Build gem5 run: scons build/VEGA_X86/gem5.opt -j $(nproc) --ignore-style - uses: actions/upload-artifact@v3 with: name: weekly-test-${{ github.run_number }}-attempt-${{ github.run_attempt }}-gem5-build-vega path: build/VEGA_X86/gem5.opt retention-days: 5 - run: echo "This job's status is ${{ job.status }}." LULESH-tests: runs-on: [self-hosted, linux, x64] container: ghcr.io/gem5/gcn-gpu:latest needs: build-gem5 timeout-minutes: 480 # 8 hours steps: - uses: actions/checkout@v3 with: # Scheduled workflows run on the default branch by default. We # therefore need to explicitly checkout the develop branch. ref: develop - name: Download build/VEGA_X86/gem5.opt uses: actions/download-artifact@v3 with: name: weekly-test-${{ github.run_number }}-attempt-${{ github.run_attempt }}-gem5-build-vega path: build/VEGA_X86 # `download-artifact` does not preserve permissions so we need to set # them again. - run: chmod u+x build/VEGA_X86/gem5.opt - name: Obtain LULESH # Obtains the latest LULESH compatible with this version of gem5 via # gem5 Resources. run: build/VEGA_X86/gem5.opt util/obtain-resource.py lulesh -p lulesh - name: Run LULUESH tests working-directory: ${{ github.workspace }} run: | build/VEGA_X86/gem5.opt configs/example/apu_se.py -n3 --mem-size=8GB --reg-alloc-policy=dynamic --dgpu --gfx-version=gfx900 -c \ lulesh --options="0.01 2" HACC-tests: runs-on: [self-hosted, linux, x64] container: ghcr.io/gem5/gcn-gpu:latest needs: build-gem5 timeout-minutes: 120 # 2 hours steps: - uses: actions/checkout@v3 with: # Scheduled workflows run on the default branch by default. We # therefore need to explicitly checkout the develop branch. ref: develop - uses: actions/download-artifact@v3 with: name: weekly-test-${{ github.run_number }}-attempt-${{ github.run_attempt }}-gem5-build-vega path: build/VEGA_X86 - run: chmod u+x build/VEGA_X86/gem5.opt - name: make hip directory run: mkdir hip - name: Compile m5ops and x86 working-directory: ${{ github.workspace }}/util/m5 run: | export TERM=xterm-256color scons build/x86/out/m5 - name: Download tests working-directory: ${{ github.workspace }}/hip run: wget http://dist.gem5.org/dist/v22-1/test-progs/halo-finder/ForceTreeTest - name: Run HACC tests working-directory: ${{ github.workspace }} run: | build/VEGA_X86/gem5.opt configs/example/apu_se.py -n3 --reg-alloc-policy=dynamic --benchmark-root=hip -c ForceTreeTest --options="0.5 0.1 64 0.1 1 N 12 rcb"