• 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 SKILL
  3. long time ocean simulation w/o saving any waveform data...

Stats

  • Locked Locked
  • Replies 8
  • Subscribers 143
  • Views 2947
  • 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

long time ocean simulation w/o saving any waveform database

DavidLou
DavidLou over 7 years ago

hello exports,

starting to have longer and longer time simulation but the waveform database apparently eating up the disk space quickly for day-long simulation. how can I config the ocean script based simulation not to save any (or just by specific picked nodes. it still saves database even I'm not using save or saveOption) ? I know -nograph would not bring up any display but I think that's not avoiding to dump huge waveform dump. 

in IC617

thanks,

David

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 7 years ago

    David,

    Before I answer that, I need to ask some questions:

    1. Is this an OCEAN XL script - i.e. is it running multiple simulations with measurements that are being taken after each simulation (as you'd do in ADE XL/Explorer/Assembler)?
    2. If you don't want to save any results, how do you know the simulation was successful?

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • DavidLou
    DavidLou over 7 years ago in reply to Andrew Beckett

    hi Andrew,

    this is a valid question. just single step sim yet. our testbench is constructed so that we know the expected output from given input set and self-checked. the lengthy regression is to check if there's any failing point after long random input. if we do see some failing point, we'll print when/what code so that we can just reproduce for that specific case instead the full blown one. 

    so you can see for the lengthy case, I don't have to keep any dump (or later I'll selectively dump a few for FFT or any other post-processing). 

    I see I can use save() and saveOption() to save a few things. but if I'm not using these command, it seems to dump good size intermediate files (if not necessary waveform) which I'm trying to avoid as I don't want to come back next day and see it crashed because of disk space full after just a couple hours run. 

    thanks,

    David

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 7 years ago in reply to DavidLou

    Hi David,

    If you don't use save() or saveOption(), the default in spectre is save=selected. What that means is that if no signals are "selected" to be saved (i.e. with a spectre save statement, corresponding to the save() function in OCEAN), then all voltages (or at least all "public" or normally useful voltages; i.e. not those which are internal nodes within devices) are saved.

    As soon as you save() some signals, only those signals are saved. This is done because if you don't ask to save something specific, the default assumption is that you want to look at something, and better to save all node voltages.

    There is a save option in spectre save=nooutput which doesn't output any result database at all, but this isn't available from OCEAN (without an include file containing the option statement in spectre syntax). The closest is saveOption('save "none") which saves a single (random) signal ("none" is a bit of a misnomer, but it's related to how the output code is structured in spectre, where the act of opening the database requires something to be saved).

    Hopefully that gives you some choices. Of course, you could use system("rm...") to remove the psf dir once your simulations have finished and you've read any results you need. OCEAN XL (like ADE XL, via the Options->Save form) has an option not to keep the simulation results, which is useful if you're doing lots of simulation.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • DavidLou
    DavidLou over 7 years ago in reply to Andrew Beckett

    thanks Andrew,

    I got it. that gives me enough hooks to play with whenever I need them saved or not. still a little bit more clarification as you mentioned it'll default to save=selected and later you mentioned it'll even default to save all. from my observation, if I just saved a coupled by save( 'v "/in1" "/in2"), I can still plot quite a lot more signals into waveform by plot command in the same Ocean script. does the simulator pre-screen the ocean script ahead so that it knows what signals are already selected to plot so better to save them ahead, even they are not explicitly requested to be saved? 

    Andrew Beckett said:

    If you don't use save() or saveOption(), the default in spectre is save=selected. What that means is that if no signals are "selected" to be saved (i.e. with a spectre save statement, corresponding to the save() function in OCEAN), then all voltages (or at least all "public" or normally useful voltages; i.e. not those which are internal nodes within devices) are saved.

    thanks,

    David

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 7 years ago in reply to DavidLou

    Hi David,

    My mistake. Whilst the default in spectre is indeed save=selected, in ADE the default is save=allpub (you'll see this if you launch ADE and look at the Save All options form). So if you don't have a call to saveOptions() in your script, then it will save all voltage signals regardless of the presence of save().

    So you should also add:

    saveOption('save "selected")

    to your script. Then it would only save in1 and in2.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • DavidLou
    DavidLou over 7 years ago in reply to Andrew Beckett

    hi Andrew, yes I observed that as well. It still dumps bunch if I don't do the save "selected" option. now it grows much slower as I'm just dumping for two signals. 

    from different side, I observed that AMS simulation defaults to save none so only explicitly saved signals could be plotted. I had to do save all for debugging purpose. something not quite consistent to each other. 

    thanks,

    David

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 7 years ago in reply to DavidLou

    Hi David,

    The difference in defaults between AMS and spectre is mostly historical. Because AMS is based around the INCISIVE digital simulator (with the analog solver engine added), it's commonplace to have a huge number of digital signals and so saving all of those would be expensive; the analog solver with AMS follows that model.

    Historically circuit simulators (such as spectre) were used with small circuits and so saving all signals was usually not that expensive. Nowadays the circuits simulated using APS can be very big (millions of nodes) - but we have the original default behaviour in spectre (and ADE) because most simulations are still of smaller circuits.

    So the main reason is "that's the way it is!"

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • DavidLou
    DavidLou over 7 years ago in reply to Andrew Beckett

    haha, yes, understand. thanks a lot Andrew as always.

    David

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel

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