Получи случайную криптовалюту за регистрацию!

Глубокое погружение в технику диспетчеризации - Джонатан Мюлле | Книги для программистов

Глубокое погружение в технику диспетчеризации - Джонатан Мюллер - Meeting C++ 2022
Доклад на Eng

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

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

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

источник

@cpp_lib