diff --git a/.circleci/config.yml b/.circleci/config.yml index 1e5146bb..50577af7 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -161,6 +161,40 @@ jobs: paths: - "/home/riscvuser/project" + prepare-boomrocketexample: + docker: + - image: riscvboom/riscvboom-images:0.0.5 + environment: + JVM_OPTS: -Xmx3200m # Customize the JVM maximum heap limit + TERM: dumb + + steps: + # Checkout the code + - checkout + + - run: + name: Create hash of toolchains + command: | + .circleci/create-hash.sh + + - restore_cache: + keys: + - riscv-tools-installed-v1-{{ checksum "../riscv-tools.hash" }} + + - restore_cache: + keys: + - verilator-installed-v1-{{ checksum "sims/verisim/verilator.mk" }} + + - run: + name: Building the boomrocketexample subproject using Verilator + command: .circleci/do-rtl-build.sh SUB_PROJECT=boomrocketexample CONFIG=SmallDefaultBoomAndRocketConfig + no_output_timeout: 120m + + - save_cache: + key: boomrocketexample-{{ .Branch }}-{{ .Revision }} + paths: + - "/home/riscvuser/project" + prepare-boom: docker: - image: riscvboom/riscvboom-images:0.0.5 @@ -319,6 +353,34 @@ jobs: name: Run boomexample benchmark tests command: make run-bmark-tests -C sims/verisim SUB_PROJECT=boomexample CONFIG=SmallDefaultBoomConfig + boomrocketexample-run-benchmark-tests: + docker: + - image: riscvboom/riscvboom-images:0.0.5 + environment: + JVM_OPTS: -Xmx3200m # Customize the JVM maximum heap limit + TERM: dumb + + steps: + # Checkout the code + - checkout + + - run: + name: Create hash of toolchains + command: | + .circleci/create-hash.sh + + - restore_cache: + keys: + - riscv-tools-installed-v1-{{ checksum "../riscv-tools.hash" }} + + - restore_cache: + keys: + - boomrocketexample-{{ .Branch }}-{{ .Revision }} + + - run: + name: Run boomrocketexample benchmark tests + command: make run-bmark-tests -C sims/verisim SUB_PROJECT=boomexample CONFIG=SmallDefaultBoomAndRocketConfig + boom-run-benchmark-tests: docker: - image: riscvboom/riscvboom-images:0.0.5 @@ -427,6 +489,11 @@ workflows: - install-riscv-toolchain - install-verilator + - prepare-boomrocketexample: + requires: + - install-riscv-toolchain + - install-verilator + - prepare-boom: requires: - install-riscv-toolchain @@ -456,6 +523,11 @@ workflows: - install-riscv-toolchain - prepare-boomexample + - boomrocketexample-run-benchmark-tests: + requires: + - install-riscv-toolchain + - prepare-boomrocketexample + - boom-run-benchmark-tests: requires: - install-riscv-toolchain