Technical Solutions
How do I increase the largest contiguous free memory block available in MATLAB on a 32-bit machine running Microsoft Windows XP SP2?
Date Last Modified: 16 May 2008
| Solution ID: |
|
1-1HE4G5 |
| Product: |
|
MATLAB |
| Reported in Release: |
|
R14 |
| Platform: |
|
Windows |
| Operating System: |
|
Windows XP SP2 |
Subject:
How do I increase the largest contiguous free memory block available in MATLAB on a 32-bit machine running Microsoft Windows XP SP2?
Problem Description:
When I execute the following command:
system_dependent('memstats')
I see that the largest contiguous block of free memory is around 1 GB. I wish to increase the size of the largest block available in MATLAB on my 32-Bit machine running Windows XP SP2.
Solution:
There is a utility that can be used to increase the largest contiguous free memory block up to 1.5 GB in MATLAB 7.0 (R14) and later versions except MATLAB 7.4 (R2007a).
Note that this utility must be used only when running MATLAB on Windows XP SP2. This solution is known to provide significant memory increase if the current largest contiguous free block is <= 1 GB.
Perform the following steps to run this utility:
1. Close all applications and start a new session of MATLAB. 2. Type the following command at the MATLAB command prompt to confirm the size of the largest contiguous block:
system_dependent('memstats')
If the largest contiguous is much less than 1.5 GB (for example, around 1GB or less) continue to step 3.
Note that this operation can only be performed on Windows XP SP2.
3. Quit MATLAB
4. Unzip the attached "movedlls.zip" file and copy the "movedlls.exe" file into $MATLABROOT\bin\win32 directory. (where $MATLABROOT is the MATLAB root directory on your machine, as returned by typing
matlabroot
at the MATLAB command prompt.)
5. Run movedlls.exe by double-clicking it. This operation modifies and copies NETAPI32.DLL and COMCTL32.DLL system DLLs into $MATLAB\bin\win32 directory. If this solution causes problems you can undo the effect by deleting these new files from the directory.
6. Restart MATLAB
7. Type the following command at the MATLAB command prompt to confirm the size of the largest contiguous free block of memory is larger:
system_dependent('memstats')
Known repercussions of this solution: -- The file browsing dialog box will not open when the "..." button next to the current directory on the toolbar of the MATLAB Desktop is clicked. -- The UIGETDIR command will not work. It fails to show up the directory browser dialog box and returns a value of 0 whenever executed. -- The ‘Add Folder’ and ‘Add with Subfolders’ buttons on the Set Path dialog box will not work.
If this solution causes problems you can undo the effect by deleting these new files from the directory.
|
Related Documents/Files: