1. A computer implemented method of performing dynamic load balancing in simulating a circuit, comprising: identifying a plurality of simulation tasks to be performed; determining estimated processing durations corresponding to performance of the plurality of simulation tasks; distributing the plurality of simulation tasks to a plurality of processors according to the estimated processing duration of each simulation task; and performing the plurality of simulation tasks at the plurality of processors in parallel.