Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Why Hspice somtimes get wrong results when using multicore?

Status
Not open for further replies.

Arthur Asimov Heinlein

Junior Member level 3
Joined
Jan 22, 2014
Messages
26
Helped
0
Reputation
0
Reaction score
0
Trophy points
1
Activity points
235
I use -mt command to make hspice run on several cores, it sometimes gets correct results faster than just one core running, but sometimes gets totally wrong results while I could get correct results by running on just one core. Why's that case?

Thanks!
 

maybe that version of hspice is not optimized for multicore processing.
 

If your circuit has multiple valid solutions (as many do) then
accuracy and method choices, coupled with the vagaries of
numerical solution goal-seeking, can give you different and
yet valid solutions; error residues can be different and then
differently amplified, etc.

Multicore is all abotu solution speed, and speed-first often
means looser accuracy defaults and more error residue at
every solution-point. You might try enforcing total consistency
of solution method, steps and tolerances and see what results.

You might want to look closer at the "wrong" solution and
how you got there, because it may just be "unexpected"
and waiting to emerge in your design validation sample :(
in real life.
 
If your circuit has multiple valid solutions (as many do) then
accuracy and method choices, coupled with the vagaries of
numerical solution goal-seeking, can give you different and
yet valid solutions; error residues can be different and then
differently amplified, etc.

Multicore is all abotu solution speed, and speed-first often
means looser accuracy defaults and more error residue at
every solution-point. You might try enforcing total consistency
of solution method, steps and tolerances and see what results.

You might want to look closer at the "wrong" solution and
how you got there, because it may just be "unexpected"
and waiting to emerge in your design validation sample :(
in real life.

Thanks for your answer, but could you please tell me how to enforce total consistency of solution method, steps and tolerances?
 

I don't use HSPICE but the SPICEs I do use, can be made to
dump the variables list; your tolerances and method are
controlled by some of them. Their names, you'd probably
have to go to the user docs for (I could tell you what I see,
but it might not help).

The steps, ought to just be evident in the .tran statement.
However you might want to read up on what happens in the
two different modes when, say, you don't specify the minimum
timestep; different processing might assert different defaults,
perhaps.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top