Предположим, вы пишете компилятор, который должен оптимально обрабатывать предсказания ветвлений. Какие техники доступны? Дело, конечно, в тяжелых конвейерных приложениях. Я пытался погуглить, но безуспешно.
Спасибо, прежде чем.
Существует как минимум два общих подхода:
статическое предсказание ветвления, основанное на эвристике (например, if (p == NULL) предсказано как не взятое)
if (p == NULL)
предсказание ветвления, управляемого профилем, с вероятностью взятия любой ветви определяется из предыдущего запуска (неоптимизированной) программы на входах теста.