Я не знаю, какой случай преобладает, но я хотел бы предложить некоторые мысли по вашему предложению двойных трубопроводов.
Прежде всего, вам понадобится двойной провод, который будет потреблять в два раза больше энергии и производить в два раза больше тепла при активной работе. Хотя это и не нужно, с другой стороны, это было бы совершенно бесполезно. Таким образом, можно утверждать, что это не очень хорошее использование ресурсов, которые редки на современных процессорах.
Более фундаментально, если вы не предпочитаете одну ветку, основанную на вероятности, как вы узнаете, какую версию писать? Если нет, вы можете ничего не сохранять, потому что другим процессорам, возможно, придется ждать вашего решения, в любом случае. Если вы остановитесь на одном из них, у вас будет та же вероятность и стоимость отката, что и сейчас.
Давайте сделаем приблизительный расчет. Для простоты предположим, что обработка двух конвейеров вместо одного не приводит к дополнительным затратам на управление. Ожидаемая стоимость (например, энергия, тепло) составляет с одним конвейером ( стоимость выполнения любой альтернативы, вероятность отката и стоимость отката без затрат на выполнение другого альтернатива) но либо либо даже - либо намного больше, чем если и относительно малы, ас р с т 2 с 2 с + р с т С р с т р т + р ( т г + т ) т т + р т т рС= с + р ( ср+ в )спср2 с2 с + р срСпcrpконечно (насколько я знаю, современные отраслевые прогнозы имеют точность более 90%). И мы не получаем много за эту стоимость! Ожидаемое время выполнения: с одним конвейером и соответственно. с двумя; так как мало, экономия времени незначительна.t+p(tr+t)tt+ptrp