option
Cuestiones
ayuda
daypo
buscar.php
TEST BORRADO, QUIZÁS LE INTERESE: 2º parcial AC UJA
COMENTARIOS ESTADÍSTICAS RÉCORDS
REALIZAR TEST
Título del Test:
2º parcial AC UJA

Descripción:
Recoge cuestiones de diapositivas y de algunos exámenes

Autor:
Chispas
OTROS TESTS DEL AUTOR


Fecha de Creación:
11/12/2023

Categoría: Informática

Número Preguntas: 269
COMPARTE EL TEST
COMENTARNuevo Comentario
No hay ningún comentario sobre este test.
Temario:
Los procesadores secuenciales procesan únicamente una instrucción a la vez, lo que lleva a disminuir el número de ciclos requeridos para ejecutar todo el programa. V F.
Los procesadores segmentados definen un único cauce con varias etapas que permiten iniciar el procesamiento de una instrucción antes de que la instrucción actual haya sido completamente procesada. V F.
Para aumentar el rendimiento del procesador se puede aumentar la velocidad del reloj, aumentar la profundidad del pipeline y diseñar un procesador superescalar. V F.
La emisión de instrucciones se refiere al proceso en el cual una unidad de procesamiento toma instrucciones de un flujo de instrucciones y las coloca en su etapa final de ejecución en el pipeline. V F.
La arquitectura superescalar se refiere a una implementación capaz de procesar múltiples instrucciones en un solo ciclo de reloj. Esto se logra mediante el uso de múltiples cauces, lo que permite que varias instrucciones comiencen su ejecución de manera independiente. Se emplean múltiples unidades funcionales que pueden ejecutar instrucciones en paralelo y de manera independiente. V F.
Los procesadores superescalares tienen la capacidad de emitir, decodificar, ejecutar y completar varias instrucciones en cada ciclo de reloj, lo que los hace ideales para aumentar el rendimiento. V F.
Hay 2 modelos de procesadores superescalares diferentes: -Cauce totalmente independiente. -Cauce donde cada etapa procesa una instrucción. V F.
En un procesador superescalar, el orden de captación y decodificación se puede alterar, sin embargo la emisión para la ejecución y la escritura en memoria/registros puede ser ordenada o desordenada. V F.
Dentro de la planificación de la emisión de múltiples instrucciones: -La emisión múltiple estática recae en el software (compilador). -El compilador agrupa las instrucciones que deben emitirse juntas. -Las empaqueta en "paquetes de transmisión". -El compilador detecta y evita peligros/riesgos. V F.
Dentro de la planificación de la emisión de múltiples instrucciones: -La emisión múltiple dinámica recae en el hardware. -La CPU examina el flujo de instrucciones y elige las instrucciones que emitirá en cada ciclo. -El compilador puede ayudar reordenando las instrucciones. -La CPU resuelve los peligros mediante técnicas avanzadas. V F.
En la planificación estática, la arquitectura VLIW es un tipo de arquitectura de procesador que se diseñó para permitir la ejecución de múltiples instrucciones en paralelo. V F.
En la planificación dinámica se incluyen estos componentes esenciales: -Cola de instrucciones. -Ventana de instrucciones. -Buffer de reordenamiento (ROB). -Pipeline más profundo. V F.
En la planificación dinámica, la CPU superescalar tiene la capacidad de ejecutar instrucciones de forma ordenada. V F.
En la planificación dinámica, aunque no siempre se elimina por completo la necesidad de intervención del compilador, la CPU asume un papel fundamental en garantizar la semántica correcta del código, facilitando así el proceso de ejecución de instrucciones V F.
La planificación dinámica ofrece estas ventajas: -Mejor explotación del paralelismo de instrucciones. -Adaptación a condiciones en tiempo real. -Optimización de caché. -Ejecución de instrucciones especulativas. V F.
Los problemas relacionados con la emisión múltiple se solucionan mediante técnicas de especulación y predicción. V F.
No se puede realizar la ejecución en paralelo de instrucciones de forma indiscriminada, ya que existen ciertas limitaciones a las que la arquitectura tiene que enfrentarse. V F.
Las limitaciones más importantes del paralelismo son: -Dependencia de datos verdadera. -Dependencia relativas a saltos incondicionales. -Conflictos con los recursos. -Riesgo de tipo WAR y WAW. V F.
Se produce una dependencia verdadera de datos entre dos instrucciones cuando una instrucción no se puede ejecutar hasta que finalice la ejecución de la otra, ya que el operando destino de la primera es operando origen de la segunda. V F.
Un conflicto en un recurso se da cuando dos o más instrucciones requieren el mismo recurso, al mismo tiempo. V F.
Un riesgo WAW ocurre cuando una instrucción intenta escribir en un registro antes de que otra instrucción haya terminado de leer ese mismo registro. V F.
Un riesgo WAR ocurre cuando dos instrucciones intentan escribir en el mismo registro en un orden incorrecto, es decir, una instrucción intenta escribir en un registro después de que otra instrucción haya escrito en el mismo registro. V F.
El paralelismo a nivel de instrucción de un programa depende de la frecuencia con que ocurren las dependencias verdaderas de datos y las dependencias relativas a los saltos condicionales que haya en el programa. V F.
El paralelismo de la máquina es una medida de la capacidad del procesador para sacar partido del paralelismo a nivel de instrucciones. V F.
Se denomina grado de paralelismo al número mínimo de instrucciones que se pueden procesar en paralelo en una máquina. V F.
El paralelismo a nivel de programa que es el número de instrucciones independientes que se pueden procesar en paralelo. V F.
Un programa que tenga un bajo nivel de paralelismo (es decir, una gran cantidad de dependencias entre sus instrucciones) podrá sacar el máximo partido de una máquina con un alto grado de paralelismo, quedando infrautilizada dicha máquina. V F.
Se denomina emisión de instrucciones al proceso de iniciar la ejecución de instrucciones en las unidades funcionales, es decir, el ciclo antes de iniciar la primera etapa ID. V F.
Se denomina política de emisión de instrucciones al protocolo utilizado para emitir instrucciones V F.
La captación y la decodificación siempre se realizan en el orden del flujo del programa. V F.
Respecto a las políticas de emisión de instrucciones, son importantes 3 ordenaciones: -El orden en que se emiten las instrucciones. -El orden en que se completa la ejecución de las instrucciones. -El orden en que las instrucciones actualizan los contenidos de registros y posiciones de memoria. V F.
Una instrucción se considerará finalizada cuando termina su ejecución en la unidad funcional. V F.
Una instrucción se habrá completado (escritura) cuando se hayan modificado los valores del banco de registros o en memoria si es un almacenamiento. V F.
El procesador no puede alterar cualquiera de los órdenes con respecto al orden que tendrían secuencialmente. La única restricción es que el resultado debe ser correcto. V F.
La emisión en orden y escritura en orden es la política de emisión de instrucciones más sencilla. V F.
La finalización desordenada implica que puede haber cualquier número de instrucciones en la etapa de ejecución en un instante dado, hasta alcanzar el mínimo grado de paralelismo de la máquina (todas las unidades funcionales ocupadas). V F.
La emisión de instrucciones se detiene temporalmente cuando: -Hay un conflicto por un recurso. -Surge una dependencia de datos. -Hay una dependencia relativa a los saltos condicionales (si no hubiera predicción de saltos). V F.
La emisión en desorden tiene una seria limitación, el procesador decodifica instrucciones hasta que aparece una dependencia o conflicto. A partir de dicho punto no se decodificarán más instrucciones hasta que se resuelva dicho conflicto. V F.
Para permitir la emisión desordenada es necesario desacoplar las etapas del cauce de decodificación y ejecución. V F.
En la emisión desordenada: -Si el buffer es una ventana general se denomina estación de reserva. -Si el buffer es una ventana asociada a una unidad funcional (UF) específica se denomina ventana de instrucciones. V F.
Cuando una unidad funcional queda disponible en la etapa de ejecución se puede emitir una instrucción desde la ventana de instrucciones o estación de reserva a dicha unidad funcional, siempre que tenga los operando disponibles. V F.
En la emisión desordenada, podrá emitirse cualquier instrucción que: -Pueda utilizar la unidad funcional (UF) que está disponible. -Tenga los operandos disponibles. V F.
En la emisión desordenada, en el caso de que dos o más instrucciones tenga a la misma vez la UF disponible y los operandos disponibles, se le dará prioridad a aquella o aquellas instrucciones que se han captado en último lugar. V F.
El procesador tiene capacidad de anticipación, examinando las siguientes instrucciones del código para identificar instrucciones independientes que puedan ser ejecutadas. Esta capacidad será mayor cuanto mayor sea el tamaño de la ventana de instrucciones V F.
Las instrucciones se emiten desde la ventana de instrucciones/estación de reserva sin tener en cuenta el orden de las instrucciones en el programa. V F.
El hecho de permitir la emisión desordenada de instrucciones y la finalización desordenada puede originar riesgos WAR y riesgos WAW. V F.
Las dependencias WAR y WAR, por otra parte, son verdaderas dependencias. V F.
Para evitar este tipo de riesgos es necesario que las instrucciones se completen (modificado los valores del banco de registros o de memoria si es un almacenamiento) de manera ordenada. V F.
Los procesadores superescalares, al permitir la emisión de instrucciones fuera de orden, suelen implementar una consistencia de procesador fuerte y una consistencia de memoria débil. V F.
La consistencia de procesador fuerte asegura que las instrucciones se completen en el orden correcto y se escriban en el banco de registros en el mismo orden en el que se emitieron, lo que evita conflictos y problemas de dependencia entre instrucciones. V F.
La consistencia de memoria débil permite que las operaciones de lectura y escritura en memoria ocurran en un orden diferente al de emisión de instrucciones, lo que aumenta la eficiencia al ejecutarse de manera paralela V F.
Los riesgos WAR y WAW son realmente conflictos de almacenamiento. Son un tipo de conflicto por los recursos en el que varias instrucciones compiten por los mismos registros. V F.
Un método para resolver los riegos WAR y WAW es el renombramiento de registros. V F.
En la técnica de renombrado de registros cuando se ejecuta una instrucción, donde su operando destino es un registro, se le asigna un nuevo registro físico para almacenar el resultado, y las instrucciones posteriores que accedan a ese valor como operando fuente en ese registro, tienen que atravesar un proceso de renombramiento, donde se revisan las referencias a registros, para que definitivamente hagan referencia al registro físico que contiene el valor que se necesita. V F.
En la técnica de renombrado de registros diferentes instrucciones que tienen referencias a un único registro de la arquitectura (registro físico), pueden referirse a diferentes registros reales (registros lógicos), con valores diferentes. V F.
El renombrado de registros se puede implementar mediante: -Software (renombramiento estático): el compilador introduce variables auxiliares. -Hardware (renombramiento dinámico): se utilizan bancos de registros y hardware de control. V F.
En los buffer de renombrado (ROB) se introducen unos bits de validez que indican si el contenido de un registro es válido o si va a ser sobrescrito. V F.
El ROB es una estructura de datos que permite guardar datos de varios registros que han sido renombrados. Se puede adelantar la lectura fuera de orden de valores sin necesidad de escribir en el banco desordenadamente. V F.
Las celdas vacías en el ROB representan valores nulos, lo que significa que esos espacios contienen bits que representan valores. V F.
La estación de reserva es una estructura de datos donde cada línea contiene información de una instrucción que ha sido decodificada y está esperando para captar los operandos y ser emitida, es decir, enviada a la Unidad Funcional (UF). V F.
Las instrucciones se retiran/completan de manera ordenada manteniendo la consistencia fuerte del procesador. V F.
Las instrucciones se introducen en el ROB en orden de programa estricto y se retiran en el mismo orden. V F.
Se considera una instrucción retirada cuando consideramos que la instrucción ha terminado y la damos por concluida, volcando, si es necesario, el valor del registro renombrado al banco de registros. V F.
En un procesador superescalar se pueden retirar más de un instrucción por ciclo. El número de instrucciones a retirar lo determina la arquitectura. V F.
La consistencia en el banco de registro se mantiene porque solo las instrucciones que se retiran del ROB se completan y se retiran en el orden estricto de programa. V F.
La emisión múltiple (multiple-issue) consiste en: -Replicar estados del cauce que implica múltiples cauces. -Inicia múltiples instrucciones por ciclo de reloj. -CPI < 1: múltiples instrucciones completadas por ciclo de reloj. -Podemos utilizar la variable IPC (instrucciones por ciclo). -Múltiples unidades de ejecución ejecutan instrucciones en paralelo. -Cada unidad de ejecución tiene varios pipelines. V F.
La ejecución dinámica "fuera de orden" (out-of-order) reordena las instrucciones dinámicamente en el hardware para reducir el impacto de los peligros. V F.
El objetivo de la taxonomía de Flynn es una clasificación de las arquitecturas de procesador según el número de flujos de instrucciones y de datos. V F.
Los procesadores SIMD son los que se ajustan a la arquitectura Von Neumann y que procesan instrucciones asociadas a un dato de tipo escalar. V F.
Dentro de los procesadores SISD, los procesadores escalares, con cauce segmentado o no, entran en esta categoría, al captar una sola instrucción que actúa sobre un dato. V F.
Los procesadores superescalares son SISD. V F.
Los procesadores SIMD tienen capacidad para ejecutar una misma operación sobre múltiples datos de manera simultánea, sin necesidad de bucles. V F.
Hay distintos tipos de implementación para el procesamiento paralelo de datos: -Procesadores vectoriales. -Procesadores con extensiones SIMD. -Procesadores con paralelismo masivo de datos (GPU). V F.
Paralelismo: la mayoría de operaciones entre vectores no tienen dependencias de datos entre elementos, por lo que pueden ejecutarse en paralelo, ya sea con múltiples unidades funcionales (SIMD) o en un cauce segmentado (vectorial). V F.
Cuello de botella de Flynn: al operar sobre múltiples datos con una sola instrucción, sin requerir bucles, se evitan los riesgos de control origen del conocido como cuello de botella de Flynn. V F.
Anchura de banda: se incrementa en el bus de instrucciones pero se reduce en el bus de datos. Las instrucciones vectoriales presentan patrones de acceso muy predecibles, en posiciones secuenciales, por lo que resulta fácil optimizarlas. La latencia inicial se ve compensada por la transferencia del vector completo, en contraposición a accesos a datos individuales. V F.
SIMD: replica las unidades de cálculo (ALU), sin necesidad de replicar las unidades de control, de forma que una sola instrucción se aplica sobre múltiples datos en paralelo. V F.
Vectorial: cauce segmentado profundo que hace posible operar sobre múltiples datos en paralelo con una sola unidad de cálculo (o un número limitado de ellas) siempre y cuando no haya dependencias entre datos. V F.
Los procesadores vectoriales son procesadores con registros y unidades funcionales (UF) específicas para operar sobre vectores de elementos de forma paralela, denominados durante años supercomputadores. V F.
Los procesadores vectoriales incorporan registros vectoriales y cuentan con un conjunto de configuración de los vectores sobre los que operan, así como unidades funcionales (UF) sobre los que operan y con UF segmentadas profundas (deep pipelining). V F.
Los procesadores vectoriales operan en conjuntos de datos (vectores) con un número variable de elementos y de tamaño por elemento (tipo). V F.
Unidad escalar: es la que ya conocemos, con cauce segmentado simple o superescalar. Se caracteriza por un conjunto de registros cada uno de los cuales almacena un solo valor, ya sea un número entero o en punto flotante. V F.
Unidad vectorial: es la que nos interesa estudiar en este apartado para conocer la estructura del banco de registros vectoriales y el funcionamiento tanto de la unidad de control como del cauce con segmentación profunda. V F.
Las características de los registros vectoriales son: -Contamos con un banco de registros vectoriales, similar al de los registros escalares, con un número de registros variable según el procesador concreto. -Diferenciar entre el tamaño total del registro y el tamaño de elemento. V F.
En la unidad de control vectorial, la unidad de control (UC) tiene un diseño específico: gestiona el paralelismo a nivel de instrucción y gestiona el paralelismo a nivel de datos. V F.
En la unidad de control vectorial, además de los riesgos de datos, la UC cuenta con registros internos para controlar la operación de las unidades vectoriales. V F.
En la unidad de control vectorial, la UC ha de verificar que la operación es posible, (datos correctamente alineados y no han de existir dependencias entre elementos). V F.
En la disposición lógica, las instrucciones de carga y almacenamiento de registros vectoriales no son análogas a las escalares, con aspectos específicos. V F.
La memoria entrelazada se usa para acelerar la transferencia de múltiples elementos. V F.
El entrelazamiento de orden bajo usa los bits de mayor peso de la dirección. V F.
En la memoria entrelazada el almacenamiento de resultados puede enmascararse. V F.
En las unidades funcionales vectoriales, hay unidades específicas para cada tipo de operación en lugar de una sola ALU de propósito general. V F.
Las unidades funcionales vectoriales están muy segmentadas, lo cual les permite operar en paralelo sobre múltiples elementos de datos de un vector. V F.
Las unidades funcionales vectoriales permiten efectuar múltiples operaciones consecutivas sobre los registros. V F.
El encadenamiento de operaciones reduce el número de espera, pero no mejora el rendimiento. V F.
Los procesadores SIMD son procesadores con registros de mayor tamaño que permiten almacenar paquetes de datos y operar sobre ellos de manera conjunta. V F.
En la arquitectura de los procesadores SIMD, el paralelismo viene dado por la operación de las unidades funcionales (UF) sobre todos los datos almacenados en los registros (packed SIMD), en lugar de por la segmentación profunda de dichas unidades. V F.
En los procesadores SIMD, el tamaño de los vectores sobre los que pueden operar es fijo (ya que no existen registros de control para establecer su longitud). V F.
En los procesadores SIMD, el tamaño de los datos empaquetados en los registros viene codificado en las instrucciones. V F.
Las extensiones SIMD surgieron para la arquitectura x64. V F.
Las extensiones SIMD en la actualidad, se usan para arquitecturas ARM o RISC-V. V F.
El banco de registros SIMD tiene un tamaño variable, según la versión de las extensiones con que cuente el procesador. V F.
Un procesador vectorial es más flexible que uno SIMD, y puede procesar vectores de tamaño y estructura arbitrarios. V F.
Las cargas y almacenamientos de un procesador vectorial han de realizarse por completo antes de poder operar. V F.
Con procesadores SIMD los vectores han de estar necesariamente almacenados en posiciones de memoria consecutivas. V F.
El tipo y tamaño de los operandos en un registro SIMD están codificados en la propia instrucción. V F.
Los procesadores GPU tienen un alto grado de paralelismo para ejecutar operaciones complejas a fin de acelerar el cauce de procesamiento de gráficos. V F.
En los procesadores GPU, cada Computing Units (CU) capta una instrucción y la emite a todos sus núcleos, que la ejecutan cada uno de ellos sobre un dato distinto según un modelo SIMT. V F.
En la arquitectura GPU, el número de hilos gestionados por un Symmetric Multiprocessor (SM) es habitualmente mucho mayor que el de núcleos disponibles. V F.
En la arquitectura GPU el multiprocesamiento masivo compensa la latencia del acceso a memoria. V F.
CUESTIONES CLAVES TEMA 5: -¿En qué consiste el paralelismo de datos? Implica dividir una tarea en sub-tareas más pequeñas y realizar esas sub-tareas al mismo tiempo utilizando múltiples recursos de procesamiento. Este enfoque se utiliza comúnmente en situaciones donde se tienen grandes cantidades de datos que pueden procesarse en paralelo, lo que resulta en un rendimiento mejorado. -¿Cuál es la diferencia entre paralelismo de datos y de instrucciones? La diferencia fundamental radica en qué nivel se está realizando la ejecución simultánea. El paralelismo de datos se centra en operaciones sobre conjuntos de datos, mientras que el paralelismo de instrucciones se centra en la ejecución simultánea de instrucciones individuales. Ambos conceptos pueden coexistir y utilizarse de manera complementaria para mejorar el rendimiento en sistemas de cómputo. -¿Cómo trabaja un procesador vectorial con segmentación profunda? Este diseño permite que el procesador realice eficientemente operaciones en grandes conjuntos de datos al mismo tiempo que aprovecha el paralelismo de la segmentación profunda para mejorar la velocidad de ejecución de instrucciones individuales. Este tipo de arquitectura es común en procesadores especializados para tareas como el procesamiento gráfico (GPU) y ciertas aplicaciones científicas o de simulación. -¿En qué se basan las extensiones packed SIMD de los procesadores modernos? Se basan en la arquitectura SIMD para proporcionar un conjunto de instrucciones y registros diseñados específicamente para operar eficientemente en datos empaquetados, permitiendo así un procesamiento paralelo y eficiente de conjuntos de datos. -¿Cuáles son las ideas básicas sobre el funcionamiento de las GPU? Las GPU son dispositivos altamente especializados diseñados para procesar gráficos y realizar operaciones en paralelo en grandes conjuntos de datos. Su arquitectura y capacidades se han expandido para abordar una variedad de aplicaciones más allá de los gráficos, convirtiéndolas en herramientas poderosas para tareas de computación de propósito general. -¿Cómo se tratan los datos en cada una de las arquitecturas descritas? (escalar, vectorial, SIMD y GPU) Mientras que las arquitecturas escalares y vectoriales se centran en el procesamiento de datos uno a la vez o en paralelo en conjuntos de datos pequeños, las arquitecturas SIMD y GPU están diseñadas para manejar grandes conjuntos de datos en paralelo, pero con enfoques ligeramente diferentes en términos de instrucciones y flexibilidad. Cada tipo de arquitectura tiene sus fortalezas y debilidades, y la elección depende de las características específicas de la aplicación que se esté ejecutando. V F.
La CPU precisa traer a su cauce de ejecución las instrucciones del programa, así como leer y escribir desde la memoria RAM los datos sobre los que debe operar. V F.
En la interacción CPU<-->RAM, en el mismo ciclo de reloj pueden precisarse múltiples accesos de lectura y/o escritura en memoria (escritura en flanco de subida y lectura en el de bajada). V F.
Los procesadores segmentados incrementan la demanda de accesos a memoria, de forma que existen varios en cada ciclo de reloj. V F.
Una arquitectura superescalar precisa captar varias instrucciones por ciclo y ejecutar múltiples accesos a datos. V F.
Una CPU moderna opera a una velocidad varios órdenes de magnitud más baja que la memoria RAM estándar, por lo que esta se convierte en un cuello de botella. V F.
La lectura/escritura en el banco de registros es inmediata (<1 ciclo), mientras que el tiempo de espera desde que se emite una orden de lectura/escritura hasta que la memoria RAM responde es > 100 ciclos (según CPU y su frecuencia). V F.
Un acceso a memoria provocaría que la CPU detuviese el cauce de ejecución durante un tiempo muy significativo, de forma que las mejoras de la segmentación y arquitectura superescalar pasarían desapercibidas. V F.
La memoria caché reduce la latencia y evita las detenciones. V F.
En la arquitectura de un computador existen diferentes niveles de memoria, cuyas características cambian según su situación respecto al procesador. V F.
Características de cada tipo de memoria: -Registros: internos al procesador, poca capacidad, alta velocidad. -Caché L1: cercana al procesador, más capacidad que los registros, casi igual de rápida. -Caché L2/L3: menos cercanía a la CPU, mayor tamaño que la L1 pero más lenta. -RAM: externa al procesador, mucha más capacidad pero menor velocidad. Comunicación por bus rápido dedicado. -Almacenamiento: discos sólidos/mecánicos, gran tamaño pero muy lentos en comparación. Comunicación por un bus lento genérico. V F.
La separación en cachés de instrucciones y datos no se realiza. V F.
Tanto la memoria RAM como las cachés L2 y L3 se ajustan a la arquitectura Von Neumann, con una estructura unificada que almacena tanto el programa como los datos sobre los que este opera. V F.
Cuando el contenido de la memoria RAM se lleva a la caché L1 se separan instrucciones y datos, dando lugar a una arquitectura Harvard más eficiente. V F.
La caché L1 de instrucciones es de solo lectura y los patrones de acceso son fácilmente predecibles. V F.
La caché L1 de datos es de lectura y escritura, con patrones de acceso menos predecibles. V F.
La memoria caché puede almacenar una fracción del contenido de la memoria principal, por lo que se precisa una estrategia que maximice el rendimiento y evite todos los accesos posibles a la RAM. V F.
Según cómo se organicen los bloques y planos dispondremos de diferentes tipos de memoria caché, con un funcionamiento específico. V F.
Correspondencia directa de memoria caché: se asigna a cada bloque de la memoria RAM una correspondencia directa con uno de los bloques de la caché. Ofrece la menor latencia, pero es poco flexible. V F.
Completamente asociativa de memoria caché: consiste en tener tantos planos como permita el tamaño de la caché y realizar una búsqueda basándose en las etiquetas de los bloques. Ofrece la mayor flexibilidad, pero también tiene la mayor latencia. V F.
Asociativa por conjuntos de memoria caché: combina características de los dos tipos anteriores para alcanzar un equilibro entre latencia y flexibilidad. V F.
En la caché de correspondencia directa, encontrar el bloque de caché que corresponde a una cierta dirección de memoria es inmediato, la latencia es mínima (positivo). V F.
En la caché de correspondencia directa, el mecanismo de caché es sencillo de implementar en hardware, pero muy sensible a los patrones de acceso a memoria por parte de los programas. V F.
En la caché de correspondencia directa, cada bloque de RAM se asocia de forma directa con uno de caché según la fórmula s = m % n, siendo % el módulo de división entera. V F.
En la caché de completamente asociativa, la caché se estructura en n planos y hay un único bloque por plano. V F.
En la caché de completamente asociativa, cualquier bloque de RAM no se puede llevar a cualquiera de los planos del bloque de caché. V F.
En la caché de completamente asociativa, determinar el plano donde está el bloque que corresponde a una dirección requiere múltiples comparaciones, la latencia es mayor(negativo) V F.
En la caché de completamente asociativa, no habrá sustituciones continuas de entradas si se accede a varios bloques de RAM de forma repetitiva sin que importe su disposición (positivo). V F.
En la caché de completamente asociativa, se requiere una heurística de reemplazo para determinar, cuando todos los planos de la caché están ocupados y hay que traer un nuevo bloque desde RAM, qué bloque es el que se descarta. V F.
En la caché de completamente asociativa por conjuntos, la caché se estructura en n bloques y p planos. V F.
En la caché de completamente asociativa, cada bloque de RAM puede llevarse a cualquiera de los planos del bloque que le corresponda. V F.
En la caché de completamente asociativa por conjuntos, la latencia es mayor que en la caché de correspondencia directa, pero no tan alta como en la completamente asociativa. V F.
En la caché de completamente asociativa por conjuntos, un cierto número de bloques de RAM a los que correspondería el mismo bloque pueden coexistir en la caché, sin necesidad de reemplazo, lo que es más flexible que en correspondencia directa. V F.
En la caché de completamente asociativa por conjuntos, aúna lo mejor de los dos tipos de caché previos (caché completamente asociativa y caché de correspondencia directa). V F.
El acceso de la CPU a la memoria ya no es directo. Requiere unos pasos previos para determinar si el dato solicitado está disponible en caché o no. V F.
Cuando se precisa un dato que no está en caché, se trae desde memoria RAM un bloque completo que sustituye a uno de los existentes en caché. V F.
Estrategias de reemplazo de memoria RAM a caché: -Directa: se sustituye el bloque que corresponda (según la dirección de acceso). -Aleatoria: se toma un bloque aleatorio para copiar en él el nuevo bloque. -LRU (Least Recently Used): se sustituye el que hace más tiempo que no se ha usado. -Otras: FIFO (First In First Out), que sustituye el bloque más antiguo, LFU (Least Frequenfly Used), que sustituye el que se usa con menos frecuencia. V F.
Al escribir un dato en memoria no es preciso determinar cómo se preservará la coherencia entre los diferentes niveles de caché y la RAM. V F.
Estrategias de escritura: -Inmediata (write through): se efectúa tanto en caché como en RAM (coherencia). -Demorada (write back): se marca el bloque con el indicador Dirty. Este denota que si el bloque se sustituye por otro antes hay que llevar cambios a la RAM. -En escritura (write allocate): si afecta a una dirección que no está en caché, el bloque puede ser traído desde RAM a caché antes o escribir en RAM sin esa sustitución. V F.
Al acceder a un dato desde la CPU, la dirección puede corresponder a un bloque válido que esté en caché (acierto) o a uno que haya que traer desde RAM (fallo). V F.
El acceso a un dato en caché requiere un tiempo muy inferior al del acceso a memoria principal, algo que es preciso medir de forma objetiva V F.
Mejorar la tasa de aciertos implica reducir proporcionalmente el tiempo de acceso medio a memoria y, por tanto, mejorar el rendimiento, por lo que nos interesa conocer los factores que afectarían a esa ratio. V F.
Factores a considerar para maximizar la ratio de aciertos: -Tamaño de la caché: en general, la ratio de aciertos se verá incrementada a medida que también lo haga la cantidad de caché disponible. -Configuración de la caché: el tamaño de bloque, número de bloques, nivel de asociatividad, estrategia de reemplazo y de escritura tienen también una influencia significativa en la ratio de aciertos. -Patrones de acceso a memoria: asimismo, los patrones que sigan los programas al hacer referencia a posiciones de memoria determinarán en buena medida que haya más aciertos o fallos, con independencia de los dos factores previos. V F.
La tecnología SRAM con la que se fabrica la memoria caché ocupa mucho más espacio que la DRAM, lo que implica sacrificar un área para esta tarea que podría servir para incluir más unidades de ejecución u otros elementos. V F.
La fabricación de DRAM resulta mucho más cara que la de memoria SRAM estándar, estimándose un factor de 100 a 1 por unidad de memoria. V F.
Cuanto mayor es un bloque de caché menor es el número de fallos en el acceso a direcciones consecutivas de memoria, pero se incrementa el tiempo preciso para traer un bloque desde RAM. V F.
Una memoria asociativa por conjuntos puede llegar a ser tan efectiva como una completamente asociativa, pero con una menor latencia de búsqueda. V F.
En general, técnicas de reemplazo como LRU ofrecen una menor ratio de aciertos que otras más básicas como la aleatoria. V F.
La escritura demorada, con sustitución de bloques que no estén ya en caché, suele tener un menor rendimiento que otras opciones. V F.
La mayoría de programas acceden a datos que se alojan en posiciones consecutivas de memoria, por lo que una vez que un bloque está en caché el número de aciertos será mayor. V F.
Analizar la ejecución del código, para identificar los patrones de acceso y verificar que se respeten los dos principios anteriores, es preciso para garantizar un buen uso de la memoria caché. V F.
CUESTIONES CLAVE TEMA 6: -¿Qué finalidad tiene la memoria caché en la arquitectura de un computador? Mejorar el rendimiento del sistema al reducir el tiempo de acceso a datos y programas que se utilizan con frecuencia. -¿Cuál es el impacto en el rendimiento que tiene la memoria caché? Tiene un impacto significativo en el rendimiento de un sistema informático. Su presencia ayuda a reducir los tiempos de acceso a datos e instrucciones, mejorando así la eficiencia y velocidad de la CPU. -¿Cuáles son los diferentes niveles de caché existentes? La memoria caché se organiza en diferentes niveles, conocidos como niveles de caché (L1, L2, L3, etc.). Cada nivel tiene características específicas en términos de tamaño, velocidad y proximidad a la unidad central de procesamiento (CPU). -¿En qué se diferencian los tipos de caché según su asociatividad? La asociatividad en el diseño de la memoria caché se refiere a la forma en que se mapean las líneas de caché a bloques de memoria principal. Existen tres tipos comunes de asociatividad: caché totalmente asociativa, caché asociativa por conjunto y caché directa. -¿Cómo operan las estrategias de reemplazo y escritura básicas? FIFO, LIFO, LRU, aleatorio. Write-through, Write-back, Write-allocate. -¿Cómo se calculan las ratios de acierto y fallos para evaluar las mejoras? Las tasas de acierto y fallos en la memoria caché son medidas clave para evaluar su eficacia y rendimiento. Estas métricas proporcionan información sobre la eficiencia con la que la caché está siendo utilizada. -¿Qué impacto tienen los patrones de acceso a memoria en la caché? Tienen un impacto significativo en el rendimiento de la caché. La forma en que los datos se acceden y utilizan en un programa puede afectar la eficiencia de la caché y, por lo tanto, el rendimiento general del sistema. V F.
El sistema de Entrada/Salida (E/S), conocido en inglés como I/O (Input y Output), constituye una pieza fundamental que facilita la interacción entre la computadora y el mundo exterior. V F.
El sistema de Entrada/Salida (E/S) constituye la infraestructura esencial que permite la interacción fluida para el intercambio de información entre los dispositivos de entrada/salida y la CPU en un sistema informático. V F.
El sistema de Entrada/Salida (E/S) comprende múltiples componentes como controladores, buses de datos, puertos y protocolos de comunicación que facilitan la conexión entre el usuario y la computadora. V F.
Los controladores funcionan como intermediarios entre los dispositivos de entrada/salida y el sistema operativo, permitiendo una transmisión eficiente de datos en el formato apropiado. V F.
Este conjunto de elementos del sistema de E/S juega un papel esencial al posibilitar una interacción efectiva y unidireccional entre el usuario y el ordenador. V F.
El sistema de Entrada/Salida (E/S) opera de manera independiente a una memoria, e incluso cuenta con su propio controlador de memoria o MMU. V F.
Los sistemas de entrada y salida constan de 4 componentes: -Controlador de E/S: intermediario entre el hardware de E/S y el SO. -Host o controlador de bus: establece la conexión física entre el dispositivo periférico y el bus de datos. -Bus de datos o medio de transferencia: conjunto de cables y líneas de comunicación que conectan el procesador central, la memoria y los dispositivos periféricos. -Dispositivos periféricos: componentes externos que se conectan a la computadora. V F.
El método de sondeo en el sistema E/S es una técnica empleada para verificar el estado de los dispositivos periféricos en un sistema informático (el procesador lleva a cabo una vigilancia continua de los periféricos). V F.
En el polling o sondeo, si el dispositivo periférico no está listo, puede enviar una respuesta negativa al controlador de E/S, indicando que no puede realizar la transferencia en ese instante. Ante esta respuesta, el controlador puede repetir el proceso de sondeo periódicamente hasta que obtenga una respuesta afirmativa, asegurando así una gestión eficiente de la entrada y salida de datos. V F.
El polling requiere recursos de procesamiento y existe la posibilidad de retrasos en la transferencia de datos. V F.
En un sistema de E/S, una interrupción o IRQ (Interruption Request) constituye una señal o solicitud de interrupción que un dispositivo periférico envía al procesador central para indicar que requiere atención. V F.
Cada dispositivo periférico tiene asignado un número específico de IRQ. V F.
Por lo general, se reserva las IRQ más bajas para los dispositivos periféricos de mayor prioridad, mientras que los dispositivos con menor prioridad se asignan a IRQ más altas. V F.
Cuando se recibe una señal de interrupción a través de una IRQ, el procesador guarda el estado actual de la tarea en ejecución y salta a una rutina de servicio de interrupción (ISR o Interrupt Service Routine). V F.
Las interrupciones presentan posibles conflictos o una penalización en el rendimiento de la CPU al asumir estas tareas. V F.
El sistema de Acceso Directo a Memoria, o DMA (Direct Memory Access), representa una técnica empleada en sistemas de E/S con el propósito de permitir que los dispositivos periféricos operen pero con la intervención constante de la CPU. V F.
En contraste con enfoques anteriores como el polling o las IRQs, que implican la intervención activa del procesador, el DMA implementa un controlador DMA especializado. V F.
El funcionamiento del sistema DMA sigue el siguiente proceso: configuración, inicio de la transferencia, transferencia de datos y finalización de la transferencia. V F.
El controlador DMA presenta diversas ventajas: reducción de la carga del procesador, menor latencia y mayor flexibilidad. V F.
CUESTIONES CLAVE TEMA 7: -¿Cuál es el papel fundamental del sistema de Entrada/Salida (E/S) y cómo afectaría su ausencia en el funcionamiento general del sistema? Su función principal es gestionar la comunicación entre el sistema y los dispositivos periféricos, como teclados, ratones, discos duros, impresoras, y otros dispositivos de entrada/salida. Si están en ausencia, habría: incapacidad de interactuar con dispositivos periféricos, ausencia de mecanismos de comunicación asíncrona, falta de control de errores y resiliencia, limitaciones en la transferencia de datos eficiente y falta de abstracción de dispositivos. -¿Cuáles son los componentes principales de un sistema E/S? Controlador de E/S, Host o controlador de bus, bus de datos o medio de transferencia y dispositivos periféricos. -¿Qué tipos de periféricos existen? Dispositivos de entrada, dispositivos de salida y dispositivos de entrada/salida. -¿Cuáles son los métodos de gestión del sistema E/S? Polling (sondeo), IRQs y DMA. V F.
En la velocidad de la máquina influye el tiempo de acceso a memoria. V F.
Dentro del concepto de arquitectura de un computador no se incluyen los procedimientos cuantitativos y cualitativos para la evaluación de computadoras. V F.
El paralelismo a nivel de programa se puede explotar a nivel de arquitectura. V F.
Las instrucciones de tipo aritmético-lógicas acceden a memoria. V F.
Un riesgo estructural se produce cuando una instrucción no ha terminado de calcular un dato que otra instrucción posterior necesita. V F.
En un procesador segmentado DLX, las siguientes instrucciones no producen detención si existen caminos de bypass: LW R1, 45 (R2); ADD R5, R6, R7; SUB R8, R1, R7; OR R9, R6, R7. V F.
Una interrupción precisa permite garantizar que, después de una interrupción no catastrófica, el proceso interrumpido continúe correctamente. V F.
En un procesador superescalar, el orden de captación y decodificación es inalterable. V F.
En un buffer de renombrado ROB, cuando el bit de valor válido está a 1, el bit de último también se encuentra a 1. V F.
En predicción dinámica implícita, se almacena la dirección de la instrucción que se ejecutó después de la instrucción de salto en cuestión. V F.
En una máquina vectorial con registros, salvo la carga y el almacenamiento, el resto de operaciones se realizan con registros. V F.
En un máquina vectorial, si los bits que indican el módulo son los menos significativos, se habla de entrelazado de orden inferior. V F.
El número de ciclos por instrucción influye directamente en el tiempo de CPU de un programa. V F.
La captación introduce las instrucciones en una estructura de datos llamada ventana de instrucciones. V F.
En la predicción dinámica implícita se almacena la dirección de la instrucción que se ejecutó después de la instrucción de salto en cuestión. V F.
El buffer de renombrado (ROB) de tipo asociativo permite varias escrituras pendientes sobre el mismo registro. V F.
El salto retardado es una técnica útil en los procesadores superescalares. V F.
Los procesadores vectoriales sustituyen todos los registros estándar escalares por un nuevo conjunto de registros vectoriales. V F.
En VLIW, la decisión sobre qué operaciones se pueden ejecutar de forma paralela recae directamente en el compilador. V F.
Los procesadores vectoriales explotan especialmente el paralelismo funcional. V F.
La propiedad de conectividad hace referencia a la capacidad de encontrar caminos alternativos entre un origen y un destino debido a la presencia de alteraciones en la red. V F.
Los multiprocesadores de tipo UMA tienen un tiempo de acceso a memoria unificado. V F.
La frecuencia de reloj no influye en el tiempo de CPU. V F.
La planificación en trazas es un mecanismo de optimización en los procesadores vectoriales. V F.
Una de las ventajas de los procesadores vectoriales es que se reducen los riesgos de control. V F.
En un procesador vectorial, el entrelazado consiste en distribuir el espacio de memoria del procesador entre distintos módulos de memoria que pueden ser accedidos de forma paralela. V F.
En los multicomputadores no es necesario el uso de monitores ni otros mecanismos de sincronización, ya que el paso de mensajes lo hace por sí mismo. V F.
La arquitectura MIMD de tipo COMA (caché Only Memory Access) es de tipo UMA (Uniform Memory Access). V F.
Los protocolos de coherencia de caché permiten que cada escritura en un bloque sea visible para las demás cachés. V F.
En el encadenamiento en MIMD, Starvation (muerte por inanición) se produce cuando un paquete solicita un recurso y nunca se lo dan. V F.
La técnica de reordenado de código requiere software adicional, igual que el adelantamiento. V F.
En los procesadores superescalares los datos se pasan por caminos de bypass. V F.
La longitud de palabra es la cantidad de información que podemos leer en un ciclo de reloj. V F.
Los MFLOPS representan la medida de rendimiento de millones de operaciones con enteros por segundo. V F.
El desarrollo de compiladores para los niveles superiores depende de la arquitectura concreta de los elementos hardware del computador. V F.
La localidad es un factor determinante para la mejora de prestaciones de las arquitecturas de computadores. V F.
La segmentación incrementa el rendimiento aumentando la productividad, en lugar de reducir el tiempo de ejecución de cada instrucción individual. V F.
Las instrucciones abortadas en un procesador segmentado son debidos a los riesgos de control. V F.
En Predicción Fija "Siempre no Tomado", se guarda el estado de procesamiento actual (PC) y se empieza la ejecución a partir de la dirección de salto. V F.
El Nivel de Especulación indica hasta qué etapa se ejecutan las instrucciones que siguen en un camino especulativo después de un salto. V F.
Los procesadores vectoriales explotan especialmente el paralelismo funcional. V F.
En VLIW, un bloque básico es un trozo de código al que se accede mediante una instrucción de salto a la primera instrucción del bloque y en el que pueden existir instrucciones de salto en él. V F.
En un procesador vectorial con entrelazado superior, los bits más significativos indican el módulo y el resto la posición dentro del módulo. V F.
En la predicción dinámica implícita, se almacena la dirección de la instrucción que se ejecutó después de la instrucción de salto en cuestión. V F.
El buffer de renombrado (ROB) de tipo asociativo, permite varias escrituras pendientes sobre el mismo registro. V F.
Los procesadores vectoriales sustituyen todos los registros estándar escalares por un nuevo conjunto de registros vectoriales. V F.
Dentro del concepto de arquitectura de un computador no se incluyen los procedimientos cuantitativos y cualitativos para la evaluación de los computadores. V F.
El paralelismo funcional a nivel de programa se puede explotar a nivel de arquitectura. V F.
Las instrucciones de tipo aritmético-lógicas acceden a memoria en su procesamiento. V F.
Un procesador vectorial puede manejar un banco de registros no vectoriales. V F.
En un buffer de renombrado (ROB), cuando el bit de valor válido está a 1, el bit de último también se encuentra a 1. V F.
En una predicción dinámica implícita, se almacena la dirección de la instrucción que se ejecutó después de la instrucción de salto en cuestión. V F.
En un procesador VLIW, se pueden procesar varias operaciones al mismo tiempo. V F.
En una máquina vectorial, si los bits que indican el módulo son los menos significativos, se habla de entrelazado de orden inferior. V F.
En computadores con paralelismo externos, varios procesadores paralelos pueden trabajar en la ejecución de un mismo programa. V F.
Los modos de direccionamiento pueden reducir significativamente el número de instrucciones de un programa. V F.
En un cauce lineal no existen latencias prohibidas. V F.
LDR es un registro intermedio donde se almacena el dato leído de memoria en una carga en la etapa WB. V F.
En el ROB, el valor del bit de flush indica que la instrucción puede actualizar los registros. V F.
En el ROB, siempre que el bit de último sea 1, el bit válido será 1. V F.
Grado de Especulación representa hasta qué etapa se ejecutan las instrucciones que siguen en un camino especulativo después de un salto. V F.
En el tiempo de procesamiento de CPU de un programa, incluye el número de instrucciones del programa. V F.
Dentro del concepto de arquitectura de un computador, se incluyen los procedimientos cuantitativos y cualitativos para la evaluación de los computadores. V F.
Las instrucciones de tipo aritmético-lógicas acceden a memoria en su procesamiento. V F.
Un procesador vectorial explota el paralelismo de datos. V F.
En un procesador superescalar, el orden de captación y decodificación es alterable. V F.
En predicción dinámica implícita se almacena la dirección de la instrucción que se ejecutó después de la instrucción de salto en cuestión. V F.
Tanto los procesadores superescalares como los de VLIW pueden ejecutar varias operaciones en el mismo ciclo. V F.
La planificación que realizan los procesadores superescalares es dinámica y la de los VLIW es estática. V F.
Las prestaciones y el coste de un computador entran en el ámbito del campo "Arquitectura de Computadores". V F.
El nivel de "Sistemas de Computador" de un computador, dentro de los 7 niveles, se encuentra dentro de la capa de arquitectura. V F.
El paralelismo a nivel de bucle se puede explotar a nivel de sistema operativo y de arquitectura. V F.
Los modelos de simulación de benchemarks se utilizan en fases muy tempranas de diseño para realizar estimaciones generales del rendimiento. V F.
En una instrucción de direccionamiento, la ALU suma los operandos para formar la dirección efectiva y se carga el DMAR. V F.
En la segmentación no lineal, las etapas no se ejecutan en orden secuencial. V F.
La latencia óptima en las unidades funcionales es 1. V F.
En el ROB, las instrucciones pueden estar marcadas como emitidas, en ejecución o finalizada su ejecución. V F.
Grado de Especulación representa el número de Instrucciones de Salto Condicional sucesivas que pueden ejecutarse especulativamente. V F.
En la arquitectura de Von Neumann, la memoria principal intercambia con la ALU instrucciones de manera bidireccional. V F.
La ALU opera bajo las señales de la Unidad de Control. V F.
El bus de datos transmite los datos entre la memoria el procesador. V F.
La velocidad del procesador no depende de la frecuencia de reloj. V F.
MFLOPS representa los Millones de operaciones en coma flotante por minuto. V F.
En un buffer de renombrado ROB, cuando el bit de valor válido está a 1, el bit de último también se encuentra a 1. V F.
En una instrucción de carga, la dirección efectiva para acceder a memoria se calcula en la etapa MEM. V F.
Tanto los procesadores superescalares como los de VLIW pueden ejecutar varias operaciones en le mismo ciclo. V F.
Las interrupciones internas-error (A): se pueden implementar de forma imprecisa en la mayoría de los casos, ya que le programa interrumpido no suele poder continuar. V F.
Denunciar Test