Description
Гость выпуска — инженер Дмитрий Рябцев, который начинал свою карьеру в команде Intel и больше 20 лет разрабатывал Intel VTune, инструмент анализа производительности программ для компьютеров на базе x86-процессоров. Дмитрий расскажет, как профилировщики устроены изнутри, а также даст подсказку, с чего стоит начинать профилирование различных систем.
Почему профилировщиков сравнительно немного? Какими они бывают? Как устроена аппаратная поддержка профилирования? Что скрывается за аббревиатурой TMA? В чем заключается фундаментальная проблема инструментов для анализа производительности программ? Почему Intel VTune долгое время был платным? Ответы на эти и многие другие вопросы — в девятом эпизоде «Битовых масок».
Смотреть видеоверсию выпуска: https://youtu.be/zIdySCwntXc
Кстати, у подкаста появился канал в Telegram. В нем мы будем публиковать анонсы новых выпусков, вместе с вами выбирать следующие темы для обсуждения и интересных гостей, а также делиться фотографиями и видео со съемок. Подписывайтесь по ссылке: https://t.me/+vCkZB-u3bgEyZDli
00:00:00 — Тизер выпуска
00:01:00 — Представление гостя
00:01:56 — Начало карьеры в Intel
00:04:44 — Зачем нужны профилировщики
00:08:14 — Типы профилировщиков и как они работают
00:12:01 — Профилировщики для нативных приложений и для систем с managed runtime
00:15:51 — Почему профилировщиков немного
00:16:52 — Почему Intel VTune был платным
00:19:15 — Фундаментальная проблема профилировщиков
00:22:19 — Влияние профилировщиков на результаты
00:26:20 — С чего начать профилирование сложной системы
00:28:44 — Особенности Intel VTune
00:31:03 — Аппаратная поддержка для профилирования
00:39:33 — Внутренние и внешние пользователи Intel VTune
00:42:17 — Top-down Microarchitecture Analysis Method
00:55:26 — Боятся ли вендоры реверс-инжиниринга
00:57:25 — Накладные расходы счетчиков
00:59:23 — Основные микроархитектурные bottlenecks
01:09:33 — Почему сложно сделать универсальный профилировщик для всех микроархитектур
01:13:58 — Верификация формул TMA для микроархитектуры
01:16:59 — Профилирование многопоточных приложений
01:23:44 — Заключение
В этом выпуске мы побеседовали с Николаем Иготти — разработчиком с опытом сразу во многих сферах системного программирования. Николай разрабатывал виртуальные машины (Java HotSpot), компиляторы (Kotlin/Native), гипервизоры (VirtualBox). Также в портфолио нашего гостя — браузеры Firefox, Chrome и...
Published 11/22/24
В этом выпуске мы продолжим погружаться в тему системного программирования и познакомим вас с Дмитрием Точанским — инженером с опытом работы более 20 лет в сферах системного и embedded-программирования. Дмитрий пришел в системное программирование из системного администрирования, куда его привела...
Published 10/11/24