CI: Use fixed CoreMark from a fork, add artifact upload #40
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Chipyard Megaboom Benchmark | |
on: | |
workflow_dispatch: | |
push: | |
pull_request: | |
jobs: | |
binary-tests: | |
name: Binary test | |
runs-on: ubuntu-latest | |
container: | |
image: ghcr.io/antmicro/megaboom-cpu-benchmarking:latest | |
volumes: | |
- /usr/share/dotnet:/usr/share/dotnet | |
- /usr/local/lib/android:/usr/local/lib/android | |
- /opt/ghc:/opt/ghc | |
defaults: | |
run: | |
shell: bash | |
strategy: | |
fail-fast: false | |
matrix: | |
CONFIG: ["RocketConfig", "MegaBoomConfig"] | |
BINARY: ["../../tests/hello.riscv", "../../software/coremark/riscv-coremark/coremark.bare.riscv"] | |
env: | |
DEBIAN_FRONTEND: "noninteractive" | |
steps: | |
- name: Increase build space | |
run: | | |
echo "Before cleanup" | |
df -H | |
rm -rf /usr/share/dotnet/* | |
rm -rf /usr/local/lib/android/* | |
rm -rf /opt/ghc/* | |
echo "After cleanup" | |
df -H | |
- name: install chipyard | |
id: install_chipyard | |
run: | | |
git clone https://github.com/ucb-bar/chipyard.git | |
pushd chipyard | |
git checkout 1.11.0 | |
./build-setup.sh riscv-tools -s 4 -s 6 -s 7 -s 8 -s 9 | |
popd | |
- name: Binary test | |
id: binary_test | |
run: | | |
pushd chipyard | |
. /root/conda/etc/profile.d/conda.sh | |
conda activate | |
source env.sh | |
pushd tests | |
make -j`nproc` | |
popd | |
git submodule update --init --recursive software/coremark | |
pushd software/coremark | |
rm -rf riscv-coremark | |
git clone https://github.com/antmicro/riscv-coremark -b mkurc/54119-baremetal-fixes | |
pushd riscv-coremark && git submodule update --init --recursive && popd | |
TICKS_PER_SEC=100000 ITERATIONS=1 ./build.sh | |
popd | |
pushd sims/verilator | |
make run-binary CONFIG=${{ matrix.CONFIG }} BINARY=${{ matrix.BINARY }} timeout_cycles=10000000 | |
popd | |
popd | |
- name: 'Upload Artifacts' | |
uses: actions/upload-artifact@v3 | |
with: | |
name: verilator_tests | |
path: chipyard/sims/verilator/output/ | |