MATLAB Function Reference |
Syntax
Description
pack
frees up needed space by reorganizing information so that it only uses the minimum memory required. All variables from your base and global workspaces are preserved. Any persistent variables that are defined at the time are set to their default value (the empty matrix, []
).
MATLAB temporarily stores your workspace data in a file called tp######.mat
(where ######
is a numeric value) that is located in your temporary directory. (You can use the command dir(tempdir)
to see the files in this directory).
pack filename
frees space in memory, temporarily storing workspace data in a file specified by filename
. This file resides in your current working directory and, unless specified otherwise, has a .mat
file extension.
pack('filename')
is the function form of pack
.
Remarks
You can only run pack
from the MATLAB command line.
If you specify a filename
argument, that file must reside in a directory for which you have write permission.
The pack
function does not affect the amount of memory allocated to the MATLAB process. You must quit MATLAB to free up this memory.
Since MATLAB uses a heap method of memory management, extended MATLAB sessions may cause memory to become fragmented. When memory is fragmented, there may be plenty of free space, but not enough contiguous memory to store a new large variable.
If you get the Out
of
memory
message from MATLAB, the pack
function may find you some free memory without forcing you to delete variables.
The pack
function frees space by
If you use pack
and there is still not enough free memory to proceed, you must clear some variables. If you run out of memory often, you can allocate larger matrices earlier in the MATLAB session and use these system-specific tips:
To maintain persistent variables when you run pack, use mlock
in the function.
Examples
Change the current directory to one that is writable, run pack
, and return to the previous directory.
See Also
otherwise | pagesetupdlg |
© 1994-2005 The MathWorks, Inc.