Home > Community > Forums > Custom IC Design > set up parametric simulation to utilize multiple cores

Email

* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

 set up parametric simulation to utilize multiple cores 

Last post Fri, Sep 13 2013 10:22 AM by Andrew Beckett. 8 replies.
Started by whlinfei 30 Aug 2013 10:31 PM. Topic has 8 replies and 1022 views
Page 1 of 1 (9 items)
Sort Posts:
  • Fri, Aug 30 2013 10:31 PM

    • whlinfei
    • Top 500 Contributor
    • Joined on Sun, Mar 15 2009
    • Posts 24
    • Points 435
    set up parametric simulation to utilize multiple cores Reply

    Hi,

     

    I am using Cadence 6.1.5 and spectre to run transient simulations. I wish to run parametric simulations on a few variables in my design.

    The workstation I have access to has 32 cores and typically more than half of them are free.

    May I know how I can set the parametric simulations in a way that parallel transient simulations can be run simutaneously by different cores? Like each core runs a simulation in which the variables take on different values?

     Thank you in advance.

    Regards,

    Whlinfei 

    • Post Points: 20
  • Sat, Aug 31 2013 5:36 AM

    • cgurleyuk
    • Not Ranked
    • Joined on Tue, Dec 27 2011
    • Istanbul, 00-TR
    • Posts 3
    • Points 75
    Re: set up parametric simulation to utilize multiple cores Reply

    Hello Whlinfei,

    If you have access to ADE XL, you can define a parametric simulation by importing an already existing ADE L state or creating a test with a design variable, which you can parameterize by adding a variable specification in the ADE XL "Data View". In the run summary, you can verify the number of sweep points by inspecting the "Run Summary" where it'll report "N Point Sweeps" where N is the number of parametric simulations you have defined

    Then, under Options -> Job Setup you can define the distribution method to be local and increase the number of jobs to the number of processor cores you have. This will ensure ADE XL creates parallel jobs for your parametric simulations, and it'll take considerably less time than serializing the jobs. However, I have found that it's better to use the number of physical processor cores than the number of cores provided by hyperthreading; the former usually yields faster simulation times for me.

    Regards,

    Çağrı.

    • Post Points: 35
  • Sat, Aug 31 2013 9:22 AM

    Re: set up parametric simulation to utilize multiple cores Reply

    Using ADE XL is the simplest approach, but another possibility is to set up distributed simulation in ADE L - doesn't need to be very distributed though ;-)

    For example, I do this sometimes on my machine (mainly for testing or demo purposes). Create a file, queue_config, with this contents:

    myqueue 1
    localhost 4

    In this file, the first line gives the name of the queue and the number of machines contained within that queue (I just used localhost, as that's always the local machine). Then the number after the localhost is the number of parallel jobs that can be run in that queue. You can define multiple queues if you want, or involve other machines - for that read the Distributed Processing guide in the documentation.

    Then run "cdsqmgr /path/to/queue_config".

    Then do:

    setenv LBS_CLUSTER_MASTER localhost

    or

    export LBS_CLUSTER_MASTER=localhost

    depending on the shell you're using (csh for the first, bash/ksh for the second).

    And then run virtuoso - and in ADE L, under Setup->Simulator/Dir/Host pick distributed simulation.

    That's it really - not too complicated. 

    That said, if you are sharing the compute resource with others, this should be set up more centrally because only one cdsqmgr can be run at once (see the docs for more detail, again). If you need to change the config file, you'll need to kill cdsqmgr and restart it.

    But the ADE XL approach is probably simpler!

    Regards,

    Andrew.

    • Post Points: 20
  • Wed, Sep 11 2013 9:50 PM

    • whlinfei
    • Top 500 Contributor
    • Joined on Sun, Mar 15 2009
    • Posts 24
    • Points 435
    Re: set up parametric simulation to utilize multiple cores Reply

    Hi Çağrı,

     Thank you very much. Your solution works.

    It did speed up my simulation tremendously.

    Best Regards,

    whlinfei 

    • Post Points: 5
  • Wed, Sep 11 2013 9:52 PM

    • whlinfei
    • Top 500 Contributor
    • Joined on Sun, Mar 15 2009
    • Posts 24
    • Points 435
    Re: set up parametric simulation to utilize multiple cores Reply
    Hi Andrew, Thank you for the reply. The part with the XL really helps. Unfortunately, I don't have access to the distributed simulations. ( it is somehow disabled at my site). Best Regards, whlinfei
    • Post Points: 20
  • Thu, Sep 12 2013 2:56 PM

    • NcfC
    • Top 500 Contributor
    • Joined on Mon, Feb 27 2012
    • Chandler, AZ
    • Posts 28
    • Points 440
    Re: set up parametric simulation to utilize multiple cores Reply

    Andrew,

    I followed your instruction for ADE L but I get the following problem when I run

    the parametric simulation:

    I have a design variable that is dependent on the parametric simulation sweeping

    variable:

    var_word = 1 // sweeping variable

    var_bit_1 = ((var_word & 1)/1)

    var_bit_2 = ((var_word & 2)/2)

     

    If I run a serial parametric simulation, everything is fine. But if I run a

    parallel parametric simulation, I get the following error:

     

    *Error* in the Design Variables. AEL's message: data type error

    on first operand: operator not defined for

    "var_word"

     

    Is there something that I missed?

     

    Thanks.


    • Post Points: 20
  • Fri, Sep 13 2013 3:49 AM

    Re: set up parametric simulation to utilize multiple cores Reply

    We had an earlier reported issue which sounds similar, which is CCR 601256. However, in that case, whilst you got an error the simulations actually ran - and so the fix has not been prioritized. 

    Did the simulations actually run in your case?

    If not, you should report it to customer support. Might be wise to do this anyway, even if they do run successfully. Note I didn't check that the issue still exists in current versions (you didn't say which version of the IC tools you're using).

    Regards,

    Andrew.

    • Post Points: 20
  • Fri, Sep 13 2013 10:12 AM

    • NcfC
    • Top 500 Contributor
    • Joined on Mon, Feb 27 2012
    • Chandler, AZ
    • Posts 28
    • Points 440
    Re: set up parametric simulation to utilize multiple cores Reply
    Hi, Andrew.

    Thanks for the reply.

    No, the simulation didn't run at all. It runs without problems for serial parametric simulation but not for parallel simulations. Regarding the tool version, I tried with spectre 5.10 and also with spectre 7.11 (mmsim). ICFB version is 5.1.41.

    Regards,
    • Post Points: 20
  • Fri, Sep 13 2013 10:22 AM

    Re: set up parametric simulation to utilize multiple cores Reply

    The issue that I had reported before was something that only happened in IC61 and not in IC5141, so must be a slightly different issue.

    Unfortunately I don't have time to investigate it myself (IC5141 has not been supported for a couple of years now). Sorry!

    Andrew.

    • Post Points: 5
Page 1 of 1 (9 items)
Sort Posts:
Started by whlinfei at 30 Aug 2013 10:31 PM. Topic has 8 replies.