Opera Parallel Processing Module

From its very first release, Opera has been designed with performance and efficiency in mind. It was built to maximise speed on the early computers, whilst working within their limited resources. These computers tended to deliver performance improvements courtesy of processor clock-speed improvements year-on-year. In recent times the computing landscape has changed, and so has Opera. Modern computing resources consist of multiple processors, each consisting of a number of cores. Significant speed-up in virtual prototyping throughput can be achieved by utilising this tremendous power at your fingertips.

About the module

Opera-3d’s solver modules are shared-memory multi-core parallelcapable. The relative performance is dependent upon many factors, and certain aspects of a solution are inherently linearly scalable. This includes, for example, coil-field calculations. Users can perform other aspects in a thread-safe manner when they are executed in a serial fashion.

Sample performance improvement:

Sample Model 1

Speed-up evaluation

The first model includes 19 BiotSavart conductors, and the solving time is over 2 hours and dominated by the coil field calculation (over 85%). The breakdown of the solve process into the main three stages is presented in Figure 4. The overall speed-up achieved using 4 threads, when compared with the singlethread case is 3.21 times.


Multi-core parallel

As multi-core parallel solution is a licensed feature, these licenses need to be available for the facility to be enabled. This will enable multi-core parallel solutions of solvers which are explicitly licensed. For example, to run a static electromagnetic solution in parallel across 4 real cores in a shared memory configuration, users require both a static electromagnetic license and a multi-core parallel license.

The number of threads enabled also depends upon the number of multicore licenses available. The licenses enable 22n threads to be used, where n is the number of licenses reserved.

For example, if you have 3 stress licenses and 3 multi-core parallel licenses, then at any one time you could run:

• 3 stress analyses, each using 4 threads

• 3 stress analyses, 1 using 16 threads, 1 using 4 threads and 1 using 1 thread.

• 3 stress analysis, 1 using 64 threads and 2 using 1 thread.

The Multi-core parallel licenses are available in the same configuration as your solver licenses; ie locked or floating on a network.

Control of the feature is via the Opera Manager – simply choose the number of threads to be used for the next solution.