verilator/bin
Geza Lore c52f3349d1
Initial implementation of generic multithreaded tracing (#2269)
The --trace-threads option can now be used to perform tracing on a
thread separate from the main thread when using VCD tracing (with
--trace-threads 1). For FST tracing --trace-threads can be 1 or 2, and
--trace-fst --trace-threads 1 is the same a what --trace-fst-threads
used to be (which is now deprecated).

Performance numbers on SweRV EH1 CoreMark, clang 6.0.0, Intel i7-3770 @
3.40GHz, IO to ramdisk, with numactl set to schedule threads on different
physical cores. Relative speedup:

--trace     ->  --trace --trace-threads 1      +22%
--trace-fst ->  --trace-fst --trace-threads 1  +38% (as --trace-fst-thread)
--trace-fst ->  --trace-fst --trace-threads 2  +93%

Speed relative to --trace with no threaded tracing:
--trace                                 1.00 x
--trace --trace-threads 1               0.82 x
--trace-fst                             1.79 x
--trace-fst --trace-threads 1           1.23 x
--trace-fst --trace-threads 2           0.87 x

This means FST tracing with 2 extra threads is now faster than single
threaded VCD tracing, and is on par with threaded VCD tracing. You do
pay for it in total compute though as --trace-fst --trace-threads 2 uses
about 240% CPU vs 150% for --trace-fst --trace-threads 1, and 155% for
--trace --trace threads 1. Still for interactive use it should be
helpful with large designs.
2020-04-21 23:49:07 +01:00
..
verilator Initial implementation of generic multithreaded tracing (#2269) 2020-04-21 23:49:07 +01:00
verilator_coverage Add SPDX license identifiers. No functional change. 2020-03-21 11:24:24 -04:00
verilator_difftree Add SPDX license identifiers. No functional change. 2020-03-21 11:24:24 -04:00
verilator_gantt Add SPDX license identifiers. No functional change. 2020-03-21 11:24:24 -04:00
verilator_includer Add SPDX license identifiers. No functional change. 2020-03-21 11:24:24 -04:00
verilator_profcfunc Add SPDX license identifiers. No functional change. 2020-03-21 11:24:24 -04:00