MULTITHREADING

Multithreading support in the mathematical kernel implies:

  • Use of parallel calculations in the kernel.

  • Support of multithreading in user applications.

The mathematical kernel implements mechanisms that enable thread-safe use of the kernel interfaces in parallel calculations.

To establish internal multithreading the kernel uses the OpenMP technology.

The main parallel operations in the kernel include (but are not limited to):

  • Construction of planar projections

  • Calculation of polygonal meshes

  • Calculation of mass-inertia properties

  • Converter operations

If an interface implementation employs parallel calculations, then the corresponding information is included in the comments to the interface.

To ensure thread-safe use of kernel interfaces in multithreaded applications, synchronization objects based on system mechanisms are used.