Multicore Parallelization
TechniqueMulticore Parallelization is a testbench optimization technique that distributes compute-intensive verification work—especially sequence and instruction randomization—across multiple CPU threads. In the provided evidence, the technique is described primarily in eUVM and applied to RISCV-DV through parallelized forks, thread affinity, workload slicing, asynchronous worker threads, and refactoring of shared static state.
WIKI
Overview
Multicore Parallelization in this context refers to distributing testbench execution work across multiple CPU threads, with particular emphasis on compute-intensive sequence and instruction randomization. The evidence describes the technique in eUVM, where forked processes can be assigned to specific processor threads, unlike SystemVerilog fork semantics where a task created by fork executes on the same CPU thread as its parent. [C1]
The technique is motivated by the limitation that multicore support in conventional SystemVerilog-oriented flows is largely focused on RTL and gate-level simulation, while behavioral testbenches share data by reference and require user-level constructs for synchronized shared-data access. [C2]
NEIGHBORHOOD
No graph connections found for this entity yet. It may appear in future ingestion runs.
explore full graph →