Re[3]: Регресс производительности при переходе с FW 3.5 SP1
От: VladD2 Российская Империя www.nemerle.org
Дата: 17.05.20 13:44
Оценка:
Здравствуйте, 4058, Вы писали:

4>Невнимательно читаешь, во первых речь идет конкретно о String.IndexOf (в названии темы даже присутствует), и тот кусок кода просто изобилировал его использованием, и "тупой" перенос с 3.5 на 4.0 на том участке дал заметный регресс производительности, что в результате привело к негативным последствиям.


Я как раз внимательно все прочел. И в названии темы String.IndexOf не присутствует. Название вон сверху.

4>В данном случае код местами переписан, проблемы нет (плюс профит от распараллеливания средствами LINQ), но беспокоит сам факт, что пришлось это делать.


Это из серии обжегся на молоке, дую на воду. Ну. одна функция стала по медленнее. Никакого отношения к производительности самого дотнета это не имеет. Производительность зависит от кучи фаторов. И главное это работа компилятора (джит, нген) и сборщика мусора. Вот в 64-битной версии действительно есть некоторая деградация производительности. Ее отдали авторам плюсового компилятора делать (в те времена) и у них получилось не очень хорош. Но сейчас вроде как сделали новую версию и она вполне на уровне.

4>Проблема, именно в том, что пришлось внести изменения в код при подъеме версии FW, чего я например ни разу не делал с 1.0 по 3.5 SP1


Ну, а что ты хочешь? По сути между 3.51 и 4.0 произошла смена эпох. Фактически был только 3 рантайма: 1.0, 2.0, и 4.0 (ну сейчас еще Кор есть). Остальное промежуточные версии сам рантайм затрагивающие мало. При переходе с 1.х на 2.х проблема хватало. И при переходе с 2.х на 4.х тоже. Вы еще очень легко отделались, если это единственная проблема при переносе.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.