1. Interface with other languages
    To interface with an external Fortran, C, or C++ code for better efficiency (compiled languages often enjoy a better computing efficiency than interpreted languages such as MATLAB) or simply to avoid having to convert and debug an existing C code into an m-file. (More details …)
  2. For broader distribution
    This could extend the reach of your MATLAB code to similar computers that would otherwise not able to run your application due to a lack of installed MATLAB software or plentiful MATLAB licenses to support running multiple instances of the application.
  3. Access reliability
    For mission-critical applications, a standalone’s non-reliance on MATLAB license, or ultimately the MATLAB license server, is an important consideration. Examples of this category include MATLAB code usage in an MRI lab and real-time psychological evaluation or testing. In these examples, failing to run MATLAB would result in MRI equipment sitting idle or unproductive trip for the patient.
  4. Embarrassingly parallel applications
    For many applications, such as image processing and Monte Carlo simulations, repeated runs (hundreds or thousands of times) are common. Because these jobs are mutually independent, many such jobs can be executed — e.g., on the SCC cluster — in batch concurrently. This, however, can lead to high demand for MATLAB licenses. A standalone is ideally suited for such computations to avoid running into licensing issues.
  5. General parallel MATLAB applications (Parallel Computing Toolbox)
    Similar to embarrassingly parallel applications, this type of parallel applications will not need any MATLAB licenses as a standalone.
  6. Hide source code for intellectual property protection