Main Content

Run Bug Finder or Code Prover analysis on a remote cluster (-batch)

Enable batch remote analysis

Description

Specify that the analysis must be offloaded to a remote server.

To offload a Polyspace® analysis, you need these products:

  • A Polyspace product on the client side to submit an analysis job. Typically, you use a desktop product such as Polyspace Bug Finder™ to submit jobs, but you can also use a server product such as Polyspace Bug Finder Server™ to offload an analysis from one server to another.

  • A Polyspace server product (Polyspace Bug Finder Server or Polyspace Code Prover™ Server) on the server side to run the analysis.

  • MATLAB® Parallel Server™ to hold jobs from multiple clients in queue and allocate the jobs as Polyspace Server instances become available.

For details, see Install Products for Submitting Polyspace Analysis from Desktops to Remote Server.

Set Option

User interface (desktop products only): In your project configuration, the option is on the Run Settings node. You have separate options for a Bug Finder and a Code Prover analysis.

User interface (Polyspace Platform, desktop products only): You cannot offload analysis to a remote cluster from the user interface.

Command line and options file: Use the option -batch. See Command-Line Information.

Why Use This Option

Use this option if you want the analysis to run on a remote cluster instead of your local desktop.

For instance, you can run remote analysis when:

  • You want to shut down your local machine but not interrupt the analysis.

  • You want to free execution time on your local machine.

  • You want to transfer the analysis to a more powerful computer.

Settings

On

Run batch analysis on a remote computer. In this remote analysis mode, the analysis is queued on a cluster after the compilation phase. Therefore, on your local computer, after the analysis is queued:

  • If you are running the analysis from the Polyspace user interface, you can close the user interface.

  • If you are running the analysis from the command line, you can close the command-line window.

You can manage the queue from the Polyspace Job Monitor. To use the Polyspace Job Monitor:

Note

If you use a third-party scheduler instead of the MATLAB Job Scheduler, disable the credentials check by adding the option -no-credentials-check. The credentials check performed in the product is compatible only with the MATLAB Job Scheduler and the check outputs an error if you use a different scheduler. In the Polyspace user interface, add this option to the Other field.

Off (default)

Do not run batch analysis on a remote computer.

Dependencies

  • If you use a Polyspace Server product to offload an analysis from one server to another, the offloading uses the MATLAB Job Scheduler that comes by default with MATLAB Parallel Server. You cannot use a third-party scheduler.

Tips

  • If you run a Code Prover analysis and set the Verification Level to Source Compliance Checking, the analysis takes place on your local machine even when you enable remote analysis. Therefore, if you run an analysis only up to this verification level, use your local machine.

  • In the user interface of the Polyspace desktop products, the results are automatically downloaded after analysis.

    If you run an analysis at the command line, add the options -wait -download to automatically download the results after analysis. Otherwise, you can explicitly download the results later with the polyspace-jobs-manager command. See Send Polyspace Analysis from Desktop to Remote Servers Using Scripts.

  • If you use a Polyspace Server product to offload an analysis from one server to another, the results are automatically downloaded after analysis.

Command-Line Information

To run a remote analysis from the command line, use with the -scheduler option.

Parameter: -batch
Value: -scheduler host_name if you have not set the Job scheduler host name in the Polyspace user interface
Default: Off
Example (Bug Finder): polyspace-bug-finder -batch -scheduler NodeHost or polyspace-bug-finder -batch -scheduler MJSName@NodeHost
Example (Code Prover): polyspace-code-prover -batch -scheduler NodeHost or polyspace-code-prover -batch -scheduler MJSName@NodeHost
Example (Bug Finder Server): polyspace-bug-finder-server -batch -scheduler NodeHost
Example (Code Prover Server): polyspace-code-prover-server -batch -scheduler NodeHost