Крупнейшая профессиональная конференция для разработчиков высоконагруженных систем

Секреты высокой производительности в многоядерных системах ☠️

Хардкор

GO
Оптимизация

Доклад принят в программу конференции

Мнение Программного комитета о докладе

По мере увеличения количества ядер CPU производительность привычных инструментов вроде sync.RWMutex может перестать устраивать, и даже atomic'и могут начать тормозить. Никита расскажет, почему так происходит и какие подходы можно использовать для увеличения производительности.

Целевая аудитория

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

Тезисы

Когда нам приходится работать в многоядерных системах, где доступно значительно больше ядер, чем привычные 4 или 8, то стандартные подходы и даже стандартная библиотека могут не обеспечивать достаточной производительности. Поговорим о том, как в таких условиях выжимать максимум из доступного CPU.

Из доклада вы узнаете:
* почему и когда стоит шардировать работу с atomic-значениями и с map;
* зачем нужны такие алгоритмы, как biased locking for reader writer locks;
* что такое оптимистичное чтение и когда его можно использовать.

Мы также рассмотрим протокол MESI, работу кэша CPU и способы его эффективного использования.

Никита Галушко

VK, ВКонтакте

Вот уже 10 лет плотно сидит на Go. Пишет разной степени сложности бэкенды и насаждает Effective Go где только возможно :)

VK, ВКонтакте

ВКонтакте — крупнейшая социальная сеть в России и странах СНГ. Миссия ВКонтакте — соединять людей, сервисы и компании, создавая простые и удобные инструменты коммуникации. VK — это более 200 технологичных проектов, больше 15 000 сотрудников и миллион возможностей проявить себя. Делают современные и быстрые интернет-сервисы, доступные каждому.

Видео