dotfuscator замедляет скорость выполнения? - PullRequest
2 голосов
/ 11 января 2009

Я только что узнал, что моя программа теряет 5% скорости выполнения, когда она проходит через версию сообщества dotfuscator.

это нормально? что может быть альтернативой (бесплатной) дотфускатору, который бы этого не делал?

Ответы [ 3 ]

2 голосов
/ 11 января 2009

Да, это побочный эффект запутывания. Могут быть и другие, такие как Salamander, которые дают лучшую производительность, но это побочный эффект запутывания.

1 голос
/ 15 января 2009

Поскольку вы используете бесплатную версию Dotfuscator, которая выполняет только переименование, ваша проблема с производительностью, скорее всего, не связана с какими-либо накладными расходами при запутывании строковых литералов (поскольку эта функциональность отсутствует в этой версии).

Если вы используете сериализацию и запускаете sgen на своих сборках до того, как их запутать, не включая сборки sgen, которые могут вызвать проблемы с производительностью.

Само по себе переименование обычно не зависит от производительности и повышает производительность из-за меньших двоичных размеров и уменьшенных размеров таблицы строк. Единственное, что я бы порекомендовал, это запустить профилировщик в запутанной программе и попытаться найти горячие точки, которые могут дать вам некоторые сведения в областях, которые могут содержать ключ к решению проблемы.

1 голос
/ 11 января 2009

Одной из вещей, которую делает обфускатор, является запутывание литералов в вашем коде, особенно литеральных строк. Эти литералы должны быть не скрыты во время выполнения. Обработка строк не особенно быстрая.

...