はここで、全体のDLLのサイズが100Mであると仮定は、2例は以下のとおりです。DLL数と負荷性能
- 100M * 1
- 10M * 10
そのとき、多くのパフォーマンスへの影響だろう多くの小さなサイズのDLLを使用していますか?どうして?
私は最近テストを行ったが、2つのケースのパフォーマンスの違いはほとんど検出されなかったため、テストで間違ったステップがあるかどうかは分かりません。
はここで、全体のDLLのサイズが100Mであると仮定は、2例は以下のとおりです。DLL数と負荷性能
そのとき、多くのパフォーマンスへの影響だろう多くの小さなサイズのDLLを使用していますか?どうして?
私は最近テストを行ったが、2つのケースのパフォーマンスの違いはほとんど検出されなかったため、テストで間違ったステップがあるかどうかは分かりません。
複数のDLLを取得する可能性が高いのは、OSローダーがDLLを見つけて解決して参照する必要があるため、ロード時にそれらのDLLをリベースするためです。しかし、パフォーマンスの影響は心配する価値はありません。特に、10M * 10のDLLを持っている場合は、
空きメモリが不足している場合にのみ違いがあると思います。どちらの場合も、OSはDLLを処理する必要があります。また、キャッシュされている必要があります。違いがある場合は、最初のロードでのみ問題になるはずです。
さて、コールドスタートアップ時間とウォームアップスタート時間の両方を比較します(キャッシュの有無にかかわらず) –
"時間の約97%という小さな効率を忘れるべきです。早すぎる最適化はすべての悪の根源です。 - DE Knuth。 – kmkaplan
実際には、私たちは気にしています:) 私たちのアプリケーションは起動に30秒かかるので、多くの小型DLLがボトルネックであるかどうかを知る必要があります。 –