En el de informática, la instrucción del que programa es una optimización de recopilador usada para mejorar el paralelismo del instrucción-nivel, que mejora funcionamiento en las máquinas con las tuberías de la instrucción que puso más simplemente, sin el cambio del significado del código, él intenta al
Evitar las paradas de la tubería cambiando la orden de instrucciones.
Evitar las operaciones ilegales o semántico ambiguas (que implican típicamente ediciones sutiles de la sincronización de la tubería de la instrucción o recursos no-enclavijados.) ¡la previsión de la instrucción -->
Las paradas de la tubería se pueden causar por los peligros estructurales (límite del recurso del procesador), los peligros de los datos (salida de una instrucción necesaria por otra instrucción) y los peligros del control (ramificación).
Técnico, hay un cuarto tipo, leído después de leído (RAR o " Input"): Ambas instrucciones leyeron la misma localización. La dependencia de la entrada no obliga la orden de ejecución de dos declaraciones, sino que es útil en el reemplazo escalar de los elementos de arsenal.
Para cerciorarse de nos respetamos los tres tipos de dependencias, construimos un gráfico de la dependencia, que es un gráfico dirigido donde está una instrucción cada cima y hay un borde de I1 a I2 si I1 debe venir antes de I2 debido a una dependencia. Si las dependencias lazo-llevadas se dejan hacia fuera, el gráfico de la dependencia es un gráfico acíclico dirigido . Entonces, cualquier clasificación topológica de este gráfico es un horario válido de la instrucción. Los bordes del gráfico se etiquetan generalmente con el estado latente de la dependencia. Éste es el número de ciclos de reloj que necesita transcurrir antes de que la tubería pueda proceder con la instrucción de la blanco sin el atasco.
¡
El algoritmo más simple para encontrar una clasificación topológica se utiliza y se conoce con frecuencia como previsión de lista del . Conceptual, selecciona en varias ocasiones una fuente del gráfico de la dependencia, la añade al horario actual de la instrucción y la quita del gráfico. Ésta puede hacer otras cimas ser las fuentes, que entonces también serán consideradas para programar. El algoritmo termina si el gráfico es vacío.
Para llegar un buen horario, las paradas deben ser prevenidas. Esto es determinada por la opción de la instrucción siguiente de ser programado. Un número de heurística está en de uso común:
Se registra el
los recursos del procesador usados por las instrucciones ya programadas. Si un candidato utiliza un recurso se ocupe que, su prioridad caerá.
Si programan a un candidato más cercano a sus precursores que el estado latente asociado su prioridad caerá.
Si un candidato miente en la trayectoria crítica del gráfico, su prioridad se levantará. Este heurístico proporciona una cierta forma de mira-a continuación en un proceso de decisión de otra manera local.
Si elegir a un candidato crea muchas nuevas fuentes, su prioridad se levantará. Este heurístico tiende a generar más libertad para el planificador.
Si la arquitectura que es programada tiene las secuencias de instrucción que tienen combinaciones potencialmente ilegales (debido a una carencia de los dispositivos de seguridad de la instrucción) las instrucciones se deben programar después de la asignación del registro. Este paso de previsión del segundo también mejorará la colocación del derramamiento/del código del terraplén.
Si la previsión se hace solamente después de que la asignación del registro entonces allí sea dependencias falsas introducidas por la asignación del registro que limitará la cantidad de movimiento de la instrucción posible por el planificador.
.
| Random links: | Ramoth-Gilead | Bomba del cobalto | Lista de hospitales en Hungría | Facilidad pacífica de la gama de misil | Certificado de enseñanza secundaria |