Forum: FPGA, VHDL & Verilog Multi-core simulation in Modelsim

von Dima U. (ustinoff)

Rate this post
0 useful
not useful
Hello everyone.

Imagine i have multi-core CPU (2 or 4, nevermind). Can i use all cores 
to accelerate a simulation in Modelsim?

von Strubi (Guest)

Rate this post
0 useful
not useful
Last time I checked none of the usual suspects managed to do multi core 
processing of a HDL simulation. This is due to the 'nature law' of event 
driven simulation architectures.
What I tried to speed up verification processes is to split several 
simulations into different/distributed threads and let them talk over 
sockets (co-simulation). This is not trivial though and requires some 
coding work.

von Marcus H. (mharnisch)

Rate this post
0 useful
not useful
I am afraid that EDA vendors see little value in multithreading the 
simulator kernel (as opposed to, e.g. having separate GUI or logging 
threads, which is being done).

Not only does multithreading cause synchronization overhead between 
threads, it also raises questions regarding clever partitioning and 
reproducability (no changes in behavior between two executions of the 
same simulation, even on different machines).

Typical projects the size where it is actually worth your while thinking 
about potential advantages of multithreading come with many testcases, 
so that you will get a chance using all your cores at once by running a 
number of simulations in parallel.

: Edited by User


Entering an e-mail address is optional. If you want to receive reply notifications by e-mail, please log in.

Rules — please read before posting

  • Post long source code as attachment, not in the text
  • Posting advertisements is forbidden.

Formatting options

  • [c]C code[/c]
  • [avrasm]AVR assembler code[/avrasm]
  • [vhdl]VHDL code[/vhdl]
  • [code]code in other languages, ASCII drawings[/code]
  • [math]formula (LaTeX syntax)[/math]

Bild automatisch verkleinern, falls nötig
Note: the original post is older than 6 months. Please don't ask any new questions in this thread, but start a new one.