Toolbox Path Caching in the MATLAB Program

About Toolbox Path Caching in the MATLAB Program

For performance reasons, the MATLAB program caches toolbox folder information across sessions. The caching features are mostly transparent to you. However, if MATLAB does not see the latest versions of your M-files or if you receive warnings about the toolbox path cache, you might need to update the cache.

Using the Cache File Upon Startup

Upon startup, MATLAB gets information from a cache file to build the toolbox folder cache. Because of the cache file, startup is faster, especially if you run MATLAB from a network server or if you have many toolbox folders. When you end a session, MATLAB updates the cache file.

MATLAB does not use the cache file at startup if you clear the Enable toolbox path cache check box in File > Preferences > General. Instead, it creates the cache by reading from the operating system folders, which is slower than using the cache file.

Updating the Cache and Cache File

How the Toolbox Path Cache Works

MATLAB caches (essentially, stores in a known files list) the names and locations of files in matlabroot/toolbox folders. These folders are for files provided with MathWorks products that should not change except for product installations and updates. Caching those folders provides better performance during a session because MATLAB does not actively monitor those folders.

We strongly recommend that you save any M-files you create and any files provided by The MathWorks that you edit in a folder that is not in the matlabroot/toolbox folder tree. If you keep your files in matlabroot/toolbox folders, they may be overwritten when you install a new version of MATLAB.

When to Update the Cache

When you add files to matlabroot/toolbox folders, the cache and the cache file need to be updated. MATLAB updates the cache and cache file automatically when you install toolboxes or toolbox updates using the installer for MATLAB. MATLAB also updates the cache and cache file automatically when you use MATLAB tools, such as when you save files from the MATLAB Editor to matlabroot/toolbox folders.

When you add or remove files in matlabroot/toolbox folders by some other means, MATLAB might not recognize those changes. For example, when you

  • Save new files in matlabroot/toolbox folders using an external editor
  • Use operating system features and commands to add or remove files in matlabroot/toolbox folders

MATLAB displays this message:

Undefined function or variable

You need to update the cache so MATLAB will recognize the changes you made in matlabroot/toolbox folders.

Steps to Update the Cache

To update the cache and the cache file,

Select File > Preferences > General.

The General Preferences pane is displayed.

  • Click Update Toolbox Path Cache and click OK.

To update the cache, use rehash toolbox. To also update the cache file, use rehash toolboxcache. For more information, see rehash.

Additional Diagnostics with Toolbox Path Caching

To display information about startup time when you start MATLAB, select the Enable toolbox path cache diagnostics check box in General Preferences.

You may also like...