Евгений Ерохин
Компания: Kaspersky
Современные процессоры являются крайне сложными устройствами, заточенными на получение максимальной производительности из того кода, который мы запускаем на них. Понятия Out of Order (OoO), Super Scalar на слуху, и многие знают про Branch predictor, но мало кто представляет, как он устроен. А между тем, Branch prediction — это основа спекулятивного выполнения, которая является одним из самых важных компонентов производительности.
Конечно, это знание не требуется программисту в повседневной практике. Но понимание, до какой степени процессор способен предсказывать поведение вашей программы и как он это делает, может помочь оптимизировать код в критических местах.
В докладе рассмотрим:
Компания: Kaspersky