Faq Improve performance with PLS Toolbx and Solo

From Eigenvector Research Documentation Wiki
Revision as of 13:33, 8 July 2019 by imported>Scott (Scott moved page Faq improve performance with PLS Toolbx and Matlab on Mac to Faq Improve performance with PLS Toolbx and Solo: Need general solution to performance faq)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Issue:

How can I improve performance with PLS_Toolbox and or Solo?

Possible Solutions:

There are several areas where performance and be improved.

See the toolbox performance page for a general measure of expected performance.

NOTE: We follow best practices for code performance in Matlab such as vectorization, preallocation, and file I/O.

Hardware

  • Use a 64bit operating system.
  • Use as much RAM as possible.
  • Use SSD (solid state drive) hard drive.
  • Follow The Mathworks guidelines for hardware:

Software

  • Try a different version of Matlab. There were big changes to Matlab after 2014a that impacted graphics performance. If you have access to 2014a try using it. Otherwise try using the latest version of Matlab you can get you hands on.
  • Close unused programs.
  • Close unused PLS_Toolbox/Solo windows.
  • Perform preprocessing separately.
  • Use memory saving steps found here.

Graphics

Graphics will benefit from all

  • Be sure your drivers are up to date.
  • Try changing your renderer:
https://www.mathworks.com/matlabcentral/answers/157894-resolving-low-level-graphics-issues-in-matlab
  • Down-sample the data. These tools can be used:
  • coadd_img


Older Solution

The solution below is a version specific to older versions of PLS_Toolbox on the Mac platform (roughly 2008-2014):

Some combinations of PLS_Toolbox and Matlab can experience performance issues. These issues can be the result of a combination of factors involving both PLS_Toolbox and or Matlab. We recommend one or more of the following:

  1. Use the latest version of PLS_Toolbox. In some cases we've been able fix problems associated with Mac performance.
  2. Try changing the Java Heap Size from the Matlab → Preferences → Java Heap Memory menu item. Select the largest amount available (e.g., 256MB).
  3. For Matlab versions 2011a and newer, disable Screen Menus via the java.opts file. Save all of your work then from the Matlab Command window enter:
    >> edit(fullfile(matlabroot,'bin','maci64','java.opts'))
    then add the following line:
    -Dapple.laf.useScreenMenuBar=false
    save the file and restart Matlab.
  4. Try using a different version of Matlab. Depending on the version of hardware and PLS_Toolbox, some [older] versions of Matlab may work better than others. Newer versions (2011a-2012a) seem to require disabling of screen menus and increased Heap size (steps 2 and 3). In general we recommend the newest version of Matlab available.
  5. Hide the model cache. Sometimes the java tree component seems to slow things down. Hiding the cache when not in use may help. From the Analysis Tools menu select View Cache → Hide Cache Viewer.
  6. Set javaopts to use Quartz rendering (via the java opts as above).
    -Dapple.awt.graphics.UseQuartz=true
  7. Restart Matlab often (daily). This is probably the most effective way to keep performance from dropping.


The Mathworks has stated to us in response to service requests (FEB 2012):

"Currently, MATLAB graphics performance can be better under Windows than Mac. The Win API supports "immediate mode" drawing, and the "deferred mode" on OS X limits the raw performance vs. Windows. Also Intel has not made available for OS X a version of their compiler which supports PGO."


Still having problems? Please contact our helpdesk at helpdesk@eigenvector.com