Performance testing for PDM servers

Unfortunately I cannot share what I make at work and I do not have access at those scripts at home.

The first thing I would like to ask you is: what do you want to know or learn with the benchmark?

I did it mainly to see some number behind “SSD is fast” “RAID X is slow“, but at the end of the day if you have enough cache memory the difference could be minimal in a theoretical benchmark run, It may or may not give you some hint compared to a real scenario with 40 users accessing the PDM vault at the same time to read and write 1GB assembly with where used versions shared with other assemblies.

I wrote a post with lesson learnt here. Not so much, but keep your hopes low.
I made some drastic change on our server, but the issues were mainly:

  • server misconfiguration (wrong maintenance plan due to a completely wrong KB article for our language) → fixed with the statistics and indexes rebuilt at least every month
  • domain related (authentication lag up to 1 minute) → moved all users from windows login to PDM login now it is less than 10 seconds including get latest on some folder
  • network misconfiguration in some rack the server was wired to → asked IT to fix it
  • PDM&SW clients options were anarchy → consolidation of options and their deployment

That aside PDM performance is highly environment dependent, how many variables and files reside inside the server and their parent children relations.
We have like 2M file versions inside the vault, too many variables and properties inside and outside our 3d files and too many flawed workflows. (let me call them workflaws)

That said the main DB is like under 15GB in a dedicated SQL server with 96GB available and 2 CPU. (xeon silver 2GHz-ish)

IMHO our memory is enough , but CPU should be a little faster per core, since licensing cost is based per core, increasing the core count is probably going to hurt a lot on the money side.
Unfortunately we have a two servers (DB, ARCHIVE) setup for legacy reasons, but the more I see how the servers operate the more I want to move the archive, as secondary RAID, on the DB to limit the lag between the solidworks PDM services talking to each other for every vault related operation. That said a faster machine helps a lot for other operations like backups, file integrity checks.