Parallel computing with Scilab

Who did say that Scilab cannot perform parallel computations? The commercial simulation software often offer the possibility to launch simulations on multicore machines or clusters of computers to reduce the computational time and making possible the solution of large models. “High performance computing” (HPC) is a the definition that experts often use to define this field in computer science.

With this paper, originally published in the EnginSoft newsletter, we show that we manage to run finite element simulations in Scilab on a multicore machine.The most important condition to be satisfied is that the implemented algorithm has to exhibit a parallel nature: it has to be actually possible to reformulate the original “big” problem into a series of independent tasks which have to be executed concurrently, reducing in this way the computational time.

In this case we solve the stationary heat transfer equation for three dimensional domains using the finite element method: all the most time consuming tasks to be performed to get the solution, starting from the coefficient matrix fill-in up to the postprocessing phase, have been partitioned and run in parallel.

We tested our solver with a couple of industrial benchmarks and measured the scalability. The obtained results are encouraging, above all if considering the extreme simplicity of our approach. We showed that there are large margins of improvements, both if considering the “speedup” and the pure performance.

Do not hesitate to contact us to have more details.

Parallel_computing_Scilab.pdf1.37 MB