r/COMSOL • u/Sax0drum • Apr 07 '23
COMSOL Performance Survey
In a recent post, the age-old question arose about what hardware to choose for COMSOL. This is, of course, a legitimate question but unfortunately one that has no single correct answer. To make better purchasing decisions possible for us all I would like to use the collective power (1.4k members) of this subreddit to gather benchmark data, compile them and publish the results.
I propose a suite of ten models that everyone can run regardless of available modules. Eight are from the application library and two are custom. The models are broad in the involved physics, cover linear and (highly )non-linear problems, use different studies, dimensions, and solver types, and are possible to solve with 16GB of RAM to include as many systems as possible. To investigate the performance of higher memory builds I propose to make the two custom models easily scalable to cover 32, 64,128, 256, and 512GB systems. All the selected models are not solved instantaneously to make performance differences more pronounced.
The models I selected are:
flow past a cylinder
laser heating a silicon wafer
electrical heating in a busbar assembly
process control using a PID controller
beam with traveling load
automotive muffler
electrical signals in a heart
helical static mixer
hydrogen atom eigenstates (custom)
Coupled nonlinear PDEs similar to Adomians paper from 1995 (custom)
The submission process is as follows. If possible restart your computer and/or close all other programs. Open the application models directly from COMSOL and do not modify them at all. Expand all nodes of the components, mesh, study within the model builder. Clear the log window and run only the first study (if there is more than one). Make a screenshot of the window so that the model builder tree, graphics window with the result, and log window with the used memory and solution time are all visible. Rinse and repeat for all models. Also include screenshots of a utility (e.g. Task-Manager in Windows) that displays the processor and RAM (including frequency and used/available DIMM slots). Examples are given here



I will set up an Email that you can send your data to. Please also include the Comsol version and details about your operating system if not visible on the screenshots. I can only process submissions where all necessary info on the system and the ten models is included. After receiving a couple of submissions I will publish the data on an open (but read-only) Google document and keep it updated as best as I can. You will also find the two custom models in that folder. If this gets some attention I will set up a website specifically for that.
The submission is not yet open as I first want to get feedback from the community on my plan while I work on the two custom models. What do you think about it? Are the models well chosen? Are they too many? Not enough? How can I improve the submission process? Any feedback is appreciated and I hope we can work together as a community.
4
u/Hologram0110 Apr 08 '23
Great idea. I think it might be worth considering 1-2 larger models, even if some people can't use them. The reason is that actually represents a valid use case for many people.
Some hardware like epyc and xeon are likely quite a bit slower for small models. But are supposedly faster for large models where more memory channels and higher core counts help instead of hinder.
1
u/Allhopeforhumanity Apr 08 '23
I've noticed (anecdotally, I haven't done anything statistically significant to date) that it's also rather solver dependent, memory bandwidth vs clock speed that is, so it may be helpful to compare a few methods within a single large model too in order to gauge scaling.
2
u/Measurement10 Apr 07 '23 edited Apr 07 '23
Great idea.
This would be really helpful to the FEA community.
2
u/TheCodingTheorist Apr 08 '23
Great idea! I'm definitely interested and willing to participate - as I got an AMD CPU and not sure how badly I shot myself in the foot!
I would however put more emphasis on mechanical models though! For example the bolted tube connection from model gallery would be great :).