Vous êtes sur la page 1sur 20

BALOTARIO CAPITULO 4

1. A mediados de los 90 en cuanto a arquitecturas CISC y RISC que procesadores salieron al


mercado

CISC: Intel lanza el Pentium Pro y el Pentium II, y AMD el K-5 y K-6.
RISC: DEC lanza el Alpha 211164, MIPS el R10000, Sun el UltraSPARC, HP el HPPA8000 y tambin aparecen los PowerPC 603, 604 y 620.

2. Qu cambio produce la microarquitectura P6 en la P5?


La microarquitectura P6 existe una etapa de decodificacin en el cauce, que traduce las
instrucciones CISC a una microoperaciones con caractersticas RISC.
3. En qu pasos se resume el funcionamiento de la microarquitectura P6

Las instrucciones se captan de memoria en el orden que est en el programa.


Cada instruccin se traduce a una o ms instrucciones de tipo RISC
(microoperaciones)
Las microoperaciones se ejecutan desordenadamente en la microarquitectura
Las microoperaciones modifican los registros del procesador siguiendo el orden del
flujo de programa original.

4. Cmo es ms eficiente la microarquitectura P6?


La traduccin de la instruccin de un repertorio CISC, a las microoperaciones de tipo RISC que
utiliza el ncleo superescalar de la microarquitectura P6 puede realizarse de forma ms o
menos eficiente segn se ordenen las instrucciones
5. Qu factores permiten mejorar el rendimiento de las etapas de cauce en la
microarquitectura P6?

Capacitacin
Decodificacin
Renombramiento de registros
Buffer de reordenamiento
Unidad de emisin/ejecucin
Unidad final de instrucciones

6. Describa la etapa de captacin

IF1: capta instrucciones de la cach de instrucciones, 32 bytes cada vez.


IF2: recibe instrucciones desde la etapa IF1, a razn de 16 bytes cada vez.
IF3: alinea las instrucciones recibidas de IF2, 16 bytes cada vez, y la pasa al
decodificador.

7. Qu ocurre en la etapa de captacin IF2 si hay saltos?


Explora los bytes para determinar los lmites de las instrucciones. Si alguna de las
instrucciones es de salto, pasa la direccin de la instruccin al predictor de salto dinmico.

8. A que se denomina bloques ifetch?


Son las instrucciones que se captan en bloques alineados de 16 bytes, estos bloques pasan a
un buffer en el que hay capacidad para 2 de ellos (32 bytes, el tamao de una lnea de cache).
Desde el buffer se pasan bloques de 16 bytes, como mximo, a los decodificadores.
9. Describa la etapa ID1 de la decodificacin en la microarquitectura P6
ID1 puede manejar tres instrucciones mquina del Pentium Pro en paralelo y traduce cada
instruccin (de una a cuatro) a microoperaciones de tipo RISC de 118 bits. Esta longitud es
necesaria para poder codificar las instrucciones del repertorio mquina que son muy
complejas.
Tiene tres decodificadores D0, D1, D2 y un secuenciador (MIS) que genera la secuencia de
microoperaciones en el caso de instrucciones maquina complejas que necesitan 5 o ms
microoperaciones.
10. Describa la etapa ID1 de la decodificacin en la microarquitectura P6
ID2 recibe microoperaciones desde ID1 (6 como mximo a la vez) y las sita en una cola en el
orden en que estn en el programa. Si alguna microoperacin es un salto condicional, se pasa
a la unidad de prediccin de salto esttica, desde donde pasara la correspondiente
informacin de historia, etc. a la unidad de prediccin de salto dinmica para su
almacenamiento.
11. Que se toma en cuenta para mejora el nmero de ciclos en la decodificacin
Los decodificadores pueden procesar tres instrucciones por ciclo, pero solo si se renen una
serie de condiciones que se resumen a continuacin:
La primera instruccin, decodificada en D0, no puede generar ms de 4 uops en un
solo ciclo de reloj.
La 2da y la 3ra no deben generar ms de 1 uop cada una.
La 2da y la 3ra no deben tener ms de 8 bytes cada una.
12. Que es una Unidad de final de instruccin (Retire Unit)?
Retiran del ROB las Microoperaciones ejecutadas y almacena sus resultados en los registros.
Si hubo saltos mal predichos no deben dar lugar a escrituras en los registros al retirarse del
ROB. Es conveniente que las Microoperaciones que ocasionan retardos elevados no estn
muy prximas.
13. Caractersticas en la etapa de Renombramiento.

Se realiza en el RAT (Register Allocator) que reasigna las referencias a los 16 registros
de la arquitectura a 40 registros fsicos, eliminando las dependencias falsas.
El RAT no puede manejas 3 microoperaciones.
Se puede renombrar tres registros por ciclo.
Una limitacin importante es que solo se pueden leer 2 registros diferentes en cada
ciclo.

14. Recomendaciones para el renombramiento de registros

Mantener las microoperaciones que leen el mismo registro lo ms cerca posible para
que sea ms probable que entren a la vez en el RAT.
Mantener las microoperaciones que leen de registros diferentes lo ms lejos posible
para que no entren a la vez en el RAT.
Provocar renombrados de registros para evitar los ciclos perdidos en el acceso a los
registros.

15. Cul o cules dependencias falsas nos permite eliminar el RAT?


WAW, WAR
16. Cmo es la prediccin de saltos en la arquitectura P6?
Esta dispone de un BTB ( Branco Target Buffer) con 512 lneas organizadas en 32 conjuntos
de 16 byte de la instruccin de salto, los bits 4-8 definen el conjunto y el resto se introducen
como una marca.
17. Cmo se comprueba si en el BTB hay informacin de historia de alguna informacin?
Cuando capta 32 bytes de cache el procesador marca el comienzo y el final de cada
instruccin en los primeros 16 bytes.
18. Qu procedimiento se utiliza para l algoritmo de prediccin dinmica?
Se utiliza un procedimiento de dos niveles basado en 4 bits de historia local (lo que ha
ocurrido las 4 ltimas veces que se ha ejecutado la instruccin de salto: 0 indica que no salto,
y 1 que s). Esos 4 bits designan 2 bits de historia que indican la prediccin que debe hacerse
(como si tuviera un esquema de prediccin dinmica de 2 bits).
19. Para una prediccin esttica Cul es su procedimiento?
Si la direccin de salto no es relativa al contador de programa IP: predice saltar si el salto es
un return, y no saltar en caso contrario.
Si la direccin de salto es relativa a IP: predice saltar si el salto es hacia atrs (situacin
anloga a los bucles), y no saltar si el salto es hacia delante.
20. Diferencias entre las P7 del Pentium 4 y P6 del Pentium 3?

La cach L1 de datos en el Pentium 4 es de 8KB frente a los16 KB en el Pentium 3.


En cuanto a la decodificacin, slo utiliza un decodificador (se han eliminado dos de
los tres decodificadores de la microarquitectura P6).
En el Pentium 4 se dispone de un BTB (Branch Transfer Buffer) con 4096 elementos o
entradas (8 veces ms grande que en la microarquitectura P6).
El Pentium 4 utiliza registros para el renombrado con 128 elementos, frente a las 40
del ROB de la microarquitectura P6.
El Pentium 4 tiene 5 unidades de ejecucin entera (3 ALU, 2 AGU;address generador
unit )
La microarquitectura P7 implementa nuevas instrucciones de coma flotante SIMD.
No se incluye el desplazador barril (barrel shiffter)que exista desde el 386

21. Cules son las instrucciones de precaptacin de instrucciones IA-32 del Pentium 4?

prefetchnta , precapta en un buffer temporal para lectura.


prefetcht0, precapta en todas las caches disponibles.
prefetcht1, precapta en las caches L2 y L3 pero no en la cache L1.
prefetcht2, precapta solo en la cache L3.

22. Cul fue el planteamiento inicial de los Power pc?


En primer lugar se plante triplicar el nivel de prestaciones de los microprocesadores de
Intel, al mismo coste.
23. Cules fueron los objetivos planteados en la arquitectura Power PC?

Disear una arquitectura que facilitase el trabajo del compilador.


Incorporarse la nocin de procesamiento superescalar en el propio repertorio de
instrucciones.
redujese el tamao de los cauces de procesamiento de instruccin e inclusive el tipo
de datos de coma flotante como tipo de dato importante a la hora de definir la
arquitectura.

24. De qu unidades funcionales segmentadas dispone el MIPS R10000?

Una unidad de carga/almacenamiento


Dos ALU (unidades lgico aritmticas) para enteros
Dos para operaciones de coma flotante ambos de 64 bits (un sumador segmentado y
un multiplicador segmentado)

25. Cmo se da la organizacin de los cauces del R10000?


El R10000 utiliza seis tipos de cauces que conjuntamente definen una secuencia de cmo
mximo siete etapas,
26. Mencione las funciones de las distintas etapas de la organizacin de cauces del R10000

captacin
decodificacin, renombramiento, saltos
escritura en cola de instrucciones
emisin
lectura de banco de registros
ejecucin en unidad funcional
escritura en banco de registros
calculo de direcciones, acceso a TLB
carga de memoria

27. Cules son las colas que recepcionan las instrucciones una vez decodificadas en el
R10000?

Cola para instrucciones con enteros


Cola para instrucciones de coma flotante

Cola de direcciones

28. Cuntos registros hay para el desarrollo de instrucciones con enteros en los procesadores
del tipo MIPS?

33 registros lgicos
64 registros fsicos

29. Cul fue la mejora de diseo en un UltraSparc III?

Reduccin en los retardos.


Aumento de frecuencia de reloj respecto a los anteriores.
Reduccin de conexiones entre mdulos alejados en la microarquitectura.

30. Cules son las 6 unidades en la microarquitectura Sparc?

Unidad de emisin de instrucciones


Unidad de ejecucin entera
Unidad de ejecucin de coma flotante
Unidad de cache de datos
Unidad de memoria externa
Unidad de interfaz de sistema

31. A que llamamos un WARF?


WARF es un banco de registros que nos permite eliminar caminos de bypass en el cauce de
ejecucin para enteros, y a reducir el tiempo de ciclo al acortarse el camino de datos para
enteros y reducirse la complejidad de los multiplexores de los caminos de bypass.
32. Qu gestiones se vuelven extremadamente importantes y complejas para una
microarquitectura supersegmentada?

La dependencia entre las instrucciones


Las interrupciones
Las predicciones incorrectas

33. Qu unidades no se consideran dentro de un cauce de 14 etapas?

Unidad de memoria externa


Unidad de interfaz de sistema

34. Mencione algunas caractersticas en general de los procesadores Alpha

Era un procesador de 64 bits, especialmente orientada a clculo de coma flotante.


Fue uno de los primeros procesadores diseados en 64 bits.
Tena una arquitectura RISC
La arquitectura Alpha estaba destinado a ser un diseo de alto rendimiento
No tiene: Ranuras de retardo Branch, Instrucciones suprimidas Carga Byte o
instrucciones de almacenamiento
El procesador Alpha ha sido conocido por su alto rendimiento, especialmente
ejecutando aplicaciones tcnicas.

Combinacin de alta velocidad de reloj.

35. Cules son los modelos de los procesadores Alpha y algunas de sus caractersticas de ella

21064: o EV4, fue el primer microprocesador CMOS cuya frecuencia de


funcionamiento rivalizo las minicomputadoras ECL con mayor potencia y ordenadores
principales. un chip con una velocidad de hasta 192 MHz, pero con una ligera
contraccin de la matriz corriendo a 200 MHz a los pocos meses.
21164: o EV5, capaz de captar y emitir hasta 4 instrucciones por ciclo. Consigue
prestaciones entre un 50 a un 200% superiores a su predecesor el Alpha 21064. fue el
primer microprocesador que se poda colocar una cach secundaria.
21264: o EV6, sU consumo era de 90W a 2.2 V a frecuencias de reloj de entre 500 y
600 Mhz. Dispone de una cach L1 separada para datos e instrucciones. Su cach L2
es externa. fue el primer microprocesador para combinar alta frecuencia de
operacin y el ms complicado fuera de microarquitectura de ejecucin.
21364: o EV7 fue el primer procesador de alto rendimiento para tener un controlador
de memoria en el chip.

36. Cules son las etapas del Alpha 21264

Captacin
Retardo
Renombramiento
Emisin
Leer registros
Ejecucin
Memoria

37. En la etapa de captacin del alpha 21264. Que se pretende con la prediccin de lnea y
via?
Aprovechar las ventajas de una cache asociativa por conjuntos en cuanto a tasa de fallos,
disponiendo adems de tiempos de acceso tpicos de una cache de correspondencia directa.
38. Qu le permite aprovechar mejor el paralelismo entre instrucciones del Alpha 21264?
La eficacia de prediccin de saltos, las unidades de ejecucin son ms rpidas ya que el 21264
puede mantener 80 instrucciones procesndose
39. En que consiste la etapa de retardo del Alpha 21264
Su nica funcin es proporcionar el retardo suficiente para que las instrucciones puedan
alcanzar la etapa dedicada al renombramiento de los registros.
40. En que consiste la etapa de renombramiento del Alpha 21264
Aqu se asigna un registro interno a cada instruccin, cuyo resultado logrado va a modificar un
registro de su arquitectura, entonces la instruccin al ejecutarse, modifica lo que es el
registro interno que se le ha asignado en el renombramiento y este se escribir en el registro

de la arquitectura a la instruccin correspondiente. El renombramiento se realiza de forma


separada entre los datos enteros y los que son de coma flotante.

BALOTARIO CAPITULO 5
1. Qu es un compilador?
Un compilador es un programa informtico que traduce un programa escrito en un lenguaje
de programacin a otro lenguaje de programacin, generando un programa equivalente que
la mquina ser capaz de interpretar. Usualmente el segundo lenguaje es lenguaje de
mquina, pero tambin puede ser un cdigo intermedio (bytecode), o simplemente texto.
Este proceso de traduccin se conoce como compilacin.
2. En qu caracteriza el procesador VLIW?
Los procesadores con arquitecturas VLIW se caracterizan, como su nombre indica, por tener
juegos de instrucciones muy simples en cuanto a nmero de instrucciones diferentes, pero
muy grandes en cuanto al tamao de cada instruccin. Esto es as porque en cada instruccin
se especifica el estado de todas y cada una de las unidades funcionales del sistema, con el
objetivo de simplificar el diseo del hardware al dejar todo el trabajo de planificar el cdigo
en manos del programador/compilador, en oposicin a un procesador superescalar, en el que
es el hardware en tiempo de ejecucin el que planifica las instrucciones.
3. Defina brevemente el IA-64.
Es la primera familia de procesadores de 64 bits de la empresa itanium de Intel.
IA-64 es distinto a las arquitecturas de x86-32 y x86.
La arquitectura IA-64 est basada en un paralelismo explcito a nivel instruccin, con el
compilador tomando decisiones acerca de qu instrucciones ejecutar en paralelo. Esto
permite al procesador ejecutar hasta seis instrucciones por ciclo de reloj (ver frecuencia de
reloj).
4. Que indicaban los estudios realizados cerca de 1970 por Tjaden y Flynn, adems de los de
Foster y Riseman?
El paralelismo que se puede extraer de un bloque bsico como mucho poda llegar a 1.86 y
1.72 instrucciones por ciclo, teniendo en cuenta los compiladores de la poca; hasta se poda
llegar a tener factores de incremento de velocidad entre 2 y 3 aprovechando ILP, segn
Fisher.
5. Qu es prlogo y el epilogo en segmentacin de software?
Son las diversas instrucciones que se tienen que aadir al cdigo para poder captar el primer
dato antes de poder realizar el bucle (prlogo) y las instrucciones para poder almacenar el
ltimo resultado tras el bucle (eplogo).
6. Cul es el segundo proceso en la planificacin de trazas y en qu consiste?
El segundo proceso en la planificacin de traza es la compresin, esta pretende codificar las
operaciones de la traza con el menor nmero de instrucciones VLIW, para lo cual se ubican

operaciones que constituyen la traza lo antes posible y se empaquetan en el menor nmero


de instrucciones VLIW con el menor nmero de subpalabras vacas, que se ejecuten en el
menor tiempo posible.
7. En qu consisten las operaciones con predicado?
Una operacin con predicado es aquella cuyo resultado modifica o no el destino 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.
8. Cules son los formatos posibles para las operaciones con predicado?

p1 cmp.cnd a, b
p1, p2 cmp.cnd a, b

9. Cules son los factores que limitan la utilidad del uso 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 ejecucin falla.
Si la condicin que debe evaluarse en una instruccin con predicado, no est disponible con la
suficiente antelacin se producirn atascos en el cauce. Cuando el flujo contiene ms de una
alternativa puede resultar complicado el uso de predicados
10. Cules son las estrategias que permiten garantizar el comportamiento frente del
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.
Uso de centinelas.

11. Qu es un centinela y para que se usa?


Un centinela es un cdigo que permite determinar el momento en que la operacin que se
adelant deja de ser especulativa. Se usa para mostrar si se ejecut la operacin que estaba
donde ahora est el centinela.
12. Cmo se realiza la especulacin de acceso a memoria?

La instruccin se sita en la posicin original del LOAD que se ha adelantado al STORE


correspondiente, actuando como centinela.
Cuando se ejecuta el LOAD especulativo, se almacena temporalmente la direccin a la
que se ha accedido.
Las direcciones a la que acceden los STORES que siguen al LOAD especulativo se
comparan con la direccin del LOAD que se ha almacenado.
Si la especulacin ha fallado:
o En el caso de que la especulacin solo afecte al LOAD, se vuelve a ejecutar
cuando llegue al centinela.

Si se han ejecutado otras operaciones que dependen del LOAD, habr que
repetirlas.

13. Qu conceptos estn ligado al aprovechamiento de paralelismo implcito entre


instrucciones y facilitar la decodificacin en la arquitectura IA-64?
Haces de instrucciones. Este se conforma as:

Grupo de instrucciones. Constituido por cualquier nmero de instrucciones que se ejecutan


en paralelo. El compilador indica explcitamente los lmites de grupo situando indicadores
(stops).
14. Cmo se resuelven el problema de los campos sin utilizar (en blanco) en las instrucciones
VLIW, debido a las dependencias, en la arquitectura IA-64?
Este problema se resuelve mediante los bits de marca del haz. Estos bit indican si las tres
instrucciones que conforman al haz se pueden ejecutar en paralelo o si entre alguna de ellas
se debe situar algn carcter de stop para indicar que las operaciones pertenecen a grupos
distintos. Adems, los bits de marca tambin indican en que unidades funcionales se van a
ejecutar las operaciones.
15. En qu etapa del cauce del Itanium 2 se detectan las excepciones?
Se detectan en la etapa denominada DET. Esta es la ltima etapa en que una instruccin
puede detener el cauce antes de escribir sus resultados en los registros de la arquitectura en
la etapa WRB.
16. Cul era el objetivo principal de la compaa TRANSMETA CORPORATION con los
procesadores CRUSOE?
Pretenda alcanzar altas prestaciones( procesador rpido) con un bajo consumo de energa
mediante un proceso de fabricacin CMOS Y Evitar la complejidad del hardware mediante un
software que permita la traduccin dinmica optima de Cdigo x86 al repertorio mquina
propio de los procesadores de Transmeta.

17. Para qu se utiliza el software CODE MORPHING?


La tcnica code morphing permita emular los procesos de los chips de Intel. Este proceso
de emulacin se haca solo la primera vez, y las siguientes se consultara el resultado. Esto
hara del Crusoe un chip potencialmente muy rpido. Como haba emulacin por software, se
necesitaran menos transistores, reduciendo el tamao del Crusoe y el consumo.
18. Caractersticas del procesador CRUSOE de Transmeta?

Dos unidades funcionales para operaciones con enteros.


Una unidad para operaciones de coma flotante.
Una unidad de acceso a memoria (unidad de carga/almacenamiento)
Una unidad de procesamiento de saltos

19. En las mejoras de proceso de nica hebra En qu tipos de procesadores se puede


implementar mejoras?

-En procesadores superescalares


-En procesadores VLIW
-En procesadores superespeculativos

20. De qu forma se hacen mejoras en los multiprocesadores monochip multihebra?


Se utilizan varios procesadores simples en un nico circuito integrado, esto facilita el diseo y
verificacin del chip, adems de funcionar a frecuencias ms elevadas.
21. En qu consiste la lgica de adelantamiento para las mejoras en procesadores
superescalares?
Usando las caches de trazas se almacena secuencias de instrucciones en el orden de ejecucin
dinmica para recuperarlas con mayor rapidez y acelerar el procesamiento.
22. Qu caractersticas comparten los procesadores VLIW con los 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.

23. Cmo est constituida cada palabra de instruccin VLIW?


Cada instruccin VLIW esta constituida por un conjunto de subpalabras o slots, y cada una
de tales subpalabras pueden codificar una operacin.

24. Cmo se realizan las operaciones en cada una de las subpalabras de una instruccin VLIW?

Los tipos de operaciones que pueden codificarse en cada una de las subpalabras de la
instruccin VLIW dependen de las unidades funcionales a las que se puede acceder desde
cada ventana de emisin.

25. Qu dificultades hubieron en los primeros procesadores VLIW?

Los programas incrementan su tamao con respecto a los que utilizaban


repertorios escalares.
Las UFs deben funcionar sincronizadamente.
La falta de compatibilidad.
En la situacin en la que en la que puede aprovechar gran cantidad de paralelismo,
un procesador vectorial es podra ser ms eficaz.

o
o
o
o

26. Qu es un bloque bsico?

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.
27. Cules son las tcnicas bsicas para la reduccin de dependencias?

Desenrollado de bucles (loop unrolling)


Segmentacin software (software pipelining)

28. Qu es la planificacin de trazas?

La planificacin de trazas es una forma de organizar el desplazamiento de cdigo, de


forma que el coste de dicho movimiento recae en el camino menos frecuente. Se trata de
una tcnica adecuada cuando el camino ms favorable se sigue con una frecuencia
suficiente.

29. Cules son los dos procesos para la planificacin de trazas?

Seleccin de traza: se elige una seccin de cdigo sin bucles constituida por una serie
de bloques bsicos denominada traza.
Compresin de traza: pretende codificar las operaciones de la traza con el menor
nmero de instrucciones VLIW.

30. Cmo se expresan las operaciones con predicado?

Un forma tpica de expresar estas operaciones es: <p>operacin, donde el predicado


puede tomar dos valores (1 o 0), de manera que la operacin se realizara si p es igual a 1, y
no se realizara en caso contrario.

31. Cmo se realiza el uso de los bits de veneno?

Si se produce una excepcin, se modifica el BIT de veneno del registro en el que la


operacin especulativa escribe su resultado. Cuando una operacin no especulativa
intenta leer un registro, se comprueba el bit de veneno, si esta activo, se atiende la
excepcin.

32. Describa cuantos niveles de cache contiene el Itanium 2

Contiene caches de niveles L1, L2 y L3


La cache L1 esta separada en dos caches de 16 KBytes.
Las caches L2 y L3 son caches unificadas, con 256 KBytes y 3MBytes, respectivamente.
33. Qu conceptos aparecen en la arquitectura IA-64 ligados al aprovechamiento del
paralelismo?

Los Haces.

Grupo de instrucciones.

34. Qu son los haces?

Cada haz de instrucciones tiene tamao de 128 bits y codifica hasta 3 operaciones, cada
operacin o instruccin dentro del haz se codifica mediante un campo de 41 bits, los cinco
bits sobrantes se utilizan como campo de marca.
35. Describa Grupo de instrucciones

Un grupo de instrucciones puede estar constituido por cualquier nmero de instrucciones


que puedan ejecutarse en paralelo.

36. Qu son los bits de marca?

Indican si las tres operaciones que constituyen el haz se pueden ejecutarse


simultneamente o si entre ellas debe situarse algn carcter de stop para indicar que las
operaciones pertenecen a grupos distintos.

37. En el procesador Itanium 2, Qu es la ALAT?

Es una memoria completamente asociativa con 32 lneas y cuatro puertos que almacena
las direcciones de memoria a las que acceden las instrucciones de carga que se adelantan
y los identificadores de registros que se cargan con los datos de memoria.
38. En los procesadores CRUSOE a que se denomina tomos y molculas?

Molculas: son las palabras de instrucciones VLIW del Crusoe que pueden ser de 64 o
128 bits.

Cada instruccin VLIW contiene cuatro operaciones de tipo RISC que reciben el
nombre de tomos.

39. Qu son los procesadores multihebra simultanea (SMT)?


Procesan instrucciones que pertenecen a varias hebras de control, siendo capaces de
seleccionar, enviar y ejecutar instrucciones de varias hebras que estn activas
simultneamente. Si no hubiera hebras disponibles seria similar a un procesador
superescalar ampliado.

40. Qu son los procesadores multihebra especulativos?

Son procesadores que constan de varios elementos de procesamiento que


cooperativamente son capaces de ejecutar en paralelo un programa dividido en una serie
de hebras divididas especulativamente. La especulacin es el elemento clave de estos
procesadores, ya que si no se utilizase solo se podra dividir los programas en hebras que
deben ejecutarse y son mutuamente independientes.

BALOTARIO CAPITULO 6
1. Cules son las principales caractersticas de las operaciones con vectores?
- En una operacin vectorial, el clculo de cada uno de los componentes del vector es
independiente del clculo de los restantes.
- Una nica instruccin vectorial codifica una gran cantidad de clculos. De esta forma se reduce el
nmero de instrucciones de los programas vectoriales con respecto a los programas que ejecutan
los procesadores escalares.
- Los datos que luego se van a utilizar conjuntamente como componentes de un operador vectorial
se podran ubicar en posiciones contiguas de memoria.
2. Quin fundo CRI y cul fue la primera mquina vectorial disea por CRI?
CRI de las siglas Cray Research Inc. fue fundada por S. Cray, creando la primera mquina vectorial
de CRI conocida como Cray-1 en el ao 1976, siendo una computadora con arquitectura vectorial
registro-registro, donde los datos se cargan desde memoria en registros vectoriales, desde donde
pasan a los causes vectoriales segmentados, cuyos resultados se escriben en registros vectoriales
desde donde se escriben en memoria.
3. Cules son los primeros computadores vectoriales diseados por Fujitsu, Hitachi y NEC?
Fujitsu desarrolla la linea de computadores vectoriales VP100-200 a partir de 1983, y
posteriormente la lnea VP700 (1998) y la VPP5000 (1999). Hitachi introdujo en 1984 el
computador S810, al que rpidamente sigui el S820, para iniciar bastante despus (1998) la lnea
SR8000. En cuanto a NEC, en 1984 presenta el computador vectorial SX/2, al que siguen los
computadores SX/4 (1995), SX/5 (1998), y finalmente los SX/6 (2002) y SX/7.
4. Qu caracterstica con respecto a sus registros tiene un procesador vectorial?

La presencia de un banco de registros vectoriales, en el que cada registro vectorial dispone de


espacio para almacenar los componentes de un operando vectorial. Adems existe una serie de
unidades segmentadas donde se ejecutan operaciones vectoriales.
5. Qu utilizan las instrucciones LVI y SVI de una arquitectura vectorial?

Las instrucciones utilizan dos registros para indicar la ubicacin en memoria de los datos que se
van ha cargar en los componentes de los registros vectoriales (LVI) o donde se van ha almacenar
estos componentes (SVI).

6. Que se consigue con el empaquetamiento?

Se consigue reducir el nmero de instrucciones que se ejecutan y tambin el nmero de riesgos de


control. Asi pues en este punto, el cauce del procesamiento de instrucciones de un procesador
vectorial se puede utilizar con una eficacia considerable.

7. Qu es encadenamiento de cauces?

El encadenamiento permite que un cauce pueda empezar a procesar los resultados que producen
otro cauce a medida que este va terminando de procesar componentes. Por lo tanto el segundo el
segundo cauce no tiene que esperar a que termine el procesamiento del todo el operando
vectorial en el primero de os cauces.

8. Qu es el solapamiento?

El solapamiento de cauces se refiere a la posibilidad de iniciar operaciones vectoriales de cauces


distintos a medida que las instrucciones vectoriales correspondientes se van decodificando. De
esta forma, los cauces solapados pueden ejecutar operaciones distintas concurrentemente.

9. Qu DIFICULTADES SURGEN EN UN PROCESADOR VECTORIAL A LA HORA DE JECUTAR


PROGRAMAS RESPECTO A SU RENDIMIENTO?

SURGE:

Cuando el nmero de componentes que constituyen los vectores es mayor al MLV


(LONGITUD MXIMA DEL VECTOR)
Existen sentencias condicionales en el cuerpo de bucle.
Cuando es necesario acceder la posicin de memoria.
10. DE QUE DEPENDE EL TIEMPO DE PROCESAMIENTO DEL BUCLE CON K ITERACIONES EN
UN PROCESADOR VECTORIAL?
EL TIEMPO DE PROCESAMIENTO DEL BUCLE CON K ITERACIONES EN UN PROCESADOR
VECTORIAL CON REGISTROS VECTORIALES DE MVL COMPONENTES DEPENDE DEL TIEMPO
CONSUMIDO POR LAS OPERACIONES ESCALARES USADAS PARA CONTROLAR EL TROCEADO
(TBASE), DEL TIEMPO ASOCIADO A LAS INSTRUCCIONES QUE CONTROLAN EL FINAL DEL
BUCLE EXTERNO (TBUCLE), DEL NMERO DE TROZOS ([K/MVL]), Y DE LOS VALORES
APARENTES DEL TIEMPO DE LATENCIA DE INICIO (TLI) Y DEL TIEMPO PARA PRODUCIR UN
RESULTADO (TPC) DE LA SECUENCIA DE
INSTRUCCIONES VECTORIALES DEL BUCLE
INTERNO

k
Tk = TBASE +
(TBUCLE + TLI) + k TPC
MVL
k

Tk = TBASE +
1 (TBUCLE + TLI) + MVL TPC + TBUCLE + TLI + (k modMVL ) TPC =

MVL

1 + (k modMVL )
MVL

k
MVL

= TBASE +
(TBUCLE + TLI) + TPC
k
MVL

11. MENCIONE LA ECUACION PARA TIEMPO POR ELEMENTO Y SOBRECARGA POR ELEMENTO

Tiempo por elemento


k
TBASE +
( TBUCLE + TLI )
Tk
MVL

=
+ TPC
k
k
Sobrecarga por elemento
k
TBASE +
( TBUCLE + TLI )
Ok
MVL

=
k
k
12. MENCIONE LAS APLICACIONES DE LOS PROCESADORES VECTORIALES

Los procesadores vectoriales son ampliamente utilizados actualmente en computacin


cientfica (donde se demandan velocidades de cmputo muy elevadas), en aplicaciones
de prediccin (meteorolgica, de terremotos, de dinmica de fludos, etc) as como en
las tarjetas grficas que a su vez estn incluidas en las consolas de videojuegos ms
modernas de hoy en da.
13. Qu es el benchmark Linpack?

Es una de las pruebas mas usadas para medir rendimientos de procesadores


y consiste en calcular un sistema de 100 ecuaciones lineales con 100
incgnitas por el procesamiento matricial de Gauss.
14. Ante una nica instruccin vectorial, cuantas instrucciones escalares se necesitaran?
En una arquitectura escalar, implicara la ejecucin de n instrucciones cuyos resultados seran
los componentes del vector asi como dos instrucciones para controlar el final del bucle
N+2 instrucciones escalares
15. Qu benchmark usa TOP500 para medir a los computadores?
Usa linpack que describe la performance para resolver un problema de matrices generales
densas Ax = b a tres niveles de tamao
16. Por qu el software cumple un papel muy importante en una arquitectura vectorial?
Es importante para la extraccin del paralelismo potencial en una aplicacin para que la
arquitectura pueda aprovecharlo, a diferencia de los procesadores superescalares, la
microarquitectura no extrae el paralelismo, solo aprovecha el explcito en la entrada.
17. Qu etapas tiene un procesador vectorial tipo LOAD/STORE?

Etapa de captacin
Decodificacion
Captacion de regitros

18. Qu caractersticas especficas tiene un procesador vectorial?

Nmero de registros (NRescalar)


Nmero de registros del banco de registros vectoriales (NRvector)
Nmero de componentes cada registro vectorial(MLV)

19. Qu estrategia tenemos para agregar flexibilidad en un procesador vectorial?


Podemos dar la ubicacin de datos en memoria con las instrucciones LVWS, LVI con instr.
almacenamiento SVWS y SVI.
20. Qu informacin almacena el registro VLR?

Contiene el nmero de componentes que intervienen en las operaciones Vectoriales que se


ejecutan. Su mximo valor es MVL
21. Qu informacin almacena el registro VM?
Contiene MVL bits, solo interviene en la operacin si el bit asociado a esta operacin se
encuentra en alto.
22. Qu caracterstica resaltante tiene el procesador vectorial Fujitsu VP100/200?
En este procesador se puede configurar el nmero de registros vectoriales y el tamao de los
mismos, con 8192 registros configurando desde 8 registros.
23. Qu funcin cumple la instruccin CVI?
Crea un registro vectorial de ndices almacenado en cada componente de Vk los valores
0,ri,2*ri,3*ri,,(MLV-1)*ri
24. Qu permiten las instrucciones MOVI2S y MOVS2I?
Permiten cargar el contenido de un registro escalar en el registro VLR y leer el contenido de
VLR en un registro respectivamente. As, con MOVI2S se puede fijar el nmero de
componentes del registro vectorial que se utilizan en el caso de que las operaciones que se
implementan vectorialmente no necesiten todos los MVL componentes de los registros
vectoriales. Mediante MOVS2I se puede determinar y utilizar en el programa el valor que se
ha prefijado para VLR.
25. En que consiste el el concepto de entrelazado de memoria?
El entrelazado de memoria consiste en distribuir el espacio de memoria del procesador entre
distintos mdulos de memoria.
As pues en una direccin de memoria, un conjunto de bits indica el mdulo de memoria en el
que se encontrara esa posicin de memoria y el resto de bits indica la posicin que ocupa la
direccin dentro de este mdulo.
26. Que tipos de entrelazado de memoria existen y explique cada uno de ellos
Existen 2 tipos de entrelazados de memoria:
Entrelazado de orden inferior: Se da si el campo de bits que indican el mdulo
corresponde a los bits menos significativos.
Entrelazado de orden superior: Se da si los bits mas significativos son los que indican
el mdulo de memoria.
27. Explique la organizacin de la memoria tipo S.
Se produce un acceso simultneo a todos los mdulos de memoria utilizando la misma n-m
bits para todos ellos. Una vez que ha transcurrido el tiempo de acceso, Ta de cada mdulo se
habr ledo un dato situado en la misma posicin de cada mdulo. Cada uno de los datos
ledos se almacena en un buffer desde donde se irn extrayendo al aplicar, a las entradas del
multiplexor, cada una de las M combinaciones de los m bits que indican el mdulo de
memoria.

28. En qu consiste la organizacin de memoria de tipo C?


En este tipo de organizacin existe un puerto de lectura/escritura para cada mdulo, de
forma que el controlador de memoria puede enviar al registro de direccin de cada mdulo
los n-m bits que indican la ubicacin de la posicin de memoria a la que se va a acceder es ese
mdulo.
29. De qu depende la velocidad de los procesadores vectoriales?
La velocidad de los procesadores vectoriales no solo radica en el uso eficiente de la
segmentacin de cauce para el aprovechamiento del paralelismo de datos explcito en cada
una de las instrucciones vectoriales, sino precisamente en el uso simultaneo de tales unidades
para ejecutar operaciones vectoriales distintas, codificadas a travs de las correspondientes
instrucciones vectoriales.
30. Cul es la propiedad y la mejora que nos trae al trabajar con procesadores vectoriales?
La ejecucin de una operacin para una componente y otra de distinto componente
vectorial. La mejora es un diseo segmentado eficiente de las unidades funcionales
31. Cul es la diferencia entre solapamiento y encadenamiento?
El solapamiento se da en forma paralela y las componentes no tienen que depender entre s.
En el encadenamiento esta se da en forma secuencial y las componentes tienen que
depender entre s.
32. Cules son las medidas utilizadas para evaluar las prestaciones que ofrecen los
procesadores vectoriales?

Operaciones por unidad de tiempo


Nmero de componentes
Productividad
Eficiencia vectorial

33. En qu consiste la tcnica strip mining o troceado de vector?


Consiste en transformar un bucle en dos bucles anidados donde el bucle interno incluye un
nmero de iteraciones menor o igual que el nmero mximo de componentes de los registros
vectoriales (MVL), y el bucle externo, tantas iteraciones como trozos de tamao MVL (o
menor) se tengan.
34. De qu depende el TPC?
Depende fundamentalmente del hardware que marca las posibilidades de encadenamiento y
encauzamiento de los cauces y el tiempo por etapa de los cauces que se utilizan. Tambin
depende del compilador.
35. Para qu sirve la instruccin LVI?
La instruccin LVI realiza el agrupamiento de los elementos dispersos en memoria
introducindolos en un registro vectorial no disperso que se utiliza para las operaciones
vectoriales posteriores.

36. Para qu se utiliza la instruccin CVI?


Se utiliza para generar registros de ndices en el caso de que los ndices tengan un valor de
salto constante: si el valor de salto es d los ndices seria 0,d,2d,3d,.,(MVL-1)d.
37. Para qu se utiliza la instruccin CVM?
Se utiliza para poner a 1 todos los bits de VM de forma que las instrucciones que siguen se
apliquen a todos los componentes de los registros vectoriales.
38. Por qu la calidad del compilador es importante a la hora de ejecutar un cdigo?
La calidad del compilador tambin es muy importante. Hay compiladores que son capaces
de detectar ms fcilmente cdigo vectorizable que otros. Un compilador con vectorizacion
analiza si las instrucciones situadas dentro de los bucles pueden ser ejecutadas en paralelo
y genera cdigo con instrucciones vectoriales. Mientras el compilador sea capaz de
vectorizar ms el cdigo, el rendimiento mejorara en la misma medida.
39. Defina las caractersticas del procesador vectorial Earth Simulator.

Multicomputador constituido por 640 nodos.


Cada nodo es un multiprocesador SMP con 8 procesadores vectoriales.
Memoria principal de 16 GBytes.
Un procesador de E/S.
Una unidad de control para el acceso remoto.
Ancho de banda de 12.3 GBytes/s para el envo y recepcin de datos.
Memoria principal de cada nodo dividida en 2048 bancos.

40. Describa las prestaciones del Earth Simulator.


Cada procesador tiene una velocidad pico de 8GFLOPS, con lo que cada nodo tendr 64
GFLOPS y el computador completo unos 40 TFLOPS. En una aplicacin de simulacin
atmosfrica global proporciona 25.58 TFLOPS, en un programa de simulacin numrica de
turbulencias alcanza los 16.4 TFLOPS, y en un programa de simulacin de fluidos en tres
dimensiones los 14.9 TFLOPS.

Vous aimerez peut-être aussi