Balotario Capítulo 5

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 6

Curso: Arquitectura de Computadoras

Nombres: Chahuasoncco Papel, Jorge Luis


Aranzamendi Morales, Howard

BALOTARIO CAPTULO 5 PROCESADORES VLIW
1. Qu caractersticas comparten los procesadores VLIW con los procesadores
superescalares?
Son procesadores segmentados que pueden emitir instrucciones en cada ciclo
Disponen de varias unidades de ejecucin por lo que pueden ejecutar varias
operaciones simultneamente

2. Cmo estn constituidas cada palabra de instruccin en los procesadores VLIW?
Estn constituidos por un conjunto de subpalabras o slots y cada una de tales palabras
pueden codificar una operacin

3. En procesadores VLIW quin se encarga de ubicar las distintas operaciones que debe
realizar un programa?
El compilador es el que se encarga de ubicar las distintas operaciones de que deben realizarse
en un programa en las distintas subpalabras d las instrucciones VLIW, teniendo en cuenta las
dependencias y los recursos de los procesadores

4. Cul es la principal importancia de los procesadores VLIW?
Al poder aprovechar el paralelismo con una menor complejidad de hardware que otras
alternativas son muy adecuadas para el mercado de aplicaciones embebidas donde los
aspectos de consumo de potencia son cruciales

5. Qu dificultades hubieron en los primeros VLIW?
El considerable tamao de los programas con respecto a los que utilizaban repertorios
escalares
La necesidad de que las unidades funcionales deben funcionar sincronizadamente
La falta de compatibilidad debido a la depuracin de los compiladores para las
arquitecturas VIW
En la situacin en la que en la que puede aprovechar gran cantidad de paralelismo, un
procesador vectorial es podra ser ms eficaz.

6. Qu es un bloque bsico?
Es un trozo de cdigo al que internamente no se accede desde ninguna instruccin de salto, y
en el que no existen instrucciones de salto, salvo la ltima instruccin del bloque.
7. Cules son las tcnicas bsicas para la reduccin de dependencias dentro de bloques
bsicos?
Desenrollado de bucles (loop unrolling)
Segmentacin de software (software pipelinning)

8. Qu pretende la segmentacin de software?
La reorganizacin del cuerpo de un bucle de forma que cada iteracin del bucle modificado
contenga instrucciones tomadas de distintas iteraciones del bucle original con el objetivo de
situar las instrucciones dependientes lo ms alejadas posibles.

9. Cules son las tcnicas de planificacin de bloque bsico extedido?
Estn:
Planificacin de trazas
Planificacin de superbloques
Planificacin de hiperbloques
Planificacin de rboles de decisin

10. En qu consisten los procesos de la planificacin de trazas?
Seleccin de traza: se elige una seccin de cdigo sin bucles constituida por una serie
de bloques bsicos denominada traza.
Comprensin de traza: se pretende codificar las operaciones de la traza con el menor
nmero de instrucciones VLIW.

11. Qu factores debe tener en cuenta el compilador a la hora de realizar transformaciones de
cdigos?
Las frecuencias relativas de las alternativas posibles tras una instruccin de salto
condicional.
El costo asociado a la ejecucin de la operacin en su nueva ubicacin, tanto en lo
que se refiere a las necesidades de memoria como al tiempo de ejecucin.
El coste del cdigo de compensacin que hay que aadir por si la suposicin que se
ha hecho no se cumple.

12. Cules son los recursos de apoyo al compilador en los procesadores VLIW?
Operaciones con predicado
Recursos para preservar el comportamiento frente a las excepciones
Recursos para la especulacin en los accesos a la memoria

13. A qu se denomina predicacin completa?
A que la ejecucin de cualquier instruccin puede controlarse mediante predicados, y no est
limitado a slo instrucciones de transferencia condicional de datos.

14. Qu es una operacin con predicado?
Es aquella cuyo resultado modifica o no el destino (registro o posicin de memoria) de dicha
operacin en funcin del valor de un operador, denominado predicado, que, por tanto
establece la condicin de la que depende que la operacin tenga efecto.

15. Cmo es la forma tpica de expresar las operaciones con predicado?
Una forma tpica de expresar estas operaciones es <p> operacin, donde el predicado puede
tomar dos valores (por ejemplo 1 o 0) de manera que la operacin se realizar si p es igual a
1, y no se realizar en caso contrario.

16. Qu formato posible se explica en el texto?
p1 cmp.cnd a,b
p1,p2 cmp.cnd a,b

17. Cul es la ventaja del uso de predicados?
El uso de predicados permite reducir el nmero de operaciones de saltos condicionales que
hay en los programas permitiendo definir bloques bsicos mayores de forma que al
compilador le resulte ms sencillo ocupar las subpalabras de las instrucciones VLIW

18. Qu cuestiones limitan la utilidad del uso de predicados?
El uso de instrucciones con predicado para facilitar el desplazamiento de
instrucciones sigue siendo una forma de especulacin, y supone un costo cuando la
instruccin no debera haberse ejecutado.
Si la condicin que debe evaluarse en una instruccin con predicado no est
disponible con la suficiente antelacin se producir un atasco en el cauce
Cuando el flujo contiene ms de una alternativa puede resultar complicado el uso de
predicados

19. Cules son las estrategias que permiten garantizar el comportamiento de un programa
frente a excepciones?
Ni el hardware, ni el sistema operativo aceptan excepciones que causen la finalizacin
del programa
Las instrucciones especulativas nunca generan excepciones y se aaden elementos
para comprobar las condiciones de excepcin
Uso de bits de veneno (poison bits)
Uso de centinelas

20. En la especulacin a acceso a memoria qu pasa si la especulacin falla?
En el caso de que la especulacin afecte slo al LOAD, se vuelve a ejecutar cuando se
llegue al centinela
Si se han realizado otras operaciones que dependen del LOAD habr que repetirlas.

21. Qu mejoras presentaba el procesador Itanium 2?
Mejorada gracias al aumento en la frecuencia del reloj, y a ciertas modificaciones en la
profundidad y en el control del cauce, en el esquema de prediccin de saltos y en la interfaz
del sistema.

22. Cuntas unidades funcionales posee en Itanium 2?
Posee 11 unidades funcionales:
2 para procesamiento de enteros (Unidades I)
4 para operaciones de acceso a memoria (Unidades M)
3 para procesamiento de saltos (Unidades B)
2 para operaciones con coma flotante (Unidades F)

23. En qu se basa la serie de conceptos denominado EPIC?
Se basan en la premisa de que el compilador dispone que una mejor visibilidad que el
hardware de lo que ocurre en el programa. Las dificultades que surgen por la dinmica del
programa se intentan subsanar con una serie de recursos que estn de la mano con las
habilidades del hardware y las posibilidades del compilador.

24. Describa un haz de instruccin
Tienen un tamao de 128 bits y codifica hasta 3 operaciones. Cada operacin dentro del haz
se codifica mediante un campo de 41 bits, los 6 bits sobrantes pertenecen al campo de marca
o template. De los 41 bits para codificacin: 14 son para el cdigo de operacin, 7 para los
registros de operandos y resultado y 6 para predicados.

25. Cul es la ventaja del uso de marcas?
Se consiguen cdigos VLIW ms compactos, evitando tener que dejar campos sin usar en las
instrucciones VLIW, adems de facilitar la decodificacin y aumentar la flexibilidad en el uso
de unidades funcionales disponibles.

26. Dnde se ejecutan las instrucciones L+X?
Se ejecutan en las instrucciones tipo I o de tipo B, y corresponde a unas cuantas instrucciones
especiales entre las que estn las que codifican datos inmediatos de 64 bits

27. Para qu sirven los 128 registros de 64 bits denominados ar0,ar1, ar127 en el Itanium2?
Son de aplicacin y uso especfico, por ejemplo para facilitar la implementacin de la
segmentacin software con la ayuda de la lgica re renombramiento de que dispone el
procesador.

28. De qu se encarga la unidad de gestin de pila RSE (Rgister Stack Engine)?
Esta unidad gestiona los registros cargando y almacenando sus contenidos en memoria para
dejar registros libres para las aplicaciones
29. Cmo es la distribucin de puertos en el banco de registros para enteros en el Itanium 2?
Tiene doce puertos de lectura y ocho para escritura. De estos ocho puertos de escritura, seis
se utilizan para resultados generados por clculos en las unidades funcionales, y dos para los
datos obtenidos a partir de instrucciones de carga desde la cach de datos L1

30. Cmo es la distribucin de puertos en el banco de registros para coma flotante en el
Itanium 2?
Dispone de ocho puertos de lectura y seis de escritura. De estos puertos de lectura seis son
para operandos de clculos y dos para almacenamiento en memoria, mientras que de los
puertos de escritura, dos son para resultados de clculos y cuatro para cargas de la cach L2.

31. Qu algoritmo de prediccin usa el ITANIUM 2 y en qu consiste?
Utiliza el algoritmo de Yeh-Patt, consiste en 2 niveles de almacenamiento:
El primero esta acoplado a la cache L1 de instrucciones, dispones si la prediccin dar
o no el salto y la direccin de destino en un ciclo.
El segundo esta en la cache L2, donde se almacena la historia de la instruccin de
salto; si es cierta no hay penalizacin, si es incorrecta habr 6 ciclos de penalizacin.

32. En qu consistan los procesadores de Transmeta?
Se trataba de una familia de procesadores compatibles x86 a travs de los que se pretenda
alcanzar altas prestaciones con un bajo consumo de potencia, evitando la complejidad del
hardware propio de un procesador superescalar mediante un software que permite la
traduccin dinmica ptima de cdigo x86 al repertorio mquina propio de estos
procesadores.

33. Qu unidades funcionales tenan el procesador Crusoe?
El procesador Crusoe VLIW con dos unidades funcionales para operaciones con enteros, una
unidad para operaciones con coma flotante, una unidad de acceso a memoria
(carga/almacenamiento), y una unidad de procesamiento de saltos.

34. Cul era la idea de Transmeta con el Code Morphing?
Era sustituir las etapas hardware por un software que permitiera la traduccin de las
instrucciones x86 a las instrucciones VLIW que entiende el hardware del procesador.

35. Cules son las principales caractersticas del procesador Efficeon de Transmeta?
Procesador VLIW con instrucciones de 256bits que permitan codificar 8 operaciones de 32
bits. Funciona a una frecuencia de 1 y 1.2 GHz, incluye una cach L2 de 1 Mbytes, cach L1
separada de 64Kbytes para datos y 128Kbytes para instrucciones, software Code Morphing
mejorado, y las funciones tpicas del puente norte de un chipset integradas en el chip del
proccesador


36. Cmo se separan las distintas propuestas de arquitecturas para mantener el ritmo que
marcan las mejoras en la tecnologa de integracin?
Se separan en dos grandes grupos:
Los que apoyndose en las caractersticas de las cargas de trabajo ms frecuentes en
el futuro buscan la ejecucin simultnea eficiente de varias hebras y
Las que persiguen mejorar la ejecucin de una hebra.

37. Cules son las mejoras en procesadores superescalares?
El incremento de los recursos de la microarquitectura e incorporar recursos para monitorizar
y el aprender las caractersticas de la ejecucin de los programas. Las dificultades a superar
son los retardos de comunicacin con incidencia en la sincronizacin.

38. Cules son las mejoras en procesadores VLIW?
El compilador es el que ordena y planifica las instrucciones que pasan al procesador. La
arquitectura es ms simple y permite aprovechar el incremento de transistores aumentando
recursos. Es muy adecuado en aplicaciones con bajo consumo de potencia.

39. Cules son las mejoras en procesadores especulativos?
Buscan aumentar las prestaciones mediante recursos que permiten predecir:
Flujo de instrucciones
Flujo de datos entre procesador y memoria
Flujo de datos desde y hacia los registros

40. Cules son los procesadores multihebra simultnea?
Multiprocesadores Monochip (CMP, Chip Monoprocessor)
Procesadores Multihebra (SMT, Simultaneous Multithreading)

También podría gustarte