AC2 preguntas.pdf
Document Details
Uploaded by LighterTheme9174
Unpamplona
Tags
Full Transcript
Arquitecturas y Tipos de Computadoras CISC (Complex Instruction Set Computer): Arquitectura de procesador con un conjunto de instrucciones amplio y complejo. RISC (Reduced Instruction Set Computer): Arquitectura de procesador con un conjunto de instrucciones reducido y op...
Arquitecturas y Tipos de Computadoras CISC (Complex Instruction Set Computer): Arquitectura de procesador con un conjunto de instrucciones amplio y complejo. RISC (Reduced Instruction Set Computer): Arquitectura de procesador con un conjunto de instrucciones reducido y optimizado para una ejecución rápida. Diferencias entre CISC y RISC: CISC tiene más instrucciones complejas, mientras que RISC tiene menos instrucciones, más simples y rápidas de ejecutar. Multicomputadoras: Sistemas que consisten en múltiples computadoras independientes conectadas, cada una con su propio procesador y memoria. Multiprocesadores: Sistema con dos o más procesadores que comparten la misma memoria principal y trabajan juntos para ejecutar programas. UMA (Uniform Memory Access): Arquitectura donde todos los procesadores tienen acceso uniforme a la memoria. NUMA (Non-Uniform Memory Access): Arquitectura donde el tiempo de acceso a la memoria depende de la localización de la memoria relativa al procesador. COMA (Cache Only Memory Architecture): Arquitectura donde no hay memoria principal compartida, solo cachés que actúan como memoria principal. Gestión y Acceso a la Memoria Direccionamiento a memoria principal: Método por el cual el procesador accede a las ubicaciones de memoria principal (RAM). Memoria paginada: Sistema de gestión de memoria que divide el espacio de direcciones en bloques de tamaño fijo llamados páginas. Memoria segmentada: Sistema de gestión de memoria que divide el espacio de direcciones en segmentos de diferentes tamaños según la necesidad del programa. Paralelismo y Procesamiento Paralelismo: Ejecución simultánea de varias tareas para aumentar la eficiencia y velocidad del procesamiento. Procesamiento paralelo: Técnica de dividir un problema en partes más pequeñas que se pueden resolver simultáneamente en múltiples procesadores. Necesidades y formas de lograr paralelismo: Requiere descomposición de tareas y sincronización entre procesadores, lograda a través de técnicas como paralelismo de datos y tareas, y uso de algoritmos paralelos. Origen del cómputo paralelo: Surgió de la necesidad de aumentar la capacidad de procesamiento dividiendo tareas complejas en partes más pequeñas que se pueden ejecutar simultáneamente. Equipos masivamente paralelos: Sistemas con un gran número de procesadores que pueden ejecutar muchas tareas en paralelo. Taxonomía Flynn y Shore: Clasificación de arquitecturas de computadoras basada en la cantidad de flujos de instrucciones y datos que pueden manejar simultáneamente. SISD, SIMD, MISD y MIMD: 1. SISD (Single Instruction, Single Data): Un solo procesador ejecuta una única secuencia de instrucciones en un solo flujo de datos. 2. SIMD (Single Instruction, Multiple Data): Un solo procesador ejecuta una única secuencia de instrucciones en múltiples flujos de datos. 3. MISD (Multiple Instruction, Single Data): Múltiples procesadores ejecutan diferentes secuencias de instrucciones en un solo flujo de datos (poco común). 4. MIMD (Multiple Instruction, Multiple Data): Múltiples procesadores ejecutan diferentes secuencias de instrucciones en múltiples flujos de datos. Computación en la Nube y Distribuida Cloud computing: Uso de servidores remotos en internet para almacenar, gestionar y procesar datos, en lugar de utilizar un servidor local o una computadora personal. Clusters: Conjunto de computadoras interconectadas que trabajan juntas como si fueran una sola máquina para aumentar la capacidad de procesamiento y disponibilidad. Grid computing: Uso de una red de computadoras distribuidas para trabajar juntas en la resolución de problemas que requieren gran capacidad de procesamiento. Sistemas distribuidos: Conjunto de computadoras independientes que parecen un sistema único y cohesivo para los usuarios. Conectividad de procesadores entre sistemas distribuidos: Métodos y tecnologías que permiten la comunicación y coordinación entre procesadores en diferentes sistemas. Tecnología y Conectividad IoT (Internet of Things): Red de dispositivos físicos interconectados que pueden comunicarse y compartir datos a través de internet. Función del puente norte y puente sur: En una placa base, el puente norte conecta la CPU a la RAM y a la tarjeta gráfica, mientras que el puente sur maneja las conexiones más lentas como los puertos USB y la red. àPropuesta Ley Andahl 1967: - La ley indica que la parte serial de un programa determina una cita inferior para el tiempo de ejecución, aun cuando se utilicen al máximo técnicas de paralelismo Afirmaciones falsas: x La Ley de Amdahl indica que la parte serial de un programa aumenta el rendimiento del tiempo de ejecución, cuando se utilicen al máximo técnicas de paralelismo. x La Ley de Amdahl indica que la parte paralelizable de un programa determina una cota interior para el tiempo de ejecución, aun cuando se utilicen al máximo técnicas de paralelismo. àMultiprocesadores y multicomputadoras: - Los multiprocesadores son servidores con varios núcleos fuertemente acoplados - Las multicomputadoras emplean un fuerte acoplamiento pero no comparten memoria. Cada una tiene su propia MP y están unidas bajo una red de alta velocidad - Los multiprocesadores pueden estar unidos bajo pasos de mensajes o en un sistema distribuido de área amplia - Los COWS emplean un gran número de dispositivos completos distribuidos en la red. Afirmaciones falsas: x Los multiprocesadores se encuentran distribuidos y unidos por una LAN de alta velocidad. Son los débilmente acoplados. x Los multiprocesadores solo pueden funcionar bajo formato de memoria compartida. Esto es dado a que no pueden operar bajo otro esquema organizacional. à PSEUDOPARALELISMO o PIPELINE - EL PIPELINE utiliza una precarga en cada hardware de la secuencia de captación, ejecución y acceso a memoria, a medida que se van liberando de la instrucción actual. - El pipeline implica paralelismo real, siempre que se trate de multiprocesadores físicos. - EI PIPELINE es en realidad un pseudoparalelismo cuando se trata de una arquitectura con un solo CPU físico. - El pipeline no es paralelismo real. Afirmaciones falsas: x EL PIPELINE aún en un solo CPU logra paralelismo real, dada sus mejoras impuestas en su implementación. x El PIPELINE no vale la pena implementarlo dado que hay que hacer demasiados artilugios y es una gran carga para el Sistema Operativo. àConectividad entre procesadores de sistemas distribuidos: - Los equipos comunicados en GRID computing forman parte del computo paralelo. - Los procesadores pueden estar distribuidos - Cuando menor es la latencia, mayor rendimiento obtenemos en general. - Cuanto mayor cantidad de procesadores tienen un servidor y mayor velocidad de ns. De ciclo, mejor será el rendimiento obtenido en el cómputo paralelo. Afirmaciones falsas: x Todos los procesadores deben estar físicamente bajo la misma red. x Cuanto mayor es la latencia de red, mejor rendimiento obtenemos del sistema distribuido paralelo. àOrigen motivador del cómputo paralelo - La necesidad de permitir realizar procesos dificultosos y cálculos complejos en forma automática. (representar la realidad en todas sus formas) - La necesidad de desarrollar remedios que permitan la cura de enfermedades como cáncer, diseños basados en ADN humano. - La necesidad de procesar grandes volúmenes de datos para dar respuestas a preguntas diversas en poco tiempo (minería de datos, procesos en tiempo real) Afirmaciones falsas: x La creciente necesidad de diseñar edificios modernos y crear ciudades futuristas. (Es falsa ya que existen aplicaciones que permiten estos diseños en programas locales de la PC) x La necesidad de acelerar el microprocesador para ganarle a la competencia y ser los primeros en obtener resultados àParalelismo: - El paralelismo a nivel de bits se logra duplicando la PALABRA de la arquitectura - El paralelismo a nivel de instrucción se conoce como pipeline - El paralelismo a nivel de Instrucción se da cuando se logra precargar la instrucción siguiente., - El paralelismo también se logra a nivel de multihilamiento o multithreading y en redes con procesamiento distribuido, como Grid y Cloud computing Afirmaciones falsas: x El paralelismo se puede lograr a nivel de bits cuando el PIPELINE anticipa con precargas de la siguiente instrucción en cada módulo de HW posible x El paralelismo a nivel de Instrucción se da cuando se logra decodificar cada instrucción en un solo ciclo de reloj de CPU àMedidas relevantes de evaluación para medir el computo paralelo: - El tiempo de ejecución es la medida más utilizada para evaluar el cómputo paralelo. - El tiempo total de la ejecución paralela depende de la complejidad del problema a resolver, de manera que para comparar rendimientos entre diferentes equipos debemos ejecutar los mismos algoritmos. - EL SPEEDUP es una medida de la mejora del rendimiento de una aplicación al aumentar la cantidad de procesadores Afirmaciones falsas: x El tiempo de desempeño es la suma de las latencias x Ampliar el sistema con cierta cantidad de procesadores garantiza una mejora lineal del mismo factor o cantidad àProcesamiento paralelo: - Varios procesos pueden ser colaboradores y parte de la misma solución. - Los recursos de cómputo que ejecutan procesos paralelos pueden encontrarse en un mismo equipo o distribuidos en la red. - En los procesos paralelos varios se están ejecutando en el mismo momento. Afirmaciones falsas: x El cómputo paralelo es aplicable a situaciones simples de programar y asignar a procesadores cooperantes, asegurando un alto rendimiento del sistema que eviten tener que agregar instrucciones NOP, no operation. x Los procesadores deben encontrarse bajo el mismo hardware para poder brindar computo paralelo efectivo. à Ventajas del cómputo paralelo: - Mayor capacidad de proceso y en menor tiempo., - Los procesos paralelos mejoran los costos al integrar HW en equipos compactos con menor gasto de energía y refrigeración o al aprovechar sistemas distribuidos que de otra menara quedarían en desuso. - Los sistemas paralelos permiten la escalabilidad de los recursos. Afirmaciones falsas: x Una ventaja del cómputo paralelo es permitirle al programador administrar el diseño de la topología de red y funcionamiento del HW. x Menor capacidad de procesamiento y menor tiempo en ns. à Software de multicomputadoras: - Los sistemas operativos de multicomputadoras requieren SW especial para que se encargue de la comunicación entre procesos y de la sincronización - Los sistemas operativos de las multicomputadoras utilizan dos primitivas fundamentales SEND y RECEIVE para su comunicación (aunque existen otras más) Afirmaciones falsas: x Los sistemas operativos de las multicomputadoras no requieren SW especial gracias a la comunicación que logran en redes de alta disponibilidad (falso ya que utiliza software especialmente para su administración) àClasificación de arquitectura CISC y RISC - En arquitecturas RISC emplean instrucciones simples y limitadas para reducir los tiempos de ejecución de los procesos - Las arquitecturas CISC codifican sus instrucciones en HW lo que hace que sean mas caras pero mas eficientes Afirmaciones falsas: x Las arquitecturas cisc se provee de un repertorio de instrucciones mínimo, dejando en manos del programador el desarrollo de programas complejos (falso, ya que, por lo contrario, dado su gran repertorio de instrucciones provisto se construyen programas más cortos) x En arquitectura RISC ofrecen un amplio repertorio de instrucciones al programador (falso, es cisc) àClusters de computadoras - El custer computing es una alternativa económica para obtener poder de cómputo real y útil en entornos académicos, industriales y empresariales. - Los clusters emplean computadoras de bajo costo, pudiéndose implementar un cluster hogareño (Son PCs completas interconectadas y administradas con un SO especial) - El cluster, a diferencia del grid computing, comparte recursos locales como si fueran parte del mismo computador. Usualmente de un mismo edificio (El grid tiene una arquitectura distribuida) Afirmaciones falsas: x Los servidores conectados en cluster son utilizados en centros académicos para el procesamiento de satos masivos x Los cluster emplean servidores de alto costo y elevadas prestaciones para garantizar poder real de cómputo. à Función del puente norte (North Bridge) y puente sur (South Bridge) remplazados hoy por el PCH - El PCH es la evolución del puente norte y puente sur, integrándolos en solo elemento HW. (El PCH integra las funcionalidades de lo anteriores puente norte y puente sur) - La función del puente norte era comunicar en un canal de alta velocidad a la MP con la CPU. - La función del puente sur era comunicar a los dispositivos de E/S con la CPU. Afirmaciones falsas: x La función del puente sur era comunicar a la MP con la CPU. x La función del puente norte era comunicar en un canal de alta velocidad a los dispositivos de E/S con la CPU. à Taxonomía de Flynn: - La Taxonomía de Flynn considera la manera de aplicación de las instrucciones con el manejo de los datos., - La Taxonomía de Flynn considera la manera de aplicación de instrucciones Simples o Múltiples con el manejo de los datos también simples o múltiples. - La taxonomía de Flynn no es la única que existe para clasificar los sistemas de cómputos y su funcionamiento. (Existen otras. Vimos por ej. la de Shore que clasifica la manera de utilizar la MP físicamente entre los procesadores utilizados) à Siendo MIMD la clasificación más relevante de la Taxonomía de Flynn identifique los usos comunes de la memoria con respecto a los procesadores, entre las siguientes: - UMA utiliza una memoria centralizada entre las CPUs que intervienen. (uniform memory Access) - NUMA representa el uso diferencial y exclusivo de la MP en cada nodo de CPU. (No uniform memory Access) - Existe una aplicación Hibrida de memoria donde la memoria es Comparitda y Distribuída. (Esta aplicación toma lo mejor y lo peor de cada implementación) Afirmaciones falsas: x NUMA utiliza implementa un uso compartido de la MP entre las CPUs. x UMA utiliza una memoria distribuida donde cada CPU tiene su parte propietaria de MP