views:

180

answers:

2

Suppose the overall dll size is 100M, here are the 2 cases:

  1. 100M * 1
  2. 10M * 10

Will their be much performance impact when using many small sized DLLs? why?

We did a testing recently but didn't detect much performance difference between the 2 cases, I am not sure if there are some wrong steps with my testing or this is the fact.

A: 

I guess you'd only see a difference if you haven't got enough free memory. In both cases, the OS should take care of the DLLs, they should also be cached so if there is a difference, it should only matter for the first load.

schnaader
Yea, we compare the both, cold startup time and warmup startup time.(with and without the cache)
lz_prgmr
+1  A: 

The only hit you're likely to get with multiple DLLs is a slight startup hit as the OS loader will have to locate the DLLs and resolve and references these DLLs have and rebase them as they're loaded. However, the performance impact is not worth worry about, especially if you've got 10M*10 DLLs

Sean