Add torture run options to makefile (#992)
* Add torture option to chipyard makefile * Bump spike to get the signature bug fix
This commit is contained in:
@@ -56,6 +56,7 @@ include $(base_dir)/generators/cva6/cva6.mk
|
|||||||
include $(base_dir)/generators/tracegen/tracegen.mk
|
include $(base_dir)/generators/tracegen/tracegen.mk
|
||||||
include $(base_dir)/generators/nvdla/nvdla.mk
|
include $(base_dir)/generators/nvdla/nvdla.mk
|
||||||
include $(base_dir)/tools/dromajo/dromajo.mk
|
include $(base_dir)/tools/dromajo/dromajo.mk
|
||||||
|
include $(base_dir)/tools/torture.mk
|
||||||
|
|
||||||
#########################################################################################
|
#########################################################################################
|
||||||
# Prerequisite lists
|
# Prerequisite lists
|
||||||
|
|||||||
@@ -83,8 +83,20 @@ Torture tests
|
|||||||
The RISC-V torture utility generates random RISC-V assembly streams, compiles them,
|
The RISC-V torture utility generates random RISC-V assembly streams, compiles them,
|
||||||
runs them on both the Spike functional model and the SW simulator, and verifies
|
runs them on both the Spike functional model and the SW simulator, and verifies
|
||||||
identical program behavior. The torture utility can also be configured to run
|
identical program behavior. The torture utility can also be configured to run
|
||||||
continuously for stress-testing. The torture utility exists within the ``utilities``
|
continuously for stress-testing. The torture utility exists within the ``tools``
|
||||||
directory.
|
directory. To run torture tests, run ``make`` in the simulation directories:
|
||||||
|
|
||||||
|
.. code-block:: shell
|
||||||
|
|
||||||
|
make CONFIG=CustomConfig torture
|
||||||
|
|
||||||
|
To run overnight tests (repeated random tests), run
|
||||||
|
|
||||||
|
.. code-block:: shell
|
||||||
|
|
||||||
|
make CONFIG=CustomConfig TORTURE_ONIGHT_OPTIONS=<overnight options> torture-overnight
|
||||||
|
|
||||||
|
You can find the overnight options in `overnight/src/main/scala/main.scala` in the torture repo.
|
||||||
|
|
||||||
Firesim Debugging
|
Firesim Debugging
|
||||||
---------------------------
|
---------------------------
|
||||||
|
|||||||
Submodule toolchains/esp-tools/riscv-isa-sim updated: 467da4f613...34741e07bc
Submodule toolchains/riscv-tools/riscv-isa-sim updated: bf4b1e09ed...ce42f1b55a
Submodule tools/torture updated: 59b0f0f224...b2b66a66d5
18
tools/torture.mk
Normal file
18
tools/torture.mk
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
HELP_COMMANDS += \
|
||||||
|
" torture = run torture on the RTL testbench" \
|
||||||
|
" torture-overnight = run torture overnight tests (set TORTURE_ONIGHT_OPTIONS to pass test options)"
|
||||||
|
|
||||||
|
#########################################################################################
|
||||||
|
# run torture rules
|
||||||
|
#########################################################################################
|
||||||
|
.PHONY: torture torture-overnight
|
||||||
|
|
||||||
|
torture: $(output_dir) $(sim)
|
||||||
|
$(MAKE) -C $(base_dir)/tools/torture/output clean
|
||||||
|
$(MAKE) -C $(base_dir)/tools/torture R_SIM=$(sim) gen rtest
|
||||||
|
cp -r $(base_dir)/tools/torture/output $(output_dir)/torture
|
||||||
|
rm $(output_dir)/torture/Makefile
|
||||||
|
|
||||||
|
TORTURE_ONIGHT_OPTIONS :=
|
||||||
|
torture-overnight: $(output_dir) $(sim)
|
||||||
|
$(MAKE) -C $(base_dir)/tools/torture R_SIM=$(sim) OPTIONS="$(TORTURE_ONIGHT_OPTIONS)" rnight
|
||||||
Reference in New Issue
Block a user