verilator/include
Yangyu Chen 80088caa13 VlThreadPool: Improve too many threads check logic
As the thread pool is initialized for `m_threads - 1` workers, when
`m_threads` equals `the number of processors`, the `num_threads` will be
equal to `the number of processors - 1`, which is not needed to set
affinity.

This also improves backward compatibility. As mentioned in issue #6826,
when the new context API is not used, the default thread pool is created
with the number of workers equal to `the number of processors - 1`. In
this case, when using `--threads n` with `n` less than the number of
processors, the thread pool is still created with the `number of
processors - 1` workers, so we will even set wrong affinity, and let
some SMTs on the same core be used for emulator model threads, which
degrades performance. With this fix, the affinity will not be set in
this case.

Signed-off-by: Yangyu Chen <cyy@cyyself.name>
2025-12-19 21:57:08 +08:00
..
gtkwave Update libfst from upstream 2025-04-12 18:10:40 -04:00
vltstd Commentary: Changes update 2025-05-22 06:45:39 -04:00
.gitignore Support VPI product info, warning calls, etc, bug588. 2013-01-17 21:40:37 -05:00
verilated.cpp Fix stale pointers in VerilatedImpData::m_hierMap (#6726) 2025-12-07 15:42:29 -05:00
verilated.h Support SystemC time resolution with step 10/100 (#6633) (#6715) 2025-12-09 19:34:29 -05:00
verilated.mk.in Makefile: Hide deplist echo 2025-11-16 17:16:14 -05:00
verilated.v Copyright year update. 2025-01-01 08:30:25 -05:00
verilated_config.h.in Copyright year update. 2025-01-01 08:30:25 -05:00
verilated_cov.cpp Internals: Fix up include/ cppcheck issues (#6311) 2025-08-20 07:27:55 -04:00
verilated_cov.h Support separate coverage counters for toggles 0->1 and 1->0 (#6086) 2025-08-20 07:31:04 -04:00
verilated_cov_key.h Copyright year update. 2025-01-01 08:30:25 -05:00
verilated_dpi.cpp Internals: Fix up include/ cppcheck issues (#6311) 2025-08-19 21:36:52 -04:00
verilated_dpi.h Internals: Make AstCExpr always cleanOut (#6280) (#6570) 2025-10-19 09:44:33 +01:00
verilated_fst_c.cpp Optimize trace initialization code size (#6749) 2025-12-02 07:19:45 -05:00
verilated_fst_c.h Optimize trace initialization code size (#6749) 2025-12-02 07:19:45 -05:00
verilated_fst_sc.cpp Copyright year update. 2025-01-01 08:30:25 -05:00
verilated_fst_sc.h Copyright year update. 2025-01-01 08:30:25 -05:00
verilated_funcs.h Add `sc_biguint` pragma (#6712) 2025-11-20 17:08:59 -05:00
verilated_imp.h Fix stale pointers in VerilatedImpData::m_hierMap (#6726) 2025-12-07 15:42:29 -05:00
verilated_intrinsics.h Copyright year update. 2025-01-01 08:30:25 -05:00
verilated_probdist.cpp Internals: Favor preincrements. No functional change. 2025-05-09 21:20:35 -04:00
verilated_profiler.cpp Internals: Fix up include/ cppcheck issues (#6311) 2025-08-19 21:36:52 -04:00
verilated_profiler.h Internals: Fix minor macOS issues 2025-11-23 11:04:51 +00:00
verilated_random.cpp Support `std::randomize(){...}` (#4706) (#6573) 2025-11-14 14:32:01 -05:00
verilated_random.h Support array reference arguments into 'std::randomize()' (#6384) (#6719) 2025-11-26 15:50:24 +03:00
verilated_saif_c.cpp Optimize trace initialization code size (#6749) 2025-12-02 07:19:45 -05:00
verilated_saif_c.h Optimize trace initialization code size (#6749) 2025-12-02 07:19:45 -05:00
verilated_saif_sc.h Add `--trace-saif` for SAIF power traces (#5812) 2025-03-07 10:41:29 -05:00
verilated_save.cpp Internals: Fix up include/ cppcheck issues (#6311) 2025-08-19 21:36:52 -04:00
verilated_save.h Internals: Cleanup cppcheck c casts. No functional change intended. 2025-08-21 20:06:43 -04:00
verilated_sc.h Copyright year update. 2025-01-01 08:30:25 -05:00
verilated_sc_trace.h Internals: Fix coverage exclusion markers 2025-10-01 21:22:16 +01:00
verilated_std.sv Support parsing only of covergroup.option.option_name 2025-12-04 21:55:55 -05:00
verilated_std_waiver.vlt Update UVM 1800.2 2017-1.1 waivers 2025-11-01 16:34:31 -04:00
verilated_sym_props.h Apply 'make format' 2025-01-10 00:05:16 +00:00
verilated_syms.h Copyright year update. 2025-01-01 08:30:25 -05:00
verilated_threads.cpp VlThreadPool: Improve too many threads check logic 2025-12-19 21:57:08 +08:00
verilated_threads.h Set runtime worker thread stack sizes on macOS (#6721) 2025-11-22 20:13:46 -05:00
verilated_timing.cpp Fix `--timing` with `--x-initial-edge` (#6603) (#6631) 2025-11-03 09:39:23 -05:00
verilated_timing.h Fix 'experimental/coroutine' file not found on macOS (#5030) (#5031) (#5151) 2024-06-08 08:33:50 -04:00
verilated_trace.h Fix missing net type mappings in FST traces (#6582) (#6583) 2025-10-21 21:07:51 -04:00
verilated_trace_imp.h Commentary: spelling 2025-08-25 18:47:08 -04:00
verilated_types.h Internals: Replace VlTriggerVec with unpacked array (#6616) 2025-10-31 18:29:11 +00:00
verilated_vcd_c.cpp Optimize trace initialization code size (#6749) 2025-12-02 07:19:45 -05:00
verilated_vcd_c.h Optimize trace initialization code size (#6749) 2025-12-02 07:19:45 -05:00
verilated_vcd_sc.cpp Copyright year update. 2025-01-01 08:30:25 -05:00
verilated_vcd_sc.h Copyright year update. 2025-01-01 08:30:25 -05:00
verilated_vpi.cpp Internals: Fix name of some static and thread variables. No functional change. 2025-10-27 20:49:41 -04:00
verilated_vpi.h Copyright year update. 2025-01-01 08:30:25 -05:00
verilatedos.h Fix extern function that returns parametrized class (#4924). 2025-12-06 16:16:06 -05:00
verilatedos_c.h Internals: cppcheck fixes. No functional change. (#6687) 2025-11-12 18:54:22 -05:00