Tests: Add verilator_gantt no-proc test.
This commit is contained in:
parent
20af8a36a7
commit
f5c9deecb8
|
|
@ -11,12 +11,12 @@ if (!$::Driver) { use FindBin; exec("$FindBin::Bin/bootstrap.pl", @ARGV, $0); di
|
|||
scenarios(dist => 1);
|
||||
|
||||
run(cmd => ["cd $Self->{obj_dir} && $ENV{VERILATOR_ROOT}/bin/verilator_gantt"
|
||||
. " $Self->{t_dir}/t_gantt_io.dat > gantt.log"],
|
||||
. " $Self->{t_dir}/$Self->{name}.dat > gantt.log"],
|
||||
check_finished => 0);
|
||||
|
||||
files_identical("$Self->{obj_dir}/gantt.log", $Self->{golden_filename});
|
||||
|
||||
vcd_identical("$Self->{obj_dir}/profile_threads.vcd", "$Self->{t_dir}/t_gantt_io_vcd.out");
|
||||
vcd_identical("$Self->{obj_dir}/profile_threads.vcd", "$Self->{t_dir}/$Self->{name}.vcd.out");
|
||||
|
||||
ok(1);
|
||||
1;
|
||||
|
|
|
|||
|
|
@ -0,0 +1,24 @@
|
|||
VLPROFTHREAD 1.1 # Verilator thread profile dump version 1.1
|
||||
VLPROF arg --threads 2
|
||||
VLPROF arg +verilator+prof+threads+start+2
|
||||
VLPROF arg +verilator+prof+threads+window+2
|
||||
VLPROF stat yields 0
|
||||
VLPROF eval start 595 elapsed 11655 cpu 19 on thread 1
|
||||
VLPROF eval_loop start 945 elapsed 11235 cpu 19 on thread 1
|
||||
VLPROF mtask 6 start 2695 elapsed 210 predict_start 0 predict_cost 30 cpu 19 on thread 1
|
||||
VLPROF mtask 10 start 9695 elapsed 175 predict_start 196 predict_cost 30 cpu 19 on thread 1
|
||||
VLPROF eval start 13720 elapsed 8610 cpu 19 on thread 1
|
||||
VLPROF eval_loop start 14000 elapsed 8085 cpu 19 on thread 1
|
||||
VLPROF mtask 6 start 15610 elapsed 210 predict_start 0 predict_cost 30 cpu 19 on thread 1
|
||||
VLPROF mtask 10 start 21700 elapsed 175 predict_start 196 predict_cost 30 cpu 19 on thread 1
|
||||
VLPROF mtask 5 start 5495 elapsed 595 predict_start 0 predict_cost 30 cpu 10 on thread 2
|
||||
VLPROF mtask 7 start 6300 elapsed 595 predict_start 30 predict_cost 30 cpu 10 on thread 2
|
||||
VLPROF mtask 8 start 7490 elapsed 1050 predict_start 60 predict_cost 107 cpu 10 on thread 2
|
||||
VLPROF mtask 9 start 9135 elapsed 595 predict_start 167 predict_cost 30 cpu 10 on thread 2
|
||||
VLPROF mtask 11 start 10255 elapsed 805 predict_start 197 predict_cost 30 cpu 10 on thread 2
|
||||
VLPROF mtask 5 start 18375 elapsed 595 predict_start 0 predict_cost 30 cpu 10 on thread 2
|
||||
VLPROF mtask 7 start 19145 elapsed 175 predict_start 30 predict_cost 30 cpu 10 on thread 2
|
||||
VLPROF mtask 8 start 19670 elapsed 140 predict_start 60 predict_cost 107 cpu 10 on thread 2
|
||||
VLPROF mtask 9 start 20650 elapsed 70 predict_start 167 predict_cost 30 cpu 10 on thread 2
|
||||
VLPROF mtask 11 start 21140 elapsed 105 predict_start 197 predict_cost 30 cpu 10 on thread 2
|
||||
VLPROF stat ticks 23415
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
Verilator Gantt report
|
||||
|
||||
Argument settings:
|
||||
+verilator+prof+threads+start+2
|
||||
+verilator+prof+threads+window+2
|
||||
--threads 2
|
||||
|
||||
Analysis:
|
||||
Total threads = 2
|
||||
Total mtasks = 7
|
||||
Total cpus used = 2
|
||||
Total yields = 0
|
||||
Total evals = 2
|
||||
Total eval loops = 2
|
||||
Total eval time = 21875 rdtsc ticks
|
||||
Longest mtask time = 1190 rdtsc ticks
|
||||
All-thread mtask time = 5495 rdtsc ticks
|
||||
Longest-thread efficiency = 5.4%
|
||||
All-thread efficiency = 12.6%
|
||||
All-thread speedup = 0.3
|
||||
|
||||
Prediction (what Verilator used for scheduling):
|
||||
All-thread efficiency = 63.2%
|
||||
All-thread speedup = 1.3
|
||||
|
||||
Statistics:
|
||||
min log(p2e) = -3.681 from mtask 5 (predict 30, elapsed 1190)
|
||||
max log(p2e) = -2.409 from mtask 8 (predict 107, elapsed 1190)
|
||||
mean = -2.992
|
||||
stddev = 0.459
|
||||
e ^ stddev = 1.583
|
||||
|
||||
CPUs:
|
||||
cpu 10: cpu_time=4725
|
||||
cpu 19: cpu_time=770
|
||||
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
#!/usr/bin/env perl
|
||||
if (!$::Driver) { use FindBin; exec("$FindBin::Bin/bootstrap.pl", @ARGV, $0); die; }
|
||||
# DESCRIPTION: Verilator: Verilog Test driver/expect definition
|
||||
#
|
||||
# Copyright 2003 by Wilson Snyder. This program is free software; you
|
||||
# can redistribute it and/or modify it under the terms of either the GNU
|
||||
# Lesser General Public License Version 3 or the Perl Artistic License
|
||||
# Version 2.0.
|
||||
# SPDX-License-Identifier: LGPL-3.0-only OR Artistic-2.0
|
||||
|
||||
scenarios(dist => 1);
|
||||
|
||||
run(cmd => ["cd $Self->{obj_dir} && $ENV{VERILATOR_ROOT}/bin/verilator_gantt"
|
||||
. " --no-vcd $Self->{t_dir}/$Self->{name}.dat > gantt.log"],
|
||||
check_finished => 0);
|
||||
|
||||
files_identical("$Self->{obj_dir}/gantt.log", $Self->{golden_filename});
|
||||
|
||||
ok(1);
|
||||
1;
|
||||
Loading…
Reference in New Issue