Skip to content

Details

Thread Local в C++: как он есть, Евгений Ерохин

Доклад посвящен такой уже вроде бы устоявшейся фиче C++ как thread_local. Но несмотря на то что стандартизована она еще в C++11, мало кто понимает что за машинерия за этим стоит. Как и в каких случаях мы получаем этот функционал бесплатно, а когда в ход идет тяжелая артиллерия.
Доклад рассматривает имплементацию фичи в Linux, как платформы с самой полной поддержкой этой фичи языка. И к тому же продолжающая ее развивать для получения максимального перформанса.

  • В докладе будут рассмотрено раннее POSIX решение.
  • Имплементация в языке и 4 “Традиционные” модели Thread Local.
  • Более продвинутая но еще не везде применяющаяся Дескрипторная модель.
  • Рассмотрены особенности при работе с thread_local объектами и подводные камни связанные с ними.
  • В течении доклада будут представлены ассемблерные листинги с коментариями к ним.
  • Так же будет продемонстрированы бенчмарки.

Целевая аудитория, более опытные программисты с минимальными знаниями ассемблера x86. Из доклада аудитория почерпнет знания о том какое реальное время жизни их thread_local объектов. В каких случаях можно безболезненно пользоваться этой фичей а в каких случаях можно потерять перформанс при использовании thread_local. И каким образом можно обойти эти проблемы.

О докладчике:
Старший разработчик в компании DINS. В данный момент занимаюсь разработкой сервиса передачи видео в реальном времени.
За плечами более 10 лет опыта работы в Paragon Software на позиции ведущего разработчика. Разрабатывал драйвера файловых систем под macOS, занимался имплементацией файловых систем, системы снепшотинга блочных (дисковых) устройств, boot загрузчика, реверс-инженирингом и другими низкоуровневыми задачами.
В свободное время занимаюсь изучением устройства операционных систем и процессорных архитектур.

Related topics

Sponsors

JetBrains

JetBrains

Meetup sponsor (location, licenses prizes)

SEMrush

SEMrush

Meetup sponsor (location)

PeterService

PeterService

Meetup sponsor (location)

Oracle

Oracle

Meetup sponsor (location)

You may also like