• 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. Multithreading not working

Stats

  • Locked Locked
  • Replies 10
  • Subscribers 126
  • Views 20013
  • 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

Multithreading not working

Rob Gregoire
Rob Gregoire over 10 years ago

I'm simulating a 15 stage SAR ADC and even though the output log indicates that 4 processors are used with multi-threading I am not getting a reduction in Elapsed Time compared to CPU time. I even tried it with a couple ADCs in parallel to make sure the ADC is big enough but I still get no improvement.

It seems to be related to the process design kit. I can simulate a similar ADC in another process and get speed improvement. I'm using IC 6. Any ideas on what to check or what would be helpful in debugging? My internet search only turned up a question from 2006 that indicated that it doesn't work with some CMOS models.

  • Cancel
Parents
  • Rob Gregoire
    Rob Gregoire over 10 years ago

    Thanks for your response. To answer you questions:

    MMSIM131. I am already. defining number of threads under simulations->Options->Analog (turning multithreading on, nthreads=4)

    Some more information (red emphasis mine):  Using IC6.1.5

    Right before the transient analysis is listed in the output log there is a notice stating:

    Notice from spectre during initial setup.
        Multithreading Enabled: 4 threads on system with 24 available processors.
            
        58 notices suppressed.


    Time for parsing: CPU = 173.973 ms, elapsed = 266.827 ms.
    Time accumulated: CPU = 2.12368 s, elapsed = 2.34084 s.
    Peak resident memory used = 96.9 Mbytes.

    Entering remote command mode using MPSC service (spectre, ipi, v0.0, spectre0_10789_18, ).

    ============================================================

    And at the end of the simulation:

        tran: time = 410.9 ns    (99.6 %), step = 3.464 ps     (840 u%)
        tran: time = 411.1 ns    (99.7 %), step = 1.216 ps     (295 u%)
        tran: time = 411.4 ns    (99.7 %), step = 979.1 fs     (237 u%)
    Number of accepted tran steps =             124642

    Notice from spectre during transient analysis `tran'.
        Trapezoidal ringing is detected during tran analysis.
            Please use method=trap for better results and performance.

    Initial condition solution time: CPU = 4.46432 s, elapsed = 4.46464 s.
    Intrinsic tran analysis time:    CPU = 11.3365 ks, elapsed = 11.3387 ks.
    Total time required for tran analysis `tran': CPU = 11.341 ks (3h 9m 1s), elapsed = 11.3433 ks (3h 9m 3s).
    Time accumulated: CPU = 11.3436 ks (3h 9m 4s), elapsed = 11.3462 ks (3h 9m 6s).
    Peak resident memory used = 372 Mbytes.

    Any help would be appreciated. This is the first time my team has run into this one. Again, if I run a similar design in another process I do get a reduction in elapsed time vs CPU time (and the elapsed time is correct).

    --rg

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Rob Gregoire
    Rob Gregoire over 10 years ago

    Thanks for your response. To answer you questions:

    MMSIM131. I am already. defining number of threads under simulations->Options->Analog (turning multithreading on, nthreads=4)

    Some more information (red emphasis mine):  Using IC6.1.5

    Right before the transient analysis is listed in the output log there is a notice stating:

    Notice from spectre during initial setup.
        Multithreading Enabled: 4 threads on system with 24 available processors.
            
        58 notices suppressed.


    Time for parsing: CPU = 173.973 ms, elapsed = 266.827 ms.
    Time accumulated: CPU = 2.12368 s, elapsed = 2.34084 s.
    Peak resident memory used = 96.9 Mbytes.

    Entering remote command mode using MPSC service (spectre, ipi, v0.0, spectre0_10789_18, ).

    ============================================================

    And at the end of the simulation:

        tran: time = 410.9 ns    (99.6 %), step = 3.464 ps     (840 u%)
        tran: time = 411.1 ns    (99.7 %), step = 1.216 ps     (295 u%)
        tran: time = 411.4 ns    (99.7 %), step = 979.1 fs     (237 u%)
    Number of accepted tran steps =             124642

    Notice from spectre during transient analysis `tran'.
        Trapezoidal ringing is detected during tran analysis.
            Please use method=trap for better results and performance.

    Initial condition solution time: CPU = 4.46432 s, elapsed = 4.46464 s.
    Intrinsic tran analysis time:    CPU = 11.3365 ks, elapsed = 11.3387 ks.
    Total time required for tran analysis `tran': CPU = 11.341 ks (3h 9m 1s), elapsed = 11.3433 ks (3h 9m 3s).
    Time accumulated: CPU = 11.3436 ks (3h 9m 4s), elapsed = 11.3462 ks (3h 9m 6s).
    Peak resident memory used = 372 Mbytes.

    Any help would be appreciated. This is the first time my team has run into this one. Again, if I run a similar design in another process I do get a reduction in elapsed time vs CPU time (and the elapsed time is correct).

    --rg

    • 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