We're running Solidworks PDM 2018 SP4 and seeing some underwhelming performance characteristics in some C# .NET standalone API calls.
PDM API calls are really slow, calls from different processes or even separate machines seem to block one another at the database/server level. What's going on and is it a limitation of the product or something at the configuration or software development level?
We have code calling PDM API methods for things like logging into the vault, getting documents, and changing states, and in testing this code at scale we're seeing what looks like blocking at the server level that doesn't allow distinct pieces of work to start and end in parallel. We're not doing anything fancy in this code, so we're wondering if there's something at the server configuration or the way we've implemented the code that is causing this "single threaded" like behavior.
I can provide the methods we're calling (ex: IEdmFile10 ChangeState2()) if that helps, but like I said, we're not doing anything too interesting yet and we're already surprised by the lack of throughput when calling these methods in parallel.