2 августа приглашаем всех разработчиков, которые развивают свой бэкенд на C++ и неравнодушны к эффективности и низкоуровневым деталям, на C++ Zero Cost Conf.
Конференция пройдёт сразу в трёх городах:
Москва — офлайн и онлайн
Белград — офлайн и онлайн
Санкт‑Петербург — только офлайн, зато с дополнительными активностями
Практикующие инженеры из ведущих компаний расскажут, как они решают реальные задачи и добиваются «нулевой стоимости абстракции» — в докладах будет много практики и метрик. В программе — шесть ключевых выступлений, воркшоп по инструменту Perforator, интерактивный Case Lab и даже код‑гольф на C++.
Московская программа конференции Доклады
«Алиасинг памяти в компиляторе и в вашей программе» — Константин Владимиров, руководитель отдела компиляторов и инструментов разработки Syntacore, Владислав Белов, инженер‑программист отдела компиляторов и инструментов разработки Syntacore.
Доклад про строгий алиасинг, restrict, оптимизации, которые от них зависят, и неожиданные нюансы поведения. Разбираемся, как это влияет на производительность, и в чём сложности поддержки в компиляторах и в стандарте C++.
«C++20 Модули — практическое внедрение» — Антон Полухин, руководитель группы разработки общих компонент в Техплатформе Городских сервисов Яндекса.
Разберём, как использовать C++20 модули в больших существующих проектах с поддержкой старых стандартов, на примерах Boost, libstdc++ и libc++.
«Hardening: текущий статус и перспективы развития» — Роман Русяев, Team Lead компиляторного направления Huawei, Юрий Грибов, разработчик Huawei.
Ребята расскажут о средствах hardening, предоставляемых современными тулчейнами (ASLR, проверки Glibc и STL и т. д.), и их влиянии на развитие языка C++.
«Цена абстракции std: simd» — Василий Рамаданов, старший инженер‑программист, Yadro.
Поговорим про поведение std: simd на x86 и ARM: что мы теряем (или нет), абстрагируясь от конкретной архитектуры.
«Что такое зависимости, и с чем их едят в CMake, Meson, Conan, vcpkg и др.» — Алексей Горгуров, старший разработчик.
Разберём системные зависимости через pkg‑config, магию find_package () в CMake и директиву dependency () в Meson. Посмотрим, как conan и vcpkg меняют подход к сборке, и заглянем в будущее: CPS как новый стандарт для кросс‑языковых зависимостей.
Performance Puzzlers — разбор нестандартных задачек на производительность с C++ экспертом Сергеем Слотиным.
Воркшоп по Perforator
Perforator — система непрерывного профилирования (continuous profiling), которую мы используем внутри Яндекса для анализа производительности большинства сервисов. На воркшопе покажем, как она работает и как можно её попробовать локально или развернуть у себя. Разберём, как можно анализировать исполнение программ с помощью профилировщиков, обсудим базовое объяснение работы сэмплирующих профилировщиков, расскажем про то, что мы умеем мониторить: циклы CPU, реальное время — wall time и др.
А ещё поговорим про:
Способы использования Perforator — локальный запуск и поднятие своей инсталляции постоянного профилирования
Использование консольной утилиты perforator record
Способы визуализации исполнения программы: Flamegraph, Top, Side‑by‑Side, навигация по данным форматам
UI Perforator — как смотреть и анализировать профили
Performance‑сравнение различных версий программы через Diff Flamegraph
И разыграем настоящий перфоратор среди участников!
И ещё активности
Интерактивная сессия Case Lab: Observability надёжности под руководством Вадима Мартынова из Яндекс Go. Участники разделятся на команды и попробуют вместе найти, как повысить доступность микросервисного приложения. Отличный шанс для всех, кто хочет прокачать навыки SRE.
И посоревнуемся в код‑гольфе на C++ — для тех, кто любит необычные челленджи: нужно будет написать работающий код с минимальным количеством символов. Сложность — простая, удовольствие от сжатия кода — максимальное.
А после основной программы участников ждёт афтепати от Multitrack.
Узнать о конференции больше и зарегистрироваться можно на странице конференции.
Источник: habr.com