Multiple processor cores and FEA: Good or bad?

There’s a lot of information scattered around the net regarding the usefulness of multiple core processors for Finite Element Analysis (FEA) in SOLIDWORKS Simulation.

So what exactly is the optimum number of cores for FEA?

Good question! There are some areas that do and do not benefit from utilizing multiple processor cores. Take a look at this table:

SolidWorks-Multi-Cores-FEA-Table

As you can see, not all areas of the software benefit from having multiple cores/processors. The areas that don’t benefit are linear processes only. There are some areas that do benefit, but there is a limit.

SolidWorks Simulation FEA Multi-core 1
Image 1 – Mutliple Cores/CPU’s vs. Solution time (numbers for illustration purposes only).

 

The graph above illustrates the convergence between the number of cores and the solution time of the study. This explains that, after a certain point, the number of cores has little or no significant impact on the solution time. This is due to the communication time between the individual cores; the more you have, the longer the time taken to communicate and therefore the longer the solution time. Please note that SOLIDWORKS Simulation doesn’t benefit from hyper-threading either.

In summary: For optimum hardware usage, limit the amount of processor cores to a maximum of 8.

Tip: A good rule of thumb when choosing hardware is to choose faster clock speed over quantity of cores!

Another technique you can use to utilize multi-core processors in SOLIDWORKS is to manually assign cores to the SOLIDWORKS process, as seen in the Image below. This can be done through the task manager, located on the ‘Details’ tab as seen in Image 2. Next, right-click on the SLDWRKS.exe and select ‘Set affinity’. This then presents you with a window where the number of cores required can be assigned to that process. After this has been done, ALL of the rest of the processes listed here need to be set accordingly to not use the cores that have been assigned to SOLIDWORKS. This then allows those cores to be solely used by SOLIDWORKS. By default each process will be assigned to all the available cores.

SolidWorks Simulation FEA Multi-Core 2
Image 2 – RMB>Set Affinity

 

SolidWorks Simulation FEA Multi-Core 3
Image 3 – Processor affinity window

We hope you found that useful.


Why not take a look at our blog archive where we have posted plenty of helpful tutorials and technical articles like this one. We also have a huge video library filled with easy-to-follow tutorial videos inspired by real customer enquiries. Don’t forget to follow Innova Systems on twitter for daily bite size SOLIDWORKS tips, tricks and videos!

Innova Systems Experts in SOLIDWORKS Training & Support
We specialise in the supply, consultancy and training of SOLIDWORKS software. Based in Cambridge we have a central location to service a UK wide customer base. We offer the skills and experience to help you develop new products using SOLIDWORKS - empowering smarter, faster and more cost effective design.We've been recognised by SOLIDWORKS Corporation for providing the highest rated customer support in Northern Europe in 2014, 2015 and 2016.Email: info@innova-systems.co.uk / Telephone: 01223 200690.
Innova Systems Experts in SOLIDWORKS Training & Support
Innova Systems Experts in SOLIDWORKS Training & Support

Latest posts by Innova Systems Experts in SOLIDWORKS Training & Support (see all)

  • FlowJoe

    Have you considered whether the size of the problem (the # of DOFs that are solved) might influence how well the hardware gets utilized so that the leveling off is (or limit to effectiveness) is held out to a greater number of cores? Or was the data generated off of a single, or similarly sized, model(s)?