No sé qué caso prevalece, pero me gustaría ofrecer algunas ideas sobre su propuesta de doble canalización.
En primer lugar, necesitaría el doble de cable que consumiría el doble de energía y produciría el doble de calor mientras está activo. Si bien no es necesario, por otro lado, sería completamente inútil. Entonces uno podría argumentar que no es un buen uso de los recursos que son raros en los procesadores modernos.
Más fundamentalmente, a menos que prefiera una rama basada en la probabilidad, ¿cómo sabe qué versión escribir? Si no hay ninguno, es posible que no guarde nada porque de todos modos otros procesadores tendrán que esperar su decisión. Si te quedas con uno de ellos, tienes esencialmente la misma probabilidad y costo de reversión que tienes ahora.
Hagamos un cálculo aproximado. En aras de la simplicidad, supongamos que manejar dos canales en lugar de uno no causa una sobrecarga de administración adicional. El costo esperado (por ejemplo, energía, calor) es con una tubería ( el costo de ejecutar cualquiera de las alternativas, la probabilidad de reversión y el costo de reversión sin el costo de ejecutar la otra alternativa), pero o incluso : cualquiera es mucho más grande que si y son relativamente pequeñas, yC=c+p(cr+c)cpcr2c2c+pcrCpcrpciertamente lo es (hasta donde yo sé, las predicciones de rama modernas tienen precisiones superiores al 90%). ¡Y no obtenemos mucho por este costo! Los tiempos de ejecución esperados son con una tubería y resp. con dos; Como es pequeño, el ahorro de tiempo es insignificante.t+p(tr+t)tt+ptrp