verilator/docs/guide
Geza Lore b51f887567
Perform VCD tracing in parallel when using --threads (#3449)
VCD tracing is now parallelized using the same thread pool as the model.
We achieve this by breaking the top level trace functions into multiple
top level functions (as many as --threads), and after emitting the time
stamp to the VCD file on the main thread, we execute the tracing
functions in parallel on the same thread pool as the model (which we
pass to the trace file during registration), tracing into a secondary
per thread buffer. The main thread will then stitch (memcpy) the buffers
together into the output file.

This makes the `--trace-threads` option redundant with `--trace`, which
now only affects `--trace-fst`. FST tracing uses the previous offloading
scheme.

This obviously helps a lot in VCD tracing performance, and I have seen
better than Amdahl speedup, namely I get 3.9x on XiangShan 4T (2.7x on
OpenTitan 4T).
2022-05-29 19:08:39 +01:00
..
figures Verilator_gantt now shows the predicted mtask times, eval times, and additional statistics. 2021-09-23 22:59:36 -04:00
changes.rst Copyright year update. 2022-01-01 08:26:40 -05:00
conf.py Copyright year update. 2022-01-01 08:26:40 -05:00
connecting.rst Add assert when VerilatedContext is mis-deleted (#3121). 2022-05-15 10:51:03 -04:00
contributing.rst Copyright year update. 2022-01-01 08:26:40 -05:00
contributors.rst Commentary: Update ChangeLog 2022-05-01 22:01:30 -04:00
copyright.rst Copyright year update. 2022-01-01 08:26:40 -05:00
deprecations.rst Improve run-time profiling 2022-03-27 15:57:30 +02:00
environment.rst Copyright year update. 2022-01-01 08:26:40 -05:00
example_cc.rst Copyright year update. 2022-01-01 08:26:40 -05:00
example_common_install.rst Copyright year update. 2022-01-01 08:26:40 -05:00
example_dist.rst Copyright year update. 2022-01-01 08:26:40 -05:00
example_sc.rst Copyright year update. 2022-01-01 08:26:40 -05:00
examples.rst Copyright year update. 2022-01-01 08:26:40 -05:00
exe_sim.rst Improve run-time profiling 2022-03-27 15:57:30 +02:00
exe_verilator_coverage.rst Commentary: Minor spelling fixes in docs/guide/*.rst (#3327) 2022-02-27 10:01:44 +00:00
exe_verilator_gantt.rst Improve run-time profiling 2022-03-27 15:57:30 +02:00
exe_verilator_profcfunc.rst Copyright year update. 2022-01-01 08:26:40 -05:00
exe_verilator.rst Perform VCD tracing in parallel when using --threads (#3449) 2022-05-29 19:08:39 +01:00
executables.rst Copyright year update. 2022-01-01 08:26:40 -05:00
extensions.rst Spelling fixes. 2022-05-14 16:12:57 -04:00
faq.rst Commentary 2022-03-30 20:17:59 -04:00
files.rst Fix filenames with dots overwriting debug .vpp files (#3373). 2022-04-10 10:33:16 -04:00
index.rst Copyright year update. 2022-01-01 08:26:40 -05:00
install.rst Commentary - dependencies 2022-05-15 15:25:46 +01:00
languages.rst Spelling fixes. 2022-05-14 16:12:57 -04:00
overview.rst Copyright year update. 2022-01-01 08:26:40 -05:00
simulating.rst Spelling fixes. 2022-05-14 16:12:57 -04:00
verilating.rst Perform VCD tracing in parallel when using --threads (#3449) 2022-05-29 19:08:39 +01:00
warnings.rst Spelling fixes. 2022-05-14 16:12:57 -04:00