Главная студия
Открытие конференции C++ Russia 2022
Говорим о расписании, сессиях и активностях. Подключайтесь, чтобы узнать, что вас будет ждать в эфире в ближайшее время!
Начало основного контента
Время в программе указано для вашего часового пояса ().
Главная студия
Говорим о расписании, сессиях и активностях. Подключайтесь, чтобы узнать, что вас будет ждать в эфире в ближайшее время!
Доклад
Обзор актуальных и сегодня советских достижений из области компиляции, метавычислений и синтеза программ.
РТУ МИРЭА
Главная студия
На C++ пишут в очень разных сферах — с разными требованиями, особенностями, сложностями. И если вы не причастны к ML, то можете иметь довольно смутное представление о том, чем работа разработчиков там отличается от вашей. Может быть, стоит бросить всё и перейти туда? Или наоборот, это совершенно не ваше, да и вообще «плюсам» в этой сфере осталось недолго?
Разобраться в этом помогут опытные люди. Поэтому на конференции поговорим об особенностях этой сферы с теми, кто провёл в ней не один год: Ашотом Варданяном, Станисловом Кирилловым. А провести эту беседу поможет Павел Филонов.
Доклад от партнера
Никто не любит простыни if else if
. Во многих языках для решения проблемы существует pattern matching. К сожалению, в C++ он есть только для std::variant
через std::visit
. Мы рассмотрим, как можно реализовать свой простой pattern matching на примере работы с узлами AST.
PVS-Studio
Доклад
Денис покажет, как софт видит реверсер.
Один из аспектов работы Дениса — разбор целевых вредоносов.
На паре целевых вредоносов спикер и сосредоточится в выступлении. Не претендуя на экспертизу в разработке, он предлагает альтернативный взгляд — от бинарей к исходникам.
Лаборатория Касперского
Доклад
Библиотека низкоуровневого универсального и переносимого механизма коммуникации программных компонентов между собой.
Catalyst Aerospace Technologies
Доклад
В этом докладе рассматривается ряд интересных паттернов программирования с лямбдами: от возможностей, которые появились в С++11, до методов, которые станут возможными в грядущем стандарте С++23.
JetBrains
Главная студия
Техническое интервью — сложная штука сама по себе, и не все представляют, как оно проходит. А когда интервью имеет узкую направленность, то тем более.
Егор Суворов проведет собеседование с Анатолием Томиловым, который условно будет работать с алгоритмической секцией. Цель — показать, как оно обычно проходит, какие знания и навыки нужны кандидату, а заодно разобрать ошибки, которые могут допустить обе стороны.
Доклад
Как самому расширить стандарт W3C и перестать писать на HTML/JS/CSS.
Доклад
В первой части доклада спикер рассмотрит применение межмодульного анализа в известных компиляторах и то, как он связан с оптимизациями времени связывания (LTO). Во второй части — технические подробности реализации системы. Спикер расскажет о проблемах и решениях, с которыми столкнулась его команда, а также поделится идеями о некоторых оптимизациях, которые можно сделать.
PVS-Studio
Доклад
Корутины — мощный инструмент, добавленный в C++20. В этот раз доклад посвящен части корутин, отвечающей за генераторы. Будет рассказ о том, как работают корутины, о ключевом слове co_yield
и о том, как концептуально работают простые и асинхронные генераторы.
Время в программе указано для вашего часового пояса ().
Главная студия
Говорим о расписании, сессиях и активностях. Подключайтесь, чтобы узнать, что вас будет ждать в эфире в ближайшее время!
Независимый консультант
Доклад
Многие думают, что wasm — это только для браузера. Это не так — его запускают и на бэкенде. Wasm позволяет запускать произвольный код на различных скриптовых языках, вроде JS, Python или Lua, в едином окружении и одновременно.
В докладе рассказывается про все ограничения серверных приложений созданных на базе виртуальной машины wasm и связанные с этим возможности.
Доклад
Механизм шаблонов в языке C++ позволяет построить библиотеку достаточно сложных алгоритмов обработки списков, включающих поэлементное преобразование, фильтрацию, поиск и сортировку. Для реализации таких алгоритмов подходит декларативный стиль. На примере обработки списков демонстрируется метод декларативного метапрограммирования.
N-able Technology
Доклад
In this talk, the speaker would like to take you through the entire debugging process, starting with a program that crashes. What do we do next? Which questions do we have to ask? What information do we need? What can we do to find the cause of the crash? Which tools can help us in this quest? And last but not least, what can we do to make sure this bug never happens again?
think-cell
Доклад от партнера
Все знают про Clang и что на нем приятно писать свой тулинг. Но где же был Clang 15 лет назад? На заре PVS-Studio приходилось выкручиваться. В итоге архитектура вышла неоднозначной. Разработчики расскажут вам, как не стоит писать фронтенд и как теперь бороться с последствиями.
Главная студия
Разговор в главной студии об особенностях разработки автопилотов.
Доклад
Спикер рассмотрит Abseil, частично Folly, принципы написания подобного года
Лаборатория Касперского
Доклад
В докладе рассматриваются те изменения, которые произошли с появлением Reflection TS: новые возможности и ограничения, которые привносит эта спецификация. Также будет возможность опробовать новинку в деле и обсудить, чего по-прежнему не хватает.
Orion Innovation
Доклад
В докладе обсуждается, можно ли считать Go «системным ЯП» и что вообще под этим подразумевается. Будет возможность написать пару несложных приложений и библиотек, которые обычно пишут на «системных ЯП», и посмотреть, какую цену за это придется заплатить.
Главная студия
Техническое интервью — сложная штука сама по себе, и не все представляют, как оно проходит. А когда интервью имеет узкую направленность, то тем более.
Архитектурное собеседование — одно из самых сложных, как для кандидата, так и для интервьюера. В рамках эфира из главной студии одно из таких собеседований проведет Александр Поломодов. Он будет рассматривать кандидата на позицию C++ разработчика по направлению работы с архитектурой.
Посмотрим, как обычно проходит интервью, какие знания и навыки нужны кандидату, и заодно разберем ошибки, которые могут допустить обе стороны.
Доклад
Спикер даст свой взгляд на экосистему C++ разработчика под мобильные и встраиваемые системы, расскажет о новинках в KasperskyOS SDK.
Лаборатория Касперского
Доклад
Проблема безопасности в браузерах на Chromium — это ошибки, связанные с использованием объектов после их освобождения/уничтожения. Для решения этой проблемы в настоящее время активно внедряется и используется MiraclePtr.
Доклад
Максим расскажет, как оптимизируют производительность в ClickHouse: перформанс-тесты и практики. Расскажет про инфраструктуру, которая используется для анализа производительности запросов и нахождения мест, которые следует оптимизировать. Обсуждается выбор структуры данных, библиотек, написание специализаций.
ClickHouse
Время в программе указано для вашего часового пояса ().
Главная студия
Говорим о расписании, сессиях и активностях. Подключайтесь, чтобы узнать, что вас будет ждать в эфире в ближайшее время!
Playrix
Доклад
Обзор подхода «secure by design», при котором безопасность достигается путем изначально правильного проектирования. Будут рассмотрены паттерны безопасного дизайна и примеры их использования на С++.
Лаборатория Касперского
Доклад
Михаил и Кристина расскажут, что можно делать после того, как разработчик применил все классические оптимизации, про которые рассказывают на курсах по GPGPU. А ещё в докладе рассказывается про несколько алгоритмов, применяемых в декомпиляторах, и их адаптации для архитектуры видеокарт.
Судо
Доклад
Every program may encounter errors, some originating from internal bugs in the program, others coming from the environment the program is operating in. Ignoring all errors will make the program utterly unreliable, while treating every conceivable one introduces lots of extra complexity with little benefit. At think-cell, we have been using and refining our own principled approach to error handling, which we have not seen elsewhere. This talk describes our method, so that in your next project you can write more reliable software with less effort.
think-cell Software
Главная студия
На C++ пишут в очень разных сферах, с разными требованиями, особенностями, сложностями. И если вы не причастны к мобильной разработке, то можете иметь довольно смутное представление о том, чем работа разработчиков там отличается от вашей. Может быть, стоит бросить всё и перейти туда? Или наоборот, это совершенно не ваше, да и вообще «плюсам» в этой сфере осталось недолго?
Разобраться в этом помогут опытные люди. Поэтому на конференции поговорим об особенностях этой сферы с теми, кто провёл в ней не один год: с Владимиром Ивановым и Русланом Морозовым.
Доклад
Роман покажет внутреннее устройство std/core языка Rust, примитивы и подходы, которые можно применить для низкоуровневого программирования (модуля ядра Linux, под микроконтроллеры). Бонусом будет объяснение принципов работы безопасной многопоточности.
Parity Technologies
Доклад
Спикер покажет подходы к автоматизации разбора проблем на примере библиотечки скриптов, опубликованной в Open Source. Она предназначена для использования c WinDBG и с GDB и помогает в автоматизации ряда рутинных задач, возникающих при анализе причин падения программ как при отладке вживую, так и при работе с дампами памяти.
Лаборатория Касперского
Доклад
Why is clean code still the exception and not the norm? An intriguing question I read recently. Most of the answers are so human, but also so wrong. It's them! The project managers, the junior developers...
Главная студия
Подводим итоги, вспоминаем яркие моменты и рассказываем о дальнейших планах. Заходите на трансляцию, чтобы ничего не пропустить!
JUG Ru Group
26 июня в Санкт-Петербурге в Park Inn by Radisson Pulkovskaya пройдет совместный offline‑день конференций C++ Russia 2022 и Hydra 2022.
Для вашего удобства активности Hydra 2022 отмечены тегом #hydra_part.
Время в программе указано для вашего часового пояса ().
Доклад
Говорим о расписании, сессиях и делимся информацией. Приходите в зал или подключайтесь онлайн, чтобы узнать, что вас будет ждать в ближайшее время!
JUG Ru Group
Независимый консультант
Доклад
Раньше в Такси была монолитная архитектура, но потом монолит стал разрастаться, и начались проблемы. Как эти проблемы преодолевали, к чему пришли, для чего нужен собственный фреймворк userver, а также о его устройстве — Антон расскажет в своем докладе.
Яндекс Go
Доклад
This is educational first speech. Let's see why ACID transaction properties are important and how they are implemented in distributed databases with sharding and replication. What about geo-distributed databases? Is it possible to achieve fault tolerance (high availability) and support strong consistency in such databases. What are trade offs for performance. discuss famous CAP theorem and what it means for data indexing and DB transactions.
SPBU
Главная студия
Эфир из главной студии площадки C++ Russia и Hydra.
Доклад
Обзор логической модели памяти в SYCL как примера адаптации модели памяти C++ для гетерогенных систем.
Доклад
Asynchronous replication is a well-known technique to provide an independent replica of a database for different purposes including disaster recovery, geo-replication or scaling read workload. Traditionally, a log of changes from source replica is treated as an input for target replica database. If source and target replicas are distributed databases that handle high workload, putting all updates to a single log of changes could be nearly impossible.
Яндекс
Яндекс
Доклад от партнера
C++ разработчики не любят платить за то, что не используют. Но есть нюанс — RTTI. Стоит написать в коде dynamic_cast
, и вам приходится платить за информацию о типах на рантайме. Рассмотрим, как можно уменьшить накладные расходы, реализовав свой dynamic_cast
без RTTI.
PVS-Studio
Главная студия
Эфир из главной студии площадки C++ Russia и Hydra.
Яндекс Go
Независимый консультант
Шведский стол и напитки на выбор.
Доклад
IO-перформанс становится все популярнее, и вот почему:
Стеки которые были «ну, ок» в прошлом — теперь не ок. Невозможно увеличивать мощность железа и в то же время заниматься переключением контекста и прочим. И то, что раньше было «одним из вариантов», сейчас то, что нужно для приложений с высокой производительностью.
OKTET Labs
Доклад
In this talk, we cover on how to design concurrent Binary Search Trees starting from the simplest ones. Hopefully, after this talk the attendee will understand the standard tricks necessary for the implementation of Binary Search Trees. These tricks are important and can help to implement other more complex data structures.
Университет ИТМО
Доклад
Встраивание функций (инлайнинг) — это оптимизация, которая основана на эвристиках, использующихся для принятия итогового решения о встраивании функции. Эти эвристики призваны сделать эффективное решение в общем случае, но, как следствие, могут привести к далеким от эффективности решениям в отличающихся от общих случаев. Для решения этой проблемы в LLVM была добавлена поддержка использования модели машинного обучения, которая на основе анализа компилируемого кода отвечает на вопрос, нужно ли встраивать функцию в рассматриваемое место вызова.
В докладе разберем, как устроен этот механизм определения необходимости встраивания функций с использованием машинного обучения, как он может улучшить вашу программу и какие ограничения имеет.
Доклад
Сергей расскажет о С/C++ компиляторе и оптимизации приложений для открытой и свободной процессорной архитектуры RISC-V — новом стандарте, меняющем мир микропроцессоров. Вы узнаете об истории развития архитектуры, современном состоянии и планах развития в международном сообществе RISC-V, поддержке архитектуры в инструментах разработки, оптимизациях и трансформациях кода на уровне исходного кода и компилятора, подсказках позволяющих улучшить производительность и использовании расширений системы команд.
Syntacore
Главная студия
Эфир из главной студии площадки C++ Russia и Hydra.
Независимый консультант
Доклад
Разработка десктопного приложения VK Звонки была настоящим челленджем. Команда поставила перед собой сразу несколько целей: предоставить нативные сборки под Windows, macOS и Linux, добиться максимальной производительности и качества и снять при этом ограничение на число участников в звонке. А еще сделать все это в максимально сжатые сроки. Для этого пришлось заранее продумать, как срезать некоторые острые углы, неизбежно возникающие при разработке на C++.
Доклад
Доклад поможет погрузиться в различные алгоритмы, которые были реализованы в Java, .NET и прочих runtimes. Мы рассмотрим решаемые ими задачи и научимся понимать проблемные места. Решая определенные задачи, мы также создадим свой пул потоков, после чего добьемся его максимальной производительности.
Speech Technology Center
Доклад
Одними из наиболее неочевидных и трудноуловимых правил стандарта языка С++ являются правила strict aliasing, которые создают множество проблем (например, таких как «каламбур типов» (type punning)). Из-за этого многие приложения собираются с опцией -fno-strict-aliasing
, которая запрещает компилятору полагаться на использование этих правил. В свою очередь, это ведет к снижению производительности программ, т. к. компиляторные оптимизации, полагающиеся на анализ типов, не могут в полной мере произвести оптимизацию кода. Вместо этого было бы полезно иметь способ обнаружения нарушений strict aliasing-правил, который бы позволил избежать использования опции -fno-strict-aliasing
при сборке программы.
В данном докладе обсуждается способ динамического анализа приложений, который позволит обнаружить нарушения strict aliasing-правил, не замеченных компилятором. Данный доклад нацелен по большей части на компиляторную аудиторию, т. к. затрагивает детали реализации внутренностей LLVM.
Главная студия
Эфир из главной студии площадки C++ Russia и Hydra.
Доклад
При больших нагрузках повышение эффективности кода может оказаться куда лучшей инвестицией, чем закупка новых ресурсов. Заглянем в «подкапотное пространство» процессора. Увидим, для чего там кэш, конвейер, векторные инструкции, а также посмотрим, что там есть ещё. Разглядим отличия x86 и ARM. Обсудим, каким должен быть код, который способен выжать из процессора все соки, а не ждать сотни циклов пока загрузится вон тот байт.
Huawei
Доклад
The talk will cover the architecture and data model, features and trade-offs, performance and optimization, some intricacies and surprises. The ideas and experience presented in the talk might be useful to designers and developers of distributed storage services, especially S3-compatible and/or Cassandra-based ones.
Одноклассники
Доклад
Сейчас последовательность оптимизационных проходов выбирается с помощью экспертной оценки разработчиков компилятора с использованием определенного набора бенчмарков. Это очень сложная задача и огромное пространство поиска, в решении которой может помочь ML.
Роман и Мария рассмотрят подходы для решения этой проблемы. Сделают обзоры исследовательских работ и используемых инструментов и моделей, опишут их достоинства и недостатки. А также покажут, какие практические результаты достижимы с использованием машинного обучения для подбора оптимальной последовательности оптимизационных проходов.
Обсуждение
Concurrency в теории. Concurrency на практике. Concurrency у нас на продакшене.
Обсуждаем только реальные проблемы. Рассуждаем о грядущих инновациях.
Доклад
Подводим итоги конференций C++ Russia и Hydra, вспоминаем яркие моменты и рассказываем о дальнейших планах. Заходите в зал или подключайтесь к трансляции, чтобы ничего не пропустить!
JUG Ru Group
Независимый консультант
Повидать старых знакомых. Обсудить актуальные проблемы. Прийти к новым идеям. Подискутировать и просто поболтать.