Skip to content

Latest commit

 

History

History
12 lines (7 loc) · 2.86 KB

MATLAB-details.md

File metadata and controls

12 lines (7 loc) · 2.86 KB

We would like to address the confusion around the MATLAB requirements for using SLIM's software release for SINBAD consortium members, specifically the requirements for parallel applications. There is unfortunately quite a bit of inconsistency in terminology used by MathWorks, that likely adds to the confusion. Please, find a short explanation below.

Our software requires main MATLAB application and Parallel Computing Toolbox for parallel applications. Respectively, the required licenses include the MATLAB license (the main application called client) and any of the licenses that allow using Parallel Computing Toolbox (to run applications faster in parallel using so called parallel pool with multiple instances of processes called workers). The later license comes in two flavours:

  1. A multi-core workstation license called Parallel Computing Toolbox (PCT) aka Distributed Computing Toolbox (feature id. Distrib_Computing_Toolbox) - this license allows one to utilize multiple CPU cores on single workstation using 'local' parallel pool (maximum 12 cores in MATLAB versions until R2013b or all available cores in newer versions of MATLAB).
  2. A cluster distributed-computing license called MATLAB Distributed Computing Server (MDCS) aka MATLAB Distributed Computing Engine (feature id. MATLAB_Distrib_Comp_Engine) - this license allows one to span MATLAB's distributed parallel pool across multiple systems, e.g. multiple nodes on a cluster, and requires a supported job scheduler to start workers on remote nodes. Note, that MDCS license requires also PCT (Distributed Computing Toolbox) license to use interactive distributed parallel pool or to submit distributed parallel batch jobs using MDCS license.

Those two licenses also differ in pricing. PCT license comes with a flat fee for a single workstation independent of the used number of workers. On the other hand, MDCS license is priced per single worker. E.g., using parallel pool with 16 workers on a typical workstation requires only one PCT license for that workstation, but it requires one PCT license and 16 MDCS licenses if distributed parallel pool is used on a HPC cluster's nodes. Note, that for non-interactive batch jobs with MDCS, PCT license is used only to submit the job and it is not used while such job is running.

In essence, either of the above licenses for Parallel Computing Toolbox will satisfy the requirement for running our parallel applications. However, PCT license will suffice on the workstation with memory large enough to run our application and it will still utilize fully parallel capabilities of our software and run substantially faster on a typical multi-core systems.

For further information, please, go to the relevant pages on MathWorks' web site: Parallel Computing Toolbox and MATLAB Distributed Computing Server.