If the main idea is to
highlight the advantages of open-source over commercial software in terms of parallel processing
one has to first answer the question of what one wants to achieve from the simulation. Commercial software packages offer more than just solution of PDE/ODE, meshing, etc. They offer support, documentation, convenient graphical interface (not to be underestimated!), material/sample libraries, tutorials on basic simulation needs. So, even if the open-source software is able to model the same physics, its usability depends a lot on the maturity of the field and market expectations.
Now, coming back to parallelization. An average user usually has enough troubles and complications with the simulation itself, and if one adds the requirements of setting up the parallel compiler, libraries with distributed memory support, and tuning parallelization settings – that might be too much. Moreover, if a commercial solver offers parallelization, they usually invested some time into optimizing their code and providing certain ready-out-of-the-box functionality. They also have a luxury of hiring software engineers who are focused on the parallelization, while open-source simulators are usually parallelized by computational scientists who might be good in parallel programming, but it is rarely their major field.
Regarding parallel capabilities of the commercial software. Nowadays, most of the solvers will come with the support of the shared-memory parallelization, basically being able to take advantage of the multicore architecture of modern CPUs. The distributed memory parallelization (say, MPI) requires more drastic changes to the code and software architecture; moreover, special decomposition methods become a must.
The following page from ANSYS website describes the capabilities of their solver to take advantage of multiple nodes and multiple cores for computational electromagnetics.
I would attribute the following advantages of open-source software vs. commercial:
- providing an ability to simulate basic-complexity models in physics, where support of parallel architectures is lagging by commercial software
- allow for experimentation with new different models/methods of simulation that are not supported by commercial software, but require parallel computing to be solved in a reasonable time
- provide a platform for developing new techniques and methods in parallelization itself
- serve as a reference
- cost. Usually, commercial software will ask a separate license for every core/node or a special HPC-licence. It will be expensive. Very expensive if you are actually going true exascale HPC.