| Versions | 3.1 and Later |
| Products | All |
| Platforms | Windows, Linux |
| Released | 4 November 2004 |
"I have tested your latest version of SIMetrix with every circuit I ever designed. The result is truly incredible, I had no trouble making every single circuit converge"
In some applications, the amount of data generated by a simulation can be so large that it fills up your hard disk. This article describes various methods of resolving this problem, by reducing the amount of data saved, by specifying alternative locations with more available space or by simply managing when the data files are deleted.
On Windows systems, the default location for simulation data is a system temporary directory which would typically be on your C: drive, usually under the "Documents and Settings" tree. On Linux systems, the data is stored in your home directory at $HOME/.simetrix/temp-data. On both platforms you can find out with the following sequence:
If you look in the specified folder you will notice files with the extension .sxdat are created when you run a simulation. These are the simulation data files. This directory will be cleared of all .sxdat files at certain times; exactly when is controlled by an option setting. See below for an explanation of this.
On versions 4 to 5 you will likely get an error message "Write failure to data file" at some point during the simulation and the simulation will abort. On version 3.1 the message will probably be "Could not write to file. Run has been aborted. It may not be possible to restart without loss of data"
It is not usually possible to recover from an out of disk space condition.
There are three things that can be done to resolve this problem. Which and how many of these approaches you choose depends on the application and severity of the problem.
You don't need to do this manually, you simply need to tell SIMetrix when to do it. By default, unused data files are not deleted until SIMetrix next starts. So if you keep a session of SIMetrix running for a long time (some users don't shut down for days on end) you could collect a large number of data files and eventually fill up the disk.
If this is the case, you can tell SIMetrix to delete the files when they are no longer needed. To do this, proceed as follows:
- Select menu File|Options|General...
- Select Graph/Probe/Data Analysis tab
- In the box titled Temporary data file delete options select When data is no longer needed
SIMetrix keeps the data for the three most recent runs always available. This allows you to retrieve the data from a recent run (using menu Graphs and Data|Change Data Group...) perhaps to compare with the latest run. So with the above option set, the data files needed for the three most recent runs will always be present. If all your runs produce large amounts of data and you have no need to recover earlier data, you might like to change this behaviour so that only current data is kept. To do this, type at the command line (the edit box below the menu bar in the command shell - not available in SIMetrix Intro):
Set GroupPersistence=1
Make sure you spell this correctly - there will be no error message if you get it wrong.
If you have another disk/partition on your computer which has more space available, then you can tell SIMetrix to put its data there. Important: you must always use a local disk/partition; do not specify a remote network share.
To do this, proceed as follows:
- Select menu File|Options|General...
- Select Graph/Probe/Data Analysis tab
- Double click the Temp Data entry
- Locate a suitable path then OK
The following applies to SIMetrix simulations. For SIMPLIS simulations, see next section
In some applications the only solution is to save less data in the first place. SIMetrix has comprehensive features for selecting data saved but there is no GUI to these features. To select data for output, you need to know about the .KEEP simulator control.
If you are using the SIMetrix native schematic editor to enter your design, you can put a .KEEP control in the F11 Window. If you haven't used the F11 window before, open a schematic then press F11. You will see an edit box at the bottom of the schematic. Here you can place any simulator command (known in SIMetrix docs as "controls") along with model definitions and the like.
If you are simulating a netlist directly (perhaps generated by another tool) then you would add .KEEP to your netlist.
Full documentation on .KEEP is available in the manual. For version 4 onwards this is in the Simulator Reference Manual (latest version). For version 3.1 see page 230 of the User's Manual.
Procedure
- Open F11 window in schematic by pressing F11
- Enter .KEEP control as demonstrated in the examples below. It doesn't matter exactly where the .KEEP control goes as long as its has its own line and as long as its after any ".SIMULATOR SIMETRIX" line and before ".SIMULATOR DEFAULT" line if either are present.
Examples
Save only node voltages - i.e no currents and no digital signals:
.KEEP /noi /nodigSave only top level signals in hierarchical design:
.KEEP /topSave only the signal called 'VOUT'
.KEEP /noi /nov /nodig VOUT[Requires version 4.5 or later]. Saves only signals whose name starts 'X1.'. This in effect means that only signals inside subcircuit 'X1' will be saved.
.KEEP /noi /nov /nodig X1.*For more examples and full documentation, see the manual as described above.
SIMPLIS has fewer features for selecting data than SIMetrix. You can choose one of three options from the GUI. These are 'Probes Only', 'Voltages Only' and 'All'. To choose proceed as follows:
- Select menu Simulator|Choose Analysis...
- In the Save options box select All, Voltages Only or Probes Only as required. Probes Only will tell SIMetrix/SIMPLIS to save only the minimum data needed to plot any fixed probes positioned on the schematic.