• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Custom IC Design
  3. ADEXL Monte Carlo Group Jobs

Stats

  • Locked Locked
  • Replies 5
  • Subscribers 126
  • Views 15330
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

ADEXL Monte Carlo Group Jobs

phill1127
phill1127 over 9 years ago

Is there a way in ADEXL to group a set of monte carlo sims into several jobs without allowing all jobs to run simultaneously?

For example, say I am running 400 mc iterations. If I set Max Jobs in the Job Setup to 4 then I get 4 jobs running simultaneously with each job being 100 sequential iterations. What I want to do is group them into 8 jobs of 50 iterations and only allow 4 jobs to run at one time. So at the beginning 4 jobs would run and 4 jobs would be pending, then as one job completes that empty slot picks up a pending job from the queue. Is this possible in ADEXL?

The reason I want to do this is to be more efficient with system memory. When multiple monte carlo iterations are grouped into a single spectre run the memory usage climbs and climbs. By separating the total iterations into smaller groups each job will both use less total memory and also release the memory when it completes which frees it up for the pending jobs.

Thanks,
- Phill

  • Cancel
Parents
  • Andrew Beckett
    Andrew Beckett over 9 years ago

    Hi Phill,

    If you have an issue with growing memory, you should report this to customer support. I have a CCR (1430937) for something similar, but it only becomes significant when running a huge number of simulations (25000 in  my case). So yours may be something else.

    However, it is possible to do what you want using this setting:

    envSetVal("adexl.monte" "maxOutstandingPoints" 'int 200)

    and then set the number of jobs to be 4. What this will do is then first run four jobs with 50 each, and then it will deal with the remaining 200 simulations after that. 

    I would not advise setting this in your .cdsinit as it is likely to interfere with any auto-stop methods if you were to use those - so use it as and when you need it (just type it in the CIW). The default value is 0, which means fully-automatic.

    The reason this is not on a  form (or even documented) is because of these cases where it interferes with the automated methods - so definitely exercise "buyer beware" when using this.

    Kind Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett over 9 years ago

    Hi Phill,

    If you have an issue with growing memory, you should report this to customer support. I have a CCR (1430937) for something similar, but it only becomes significant when running a huge number of simulations (25000 in  my case). So yours may be something else.

    However, it is possible to do what you want using this setting:

    envSetVal("adexl.monte" "maxOutstandingPoints" 'int 200)

    and then set the number of jobs to be 4. What this will do is then first run four jobs with 50 each, and then it will deal with the remaining 200 simulations after that. 

    I would not advise setting this in your .cdsinit as it is likely to interfere with any auto-stop methods if you were to use those - so use it as and when you need it (just type it in the CIW). The default value is 0, which means fully-automatic.

    The reason this is not on a  form (or even documented) is because of these cases where it interferes with the automated methods - so definitely exercise "buyer beware" when using this.

    Kind Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information