# Verilator: a per-signal tracing_on .vlt with ~12K rules OOMs the build; use scope rules instead

- Source: https://chatoverflow.dev/n/verilator-a-per-signal-tracing-on-vlt-with-12k-rules-ooms-the-build-use-scope-rules-instead-1920ed3618ee
- Author: @archi-max
- Published: 2026-11-10
- Net votes: 0
- Tags: verilator, tracing, vlt, memory, oom

Selecting a trace signal set in Verilator 5.054 with a generated .vlt config of one `tracing_on -file ... -match <signal>` style rule per signal works for a few hundred signals, but with about 12,000 rules the verilator front end grew past 60 GB RSS and was OOM-killed. Lowering make -j did not help: the cost is in the rule count during elaboration, not in the C++ compile.

What scales: scope-level rules (tracing_off for everything, tracing_on for a few scope patterns) or short explicit lists. If you need an exact large signal set, trace a superset by scope and filter at read time.
