#DevJungles #dotnet #ityoutubers
Telegram канал Dev Jungles -
Поддержать канал можно:
- Спонсорством на YouTube
- Переводом на карту или пополнением банки монобанка:
Dev Jungles YouTube Channel Fund
Номер карты банки:
5375 4112 0230 1466
- Или криптой:
BTC - 18C3jsFYwviN5FvzpAt4uMWRfUeVKvdWxy
ETH - 0x2903f63ba9009732272e91a299053b9d7b623216
USDT on ERC20 - 0x2903f63ba9009732272e91a299053b9d7b623216
USDT on TRC20 - TSmS5RzQKbWdxZkoM2oRo9HK8FYBaq744T
LTC - LN3CkrnvZLZTXDUhqTy1gUKMVpLjEPA4G2
DOGE - DPwon439jf3axVSBwyuXso6z7CivuJF655
AAVE - 0x2903f63ba9009732272e91a299053b9d7b623216
Waves - 3P8D57Zw7CrqW2o7dHpvZR2UzAzQRFA2kZd
Описание:
Доброго времени суток тебе, странник! Добро пожаловать в Dev Jungles Stories!
Сегодня речь пойдет про способы профилирования приложения на .NET. Как можно ускорить программу с использованием профилировщика, и это реальный пример, а не рассказ с дурацким обзором интерфейса.
Я разбираю задание, которое однажды дали моему другану на позицию Sennior'а, и показываю как это задание можно сделать еще лучше с использованием профилировщика.
Как можно разогнать программу, которая делает то что делает с помощью профилировки.
В качестве профилировщика я выбрал DotTrace, он мне нравиться. Будет разбор сразу нескольких режимов его работы, а у него их много: Line by Line и Time Line профилирование.
Что ж приступим, усаживайся по удобнее, и мы начинаем!
Полная версия стрима тут:
GitHub Repo with Code:
Тайм-коды:
00:00 - Тизер
00:32 - Контекст
02:55 - Прогресс бар
03:30 - DotTrace
04:43 - Билдим в релизе. Точка отсчета
05:42 - Классический вариант профилировки
07:08 - Collect profiling data from start
10:03 - Сбор бенчмарка всю ночь?
12:40 - Миллион раз за 6с, много!
14:55 - Тюним
15:40 - Line by Line
17:52 - 13 257 288 раз
27:32 - Результаты
31:46 - Что вышло?
32:23 - Асинхронные методы
40:00 - Можем ли сравнить результат?
44:45 - Все изменилось. Потоки.
{"parent": "B9v7pdfhUYw"}