Доклад

Что можно успеть за половину миллисекунды?

Зал 2
  • На русском языке

Оптимизация производительности кода — ключевой вызов для разработчиков, особенно когда небольшой участок кода работает медленно. В докладе рассмотрим различные подходы к профилированию, их достоинства и недостатки, а также современные технологии. Начнем с постановки проблемы медленного выполнения небольших кусков кода и перейдем к обзору профилировщиков, сравнивая статистические и трассирующие методы. Обсудим основные недостатки статистических профилировщиков и их влияние на точность результатов, а затем рассмотрим способы минимизации накладных расходов в трассирующих профилировщиках. Простыми методами использования счетчиков производительности, такими как в async-profiler, упростим профилирование. Изучим, как эффективно анализировать профили с помощью FlameChart.

Затем перейдем к аппаратным технологиям, таким как processor trace, рассмотрим ее поддержку и ожидаемые результаты. Практическое руководство по сбору трассы с помощью агента perf, добавлению символов и интерпретации данных позволит вам начать работать с этой технологией. Поговорим о том, почему FlameChart не всегда помогает и как использовать стандартный TUI от perf для анализа больших объемов данных. Обзор современных визуализаторов данных, таких как решения от Jane Street и других, поможет вам выбрать лучший инструмент для визуализации. Наконец, рассмотрим режим снимков для perf-pt, который позволяет захватывать данные с высокой детализацией.

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

Спикеры

Приглашенные эксперты

Расписание