Whenever we assume some kind of bounded N in Superluminal, we inevitably end up regretting it.

“How many DLLs could an application possibly load?”

Turns out the answer to that question is “at least 113440”, somewhat higher than our estimate of “probably no more than a few hundred”.
https://mastodon.gamedev.place/@sschoener/113441636130821884

Sebastian Schöner (@[email protected])

Once installed, I decided to open all the projects, to get codesearch. After a few minutes I decided to take a trace. The trace was behaving weirdly in Superluminal, and debugging (thank you, Jelle and Ritesh!) revealed that in the trace 113440 modules are loaded and unloaded. Whoops. That's a lot. Let's make a mental note of that number here. But somewhat anticlimatically this is not the main issue here.

Gamedev Mastodon
@rovarma @sschoener Presumably that’s load/unload cycles and not unique DLLs?
@zeux @sschoener yeah, indeed — a set of “only” a few hundred DLLs or so being loaded & unloaded over and over for each of the 477 projects in the solution
@rovarma @zeux Yep. I think what it is doing is loading all transitive dependencies to see whether there are multiple versions of the same assembly in the project. For Unity Engine assemblies, the vast majority of the dependencies are going to be identical between those assemblies.