While PSS type simualtion of extracted netlist, it takes a lot of time ( like 12 to 14 hrs). ( IC5141,MMSIM12)
Is there any ways of running things so that the simulations can exploit the Multicores in the machine/workstation.
Did you try turning on "APS" in the Setup->High Performance Options form? You can control the number of threads that way too.
There's also the option to do parasitic reduction on this form.
Of course, it follows that you should ensure your PSS is set up appropriately too (you didn't give any details).
In reply to Andrew Beckett:
The query is not for a specific PSS set-up. It is generic. It is about how to exploit the machine resources and speed up the simulation.
I checked the Setup option in ADE.
But couldn't find the option "High Performance Options form". I could only see one option called TURBO/Parasitoc Reduction.
What is TURBO. I TURBO option form I am able to see Multithread option.
The Multicore option is NOT there.
Where I can get APS.
In reply to RFStuff :
Which version of spectre are you using (spectre -W from the command line), and which version of Virtuoso (either "icfb -W" or "virtuoso -W")? I suspect you're using too old versions (Spectre Turbo was an earlier enhancement to spectre and spectreRF to provide some speed up - it's now end of lifed as the functionality is superseded by the APS ("Accelerated Parallel Simulator") option to spectre/spectreRF.
I am currently using
Spectre: sub-version 10.1.1.200.isr13
icfb: sub-version 184.108.40.2060.6.132
Your IC version is too old. The high performance form (which replaces the Turbo/Parasitics form) was introduced in 220.127.116.110.6.141 (any later version would be OK too).
Without this you could enter +aps +mt=N on the userCmdLineOption field on Setup->Environment (where N is the number of threads you want - or just +mt if you want it to auto-choose).
Thanks a lot.
Is there any option to use multiple cores of the machine.
I installed the lattest ISR for IC5141.
The spectre version :sub-version 10.1.1.200.isr13
The icfb version:- sub-version 18.104.22.1680.6.151
Now I am getting the desired form for APS.
I have attched the snapshot of the form
It is asking for number of threads & Also process affinity ( is it for Number of cores).
Suppose I have 16 cores then what I should give to exploit all the cores
Do not fill in the process affinity - leave it blank. It's an esoteric option which can potentially give some extra speed, but it has to be used very carefully (the idea is that it allows you to tell the simulator which range of cores you want to "reserve" - the danger is that if you have multiple simulations reserving the same specific core numbers, it can end up being slower, of course). Without this the OS will take care of allocating cores (which may change over time depending on the machine loading).
If you specify the number of threads as "auto", it will pick up to 8 (depending on the machine having that number of cores, and the circuit being large enough to benefit from them). If "manual" you could specify 16 (or whatever number you want).
You should also select "APS" of course.
That's it - very simple.
Thanks a lot for your reply.
As you see there are thre otions in the form. Spectre, Turbo , APS.
I thinks APS can affect the accuracy.
I used Spectre but it takes maximum 8 cores and 8 threads.
Why spectre is taking maximum 8 cores.
Can you throw some light on these options.
Please upload (use the Options tab when replying) the spectre.out from your simulation; that way I can see what options you've picked, the size of your circuit, and any messages spectre will have given.
I have attched the spectre.out file. This simulation is currently running in APS mode and this is the corresponding spectre.out file.
However, I want the difference between Spectre, Turbo and APS, in performance and accuracy point of views.
OK, so it's not limited to 8 threads - you're running with 10 and it says it is running with 10. You have also set process affinity (although I advised you not to - you've actually set the processor affinity to wider than 10 CPUs - which is fine - but you need to be careful that there is not a second job running on the same machine with the same processor affinity; so bestnot to set it and let the OS take care of it).
Turbo is no longer in MMSIM (in MMSIM11.1 or MMSIM12.1 - as I said earlier, it was end of lifed.
There is discussion on APS in the documentation, and I suggest you read that. The idea with APS is that it doesn't compromise accuracy, but does provide accelleration by a combination of optimization techniques on what is being solved (e.g. filtering out parts of the circuit which will have no influence, such as dangling resistors, amongst other things), plus newer algorithms - e.g. a new matrix solver - plus smarter timestep placement - plus the ability to evaluate the device model code in parallel and also to do the matrix solve in parallel.
When I sent the spectre.out file. I was running the simulation in APS. APS takes as many cores as one can give. It can take all 16 cores of my machine.
However, if I run in Spectre option, It was taking maximum 8 cores. That is what I was aking: that Why spectre option is taking maximum 8 cores ?
I will look into the documents.
Sorry, to jot down another query( I feel it is relevant to add in this query:-
There is also option remote, local and distributed.
Is it possible to run remotely ( for example a server) through ssh ( I am using IC5141).
It looks like IC5141 can run remotely though rsh.