introducciÓn a partir de 1950 despega el crecimiento de la industria de las computadoras. ahora con...

Post on 24-Jan-2016

217 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

INTRODUCCIÓN

A partir de 1950 despega el crecimiento de la industria de las computadoras.

Ahora con unos cuantos miles de dolares se puede adquirir una máquina que en los 50 costaba alrededor del millón de dólares.

INTRODUCCIÓN

Las mejoras de la tecnología y las mejoras en los diseños de la arquitectura de Computadoras es lo que ha marcado la diferencia.

Al principio el crecimiento de eta área se debió a ambas fuerzas.

INTRODUCCIÓN

Luego, las mejoras en la tecnología, sobretodo de los circuitos integrados es lo que marca la pauta a los diseñadores de computadoras.

INTRODUCCIÓN

En todas las líneas de computadoras, -supercomputadoras, grandes computadoras, minicomputadoras y microcomputadoras -, la velocidad de crecimientos de las grandes computadoras es la que más se debe a la tecnología.

INTRODUCCIÓN

La mayoría de mejoras de organización y arquitectura se implementaron primero en estas máquinas (o también llamados mainframes).

INTRODUCCIÓN

Las supercomputadoras a crecido gracias a ambas fuerzas.

INTRODUCCIÓN

Los avances de los minicomputadores ha incluido formas innovadoras de implementar arquitecturas, así como la adopción de las técnicas de las grandes computadoras.

INTRODUCCIÓN

Las microcomputadoras deben su crecimiento vertiginoso a que se basaron en la tecnología de los circuitos integrados.

INTRODUCCIÓN

Las microcomputadoras deben su crecimiento vertiginoso a que se basaron en la tecnología de los circuitos integrados.

INTRODUCCIÓN

Dos cambios significativos en el mercado de computadoras han hecho más fácil el éxito comercial de las nuevas arquitecturas:

Eliminación virtual de la programación en lenguaje ensamblador.

INTRODUCCIÓN

La creación de sistemas operativos estandarizados, lo que ha reducido el costo y riesgo de lanzar al mercado una nueva tecnología.

INTRODUCCIÓN

Comenzando en 1985, la industria de las computadoras vió un nuevo estilo de arquitectura aprovechando esta oportunidad e iniciando un periodo en el cual el rendimiento ha aumentado a una velocidad mucho más rápida.

INTRODUCCIÓN

Al aunar los avances de la tecnología de circuitos integrados, las mejoras en la tecnología de compiladores y las nuevas ideas arquitectónicas , los disseñadores pudieron crear una serie de máquinas que mejoraban en el rendimiento en un factor de casi 2, cada año.

DEFINICIONES DE RENDIMIENTO

Cuando se dice que un computador en más rápido que otro, que se quiere decir.

Cuando se ejecuta un programa en menos tiempo.

Cuando completa más tareas en un intervalo de tiempo

DEFINICIONES DE RENDIMIENTO

Cuando se reduce el tiempo de respuesta (tiempo transcurrido entre el comienzo y fin de un evento), también llamado tiempo de ejecución o de latencia.

DEFINICIONES DE RENDIMIENTO

Todas son válidas, y están relacionadas a la productividad y al rendimiento como tal.

DEFINICIONES DE RENDIMIENTO

¿La siguientes mejoras en rendimiento incrementan la productividad, hacen disminuir el tiempo de respuesta, o ambas cosas?

DEFINICIONES DE RENDIMIENTO

1. Ciclo de reloj más rápido.

2. Múltiples procesadores para tareas separadas.

3. Procesamiento paralelo de problemas científicos.

DEFINICIONES DE RENDIMIENTO

La disminución del tiempo de respuesta, habitualmente, mejora la productividad. Por consiguiente, 1 y 3 mejoran el tiempo de respuesta y la productividad. En dos, ninguna tarea funciona más rápida, por tanto solo incrementa la productividad.

DEFINICIONES DE RENDIMIENTO

Cuando se comparan alternativas de diseño, con frecuencia, queremos relacionar el rendimiento de dos máquinas diferentes, por ejemplo X y Y.

DEFINICIONES DE RENDIMIENTO

Si decimos de X es más rápida que Y, se interpreta que el tiempo de ejecución de X es menor comparado con el tiempo de ejecución de Y.

DEFINICIONES DE RENDIMIENTO

En particular si decimos X es n por 100 más rápido que Y, significa que:

1001

n

XEjecucióndeTiempo

YEjecucióndeTiempo

DEFINICIONES DE RENDIMIENTO

Y como el tiempo de ejecución es recíproco al rendimiento:

1001

dimRe

dimRe n

Yienton

Xienton

RENDIMIENTO

Por ejemplo, si la máquina A ejecuta un programa en diez segundos y la máquina B ejecuta el mismo programa en quince segundos, ¿cuál de las siguientes sentencias es verdadera?

A es el 50 por 100 más rápida que B A es el 33 por 100 más rápida que B

RENDIMIENTO

El rendimiento y el tiempo de ejecución son recíprocos, incrementar el rendimiento hace decrecer el tiempo de ejecución.

Productividad se maneja igual que el tiempo de latencia???

Principio cuantitativos del diseño de computadoras

Acelerar el caso comúnEl principio más importante en

el diseño de computadoras es el acelerar el caso común: al realizar un diseño favorecer al caso más frecuente sobre el infrecuente.

Principio cuantitativos del diseño de computadoras

Este principio también se aplica cuando se determina como emplear recursos, ya que el impacto de hacer alguna ocurrencia más rápida es mucho mayor si la ocurrencia es frecuente.

Principio cuantitativos del diseño de computadoras

Ley de Amdahl

La Ley de Amdahl establece que la mejora obtenida en el rendimiento al utilizar algún modo de ejecución más rápido está limitada por la fracción de tiempo que se pueda utilizar ese modo más rápido.

Principio cuantitativos del diseño de computadoras

La Ley de Amdahl define la ganancia de rendimiento o aceleración que puede lograrse al utilizar una característica particular.

Principio cuantitativos del diseño de computadoras

mejoralautilizandotarealadeejecucióndeTiempo

mejoralautilizartarealadeejecucióndeTiempo

ientondenAceleració

sin

dimRe

nuevoejecucióndeTiempo

antiguoejecucióndeTiempo

ientondenAceleració dimRe

Principio cuantitativos del diseño de computadoras

MejoradanAceleració

MejoradaFracciónMejoradaFracción

antiguoEjecucióndeTiemponuevoEjecucióndeTiempo

1

MejoradanAceleracióMejoradaFracción

MejoradaFracción

nuevoEjecucióndeTiempo

antiguoEjecucióndeTiempoGlobalnAceleració

1

1

Principio cuantitativos del diseño de computadoras

Por ejemplo, suponer que estamos considerando una mejora que corra diez veces más rápida que la máquina original, pero solo es utilizable el 40 por 100 del tiempo. ¿Cuál es la aceleración global lograda al incorporar la mejora?

Principio cuantitativos del diseño de computadoras

Fracción Mejorada = 0.40Aceleración Mejorada = 10

56.1

104.0

4.01

1

GlobalnAceleració

Ejercicios en Clases

Principio cuantitativos del diseño de computadoras

La propiedad más importante proveniente de los programas es la localidad de referencia: los programas tiendes a reutilizar los datos e instrucciones que han utilizado recientemente.

Localidad de referencia

Una regla empírica es que un programa emplea el 90 por 100 de su tiempo de ejecución en solo el 10 por 100 del código. Una implicación de la localidad es que, basándose en el pasado reciente del programa, se puede predecir con una precisión razonable qué instrucciones y datos utilizará un programa en el futuro próximo.

Localidad de referencia

La localidad temporal especifica que los elementos accedidos recientemente, probablemente serán accedidos en eun futuro próximo.

Localidad de referencia

La localidad espacial establece que los elementos cuyas direcciones son próximas tienden a ser referenciados juntos en el tiempo.

Localidad de referencia

La localidad espacial establece que los elementos cuyas direcciones son próximas tienden a ser referenciados juntos en el tiempo.

Localidad de referencia

Un arquitecto de computadoras diseña máquinas para ejecutar programas.

La tarea de diseñar incluyen:

Diseño del repertorio de instrucciones.

La organización funcional. El diseño lógico. La implementación.

FUNCIONES DEL DISEÑO DE COMPUTADORAS

La implementación puede incluir:

Diseño de circuitos integrados.

Encapsulamiento. Potencia. Disipación térmica.

FUNCIONES DEL DISEÑO DE COMPUTADORAS

La implementación de una máquina tiene dos componentes: organización y hardware.

Organización: sistema de memoria, estructura del bus y diseño interno de la CPU.

FUNCIONES DEL DISEÑO DE COMPUTADORAS

Hardware: diseño lógico y tecnología de encapsulamiento en la máquina.

FUNCIONES DEL DISEÑO DE COMPUTADORAS

Requerimientos funcionales

Conceptos que van ligados con los conceptos de rendimiento y precios.

Los requerimientos funcionales pueden ser características específicas inspiradas en el mercado.

FUNCIONES DEL DISEÑO DE COMPUTADORAS

El software de aplicaciones conduce, con frecuencia, a la elección de ciertos requerimientos funcionales, al determinar como se utilizará la máquina.

FUNCIONES DEL DISEÑO DE COMPUTADORAS

FUNCIONES DEL DISEÑO DE COMPUTADORAS

Requerimientos funcionales Características típicas requeridas o soportadas

Área de Aplicación1. Propósito especial

2. Propósito general

3. Científica

4. Comercial

Objetivo del computador1. Rendimiento más alto

para aplicaciones específicas.

2. Rendimiento equilibrado para un rango de tareas.

3. Punto flotante de alto rendimiento.

4. Soporte para lenguaje de programación, base de datos y otros.

FUNCIONES DEL DISEÑO DE COMPUTADORAS

Requerimientos funcionales Características típicas requeridas o soportadas

Nivel de compatibilidad Software

1. En lenguaje de programación.

2. Código objeto o binario compatible.

Determina la cantidad de Software existente

1. Nuevos compiladores.

2. La arquitectura está completamente definida.

FUNCIONES DEL DISEÑO DE COMPUTADORAS

Requerimientos funcionales Características típicas requeridas o soportadas

Requerimientos del sistema operativo.

1. Tamaño del espacio de direcciones.

2. Gestión de memoria.

3. Protección.

4. Cambio de contexto.

5. Interrupciones y traps.

Características necesarias para soportar el SO escogido.

1. Características muy importante.

2. Requerida por SO modernos, puede ser plana, paginada, segmentada.

3. Diferentes SO y necesidades de aplicación: protección de páginas frente a protección de segmentos.

4. Requerido para interrumpir y recomenzar un programa; el rendimiento varía.

5. Tipo de soporte impactan sobre el diseño de HW y SO.

FUNCIONES DEL DISEÑO DE COMPUTADORAS

Requerimientos funcionales Características típicas requeridas o soportadas

Estándares

1. Punto flotante.2. Bus de E/S.

3. Sistemas operativos.

4. Redes.

5. Lenguajes de Programación.

Ciertos estándares pueden ser requeridos por el mercado.

1. Formato y aritmética: IEEE, DEC, IBM.

2. Para dispositivos de E/S: VME, SCSI

3. UNIX, DOS o patente del vendedor.

4. Soporte requerido para distintas redes: Ethernet, FDDI.

5. Lenguajes afectan al reportorio de instruciones.

Axioma básico de hardware:

“Mientras más pequeño más rápido”

Este axioma se cumple sobretodo en la memoria.

JERAQUÍA DE MEMORIA

1. En las máquinas de alta velocidad la propagación de la señal es causa importante de retardo; las memorias más grandes tienen más retardo de señal, por ende necesitan más niveles para decodificar las direcciones.

JERAQUÍA DE MEMORIA

2. Porque el diseñador puede usar más potencia por por celda de memoria.

JERAQUÍA DE MEMORIA

Incrementar el ancho de banda de la memoria y decrementar la latencia de acceso a memoria son cruciales para el rendimiento del sistema.

JERAQUÍA DE MEMORIA

Esto se logra juntando varios conceptos vistos:

Mientras más pequeño más rápido.

El principio de localidad de referencia.

JERAQUÍA DE MEMORIA

Por ello se tratará de encontrar elementos recientemente accedidos em la memoria más rápida.

JERAQUÍA DE MEMORIA

JERAQUÍA DE MEMORIA

Registros

CPU

caché

Memoria

Dispositivo E/S

Referencia registro

Bus de memoria

Referencia caché

Referencia memoria

Bus de E/S

Referencia memoria de

disco

Niveles de Jerarquía típica de memoria

top related