Update README and put logs in the right places.

This commit is contained in:
Kunlin Han 2024-04-11 20:16:13 -07:00
parent e25177cf4c
commit a55bb01d1d
2 changed files with 20 additions and 2 deletions

View File

@ -17,9 +17,14 @@ profile: obj_dir_profiling/Vtestbench_$(WALLYCONF)
mv gmon.out gmon_$(WALLYCONF).out
gprof $(WORKING_DIR)/obj_dir_profiling/Vtestbench_$(WALLYCONF) gmon_$(WALLYCONF).out > gmon_$(WALLYCONF).log
verilator_profcfunc gmon_$(WALLYCONF).log > gmon_$(WALLYCONF).log2
mkdir -p $(WORKING_DIR)/logs_profiling
mv gmon_$(WALLYCONF)* $(WORKING_DIR)/logs_profiling
echo "Please check $(WORKING_DIR)/logs_profiling/gmon_$(WALLYCONF)* for logs and output files."
run: obj_dir_non_profiling/Vtestbench_$(WALLYCONF)
time $(WORKING_DIR)/obj_dir_non_profiling/Vtestbench_$(WALLYCONF) +TEST=$(TEST)
mkdir -p $(WORKING_DIR)/logs
time $(WORKING_DIR)/obj_dir_non_profiling/Vtestbench_$(WALLYCONF) +TEST=$(TEST) 2>&1 > $(WORKING_DIR)/logs/$(WALLYCONF)_$(TEST).log
echo "Please check $(WORKING_DIR)/logs/$(WALLYCONF)_$(TEST).log for logs and output files."
obj_dir_non_profiling/Vtestbench_$(WALLYCONF): $(SOURCE)
mkdir -p obj_dir_non_profiling
@ -42,4 +47,4 @@ questa:
time vsim -c -do "do ${WALLY}/sim/wally-batch.do $(WALLYCONF) $(TEST)"
clean:
rm -rf $(WORKING_DIR)/obj_dir_non_profiling $(WORKING_DIR)/obj_dir_profiling
rm -rf $(WORKING_DIR)/obj_dir_non_profiling $(WORKING_DIR)/obj_dir_profiling $(WORKING_DIR)/logs $(WORKING_DIR)/logs_profiling

View File

@ -2,11 +2,21 @@
Different executables will be built for different architecture configurations, e.g., rv64gc, rv32i. A executable can run all the test suites that it can run with `+TEST=<testsuite>`.
Demand:
- Avoid unnecessary compilation by sharing the same executable for a specific configuration
- executables are stored in `obj_dir_non_profiling` and `obj_dir_profiling` correspondingly
- Wsim should support `-s verilator` option and run simulation with Verilator.
## Folder Structure
This folder contains the following files that help the simulation of Wally with Verilator:
- Makefile: simplify the usage with Verialtor
- executables
- `obj_dir_non_profiling`: non-profiling executables for different configurations
- `obj_dir_profiling`: profiling executables for different configurations
- logs in `logs` and `logs_profiling` correspondingly
- [NOT WORKING] `logs`: contains all the logs
## Examples
@ -16,4 +26,7 @@ This folder contains the following files that help the simulation of Wally with
make WALLYCONF=rv64gc TEST=arch64i run
# profiling mode
make WALLYCONF=rv64gc TEST=arch64i profile
# remove all the temporary files, including executables and logs
make clean
```