Diferencia entre revisiones de «Organización del Computador II»

De Cuba-Wiki
(No se muestran 7 ediciones intermedias de 4 usuarios)
Línea 33: Línea 33:
*[[Manejo del stack (Organización del Computador II)|Manejo del stack (pila)]]: Esquema para la creación de un stack frame.
*[[Manejo del stack (Organización del Computador II)|Manejo del stack (pila)]]: Esquema para la creación de un stack frame.
*[[Ejemplo de FPU (Organización del Computador II)|Ejemplo de FPU]]: Resolución del ejercicio 5 de la práctica de FPU. Nos muestra el manejo de la pila y el uso de las operaciones de la FPU.
*[[Ejemplo de FPU (Organización del Computador II)|Ejemplo de FPU]]: Resolución del ejercicio 5 de la práctica de FPU. Nos muestra el manejo de la pila y el uso de las operaciones de la FPU.
 
*[[Medio:Orga2_resumen_2parcial.pdf| Resumen para el segundo parcial]]: Pequeño resumen de algunos elementos de la segunda parte de la materia para llevar al parcial como apoyo. Hecho para el primer cuatrimestre de 2019.
== IA-64 (Itanium) ==
'''Itanium ya no se da como tema desde que está Furfaro como profesor.'''
 
*[[Itanium for Dummies (Organización del Computador II)| Itanium for Dummies]]: También conocido como ''"No sé nada de Itanium, ¿Cómo empiezo?"''
*[[Ejercicios varios Itanium (Organización del Computador II)| Ejercicios varios Itanium]]: Código assembler de funciones varias realizadas en el laboratorio de Itanium. Incluye sumador y Fibonacci versión iterativa y recursiva.
*[[Rotación de Registros y Software Pipelining (Organización del Computador II)| Rotación de Registros y Software Pipelining]]: Apuntes de clase sobre Rotación de registros con ejercicio de ejemplo, próximamente también Software Pipelining.
*[[SIMD (Organización del Computador II)| SIMD]]: Apuntes de clase del 26/10/2006 sobre el set de instrucciones SIMD de Itanium.
*[[Software pipelining (Organización del Computador II)| Software pipelining]]: Apuntes de clase software pipelining.
*[[Instrucciones de pipelining (Organización del Computador II)| Instrucciones de pipelining]]: Un mismo problema resuelto usando ctop, cexit, wtop y wexit para familiarizarse con estas instrucciones.
*[[Suma de vectores con Software Pipelining (Organización del Computador II)| Suma de vectores con Software Pipelining]]: Un pequeño ejemplo útil para encarar el tema.
*[[Mini-Tutorial de Software Pipelining (Organización del Computador II)| Mini-Tutorial de Software Pipelining]]: Un ejemplo de pipelining optimizando la escritura en el mismo vector que leemos.
*[[Media:sp_basico.pdf|Ejemplo básico de Software Pipelining]]: Anónimo, cortesía de Fer (nadie lo probó, pero esta explicado).
*[[Software pipelining para el TP (Organización del Computador II)| Software pipelining para el TP]]: Ejemplo de cómo tener en cuenta las latencias (la idea es que se use para el TP3).
*[[Arquitectura Itanium (Organización del Computador II)|Arquitectura Itanium]]: Apuntes de las teóricas sobre las características generales de la arquitectura, a complementar con la presentación de la página.


== Parciales ==
== Parciales ==
Línea 116: Línea 102:
*[[Medio:Orga2_2parcial_21-06-18_resuelto.pdf|Parcial del 21/06/18 (resuelto)]]
*[[Medio:Orga2_2parcial_21-06-18_resuelto.pdf|Parcial del 21/06/18 (resuelto)]]
*[[Medio:Orga2_2parcial_15-11-18.pdf|Parcial del 15/11/18 (bastante resuelto)]] [[Medio:Orga2_2parcialbis_15-11-18_resuelto.pdf|bis]]
*[[Medio:Orga2_2parcial_15-11-18.pdf|Parcial del 15/11/18 (bastante resuelto)]] [[Medio:Orga2_2parcialbis_15-11-18_resuelto.pdf|bis]]
*[[Medio:Orga2_2recu_11-7-19_parte1.pdf|Parcial del 11/7/19 resuelto (parte 1)]] [[Medio:Orga2_2parcial_11-7-19_parte2.pdf|(parte 2)]]
*[[Medio:Orga2_2recu_11-07-19_parte1.pdf|Parcial del 11/07/19 resuelto (parte 1)]] [[Medio:Orga2_2parcial_11-07-19_parte2.pdf|(parte 2)]]
*[[Medio:Orga2_2parcial_18-06-19.pdf|Parcial del 18/06/19]]


== Finales ==
== Finales ==
*[[Orga2_final_09-03-18|Final de 09/03/2018]]
*[[Orga2_final_09-03-18|Final de 09/03/2018]]
*[[Orga2_final_06-08-19|Final de 06/08/2019]]
*<s>[[Finales Dic-2006 (Organización del Computador II)| Finales de Diciembre del 2006]]: Finales ya tomados en Diciembre del 2006.</s> (precaución: en 2018 estos temas no se están tomando más)
*<s>[[Finales Dic-2006 (Organización del Computador II)| Finales de Diciembre del 2006]]: Finales ya tomados en Diciembre del 2006.</s> (precaución: en 2018 estos temas no se están tomando más)


Línea 129: Línea 117:


=== Resúmenes ===
=== Resúmenes ===
 
*[[Media:Resumen_orga_2_zamboni.pdf | Resumen de temas y algunos papers]]: La parte de los papers esta mitad en ingles, mitad en castellano, se agreden aportes. Link a la [https://github.com/Gian150/resumenes-uba/tree/master/Orga2 fuente]
*[[Media:Resumen_orga_2_-_Straminsky.pdf | Resumen de microarquitectura y otros temas para el final (Straminsky)]]
*[[Media:Resumen_orga_2_-_Straminsky.pdf | Resumen de microarquitectura y otros temas para el final (Straminsky)]]
*[[Media:Res_orga2.zip | Resumen para el final (no aclara autor)]] : Contiene los latex y el pdf
*[[Media:Res_orga2.zip | Resumen para el final (no aclara autor)]] : Contiene los latex y el pdf
Línea 135: Línea 123:
**Resumen (autoevaluación resuelta) (lbarrios) (disclaimer: no garantizo que las respuestas sean 100% correctas) [https://github.com/lbarrios/orga2-final/blob/master/preguntas-final-resueltas.md Repositorio Github (Markdown)] [[Medio:Orga2_resumen_lbarrios.pdf| [PDF]]]
**Resumen (autoevaluación resuelta) (lbarrios) (disclaimer: no garantizo que las respuestas sean 100% correctas) [https://github.com/lbarrios/orga2-final/blob/master/preguntas-final-resueltas.md Repositorio Github (Markdown)] [[Medio:Orga2_resumen_lbarrios.pdf| [PDF]]]
*[[Media:Resumen_para_el_Final_de_Orga_2.pdf | Un resumen para el final de Orga 2 ]] : con todos los temas. 2 errores conocidos: 1) El pipeline de forwarding puede estar mal por un ciclo de clock 2) en MESI: Mesi usa la linea RFO (NO LA SHARED) cuando un cache que tiene una linea modified tiene que decirle a otro que la quiere leer que espere a que la escriba en memoria
*[[Media:Resumen_para_el_Final_de_Orga_2.pdf | Un resumen para el final de Orga 2 ]] : con todos los temas. 2 errores conocidos: 1) El pipeline de forwarding puede estar mal por un ciclo de clock 2) en MESI: Mesi usa la linea RFO (NO LA SHARED) cuando un cache que tiene una linea modified tiene que decirle a otro que la quiere leer que espere a que la escriba en memoria
*[[Media:Resumen_orga_2_zamboni.pdf | Resumen de temas y algunos papers: La parte de los papers esta mitad en ingles, mitad en castellano, se agreden aportes ]]


=== Videos ===
=== Videos ===
*[http://www.archive.ece.cmu.edu/~ece447/s15/doku.php?id=schedule Carnegie Mellon - Computer Architecture 2015 - Onur Mutlu]: Videos sobre los temas del final ('''MUY''' recomendado). El link también incluye las clases en formato .ppt y .pdf para descargarse. Las clases (o lecturas) importantes son la [https://www.youtube.com/watch?v=CkOPbj5KhP8&index=10&list=PL5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq 9], [https://www.youtube.com/watch?v=NCUDEgLfC_I&index=11&list=PL5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq 10], [https://www.youtube.com/watch?v=nMfbtzWizDA&index=13&list=PL5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq 11] (Habla de ROB), [https://www.youtube.com/watch?v=P-mXr9adbCc&index=14&list=PL5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq 12] (Habla de Tomasulo), [https://www.youtube.com/watch?v=z0EknfZdlIs&index=15&list=PL5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq 13], [https://www.youtube.com/watch?v=AXf_C5qOm8o&index=19&list=PL5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq 17] y [https://www.youtube.com/watch?v=4_Z07m8tf6k&index=20&list=PL5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq 18] (la [https://www.youtube.com/watch?v=JfjT1a0vi4E&index=32&list=PL5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq 29] habla de Snooping Protocols y MESI entre otras cosas).
*[http://www.archive.ece.cmu.edu/~ece447/s15/doku.php?id=schedule Carnegie Mellon - Computer Architecture 2015 - Onur Mutlu]: Videos sobre los temas del final ('''MUY''' recomendado). El link también incluye las clases en formato .ppt y .pdf para descargarse. Las clases (o lecturas) importantes son la [https://www.youtube.com/watch?v=CkOPbj5KhP8&index=10&list=PL5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq 9], [https://www.youtube.com/watch?v=NCUDEgLfC_I&index=11&list=PL5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq 10], [https://www.youtube.com/watch?v=nMfbtzWizDA&index=13&list=PL5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq 11] (Habla de ROB), [https://www.youtube.com/watch?v=P-mXr9adbCc&index=14&list=PL5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq 12] (Habla de Tomasulo), [https://www.youtube.com/watch?v=z0EknfZdlIs&index=15&list=PL5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq 13], [https://www.youtube.com/watch?v=AXf_C5qOm8o&index=19&list=PL5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq 17] y [https://www.youtube.com/watch?v=4_Z07m8tf6k&index=20&list=PL5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq 18] (la [https://youtu.be/JfjT1a0vi4E?t=3922 28] habla de Coherencia de Caché (minuto 1:05:20) y la [https://www.youtube.com/watch?v=JfjT1a0vi4E&index=32&list=PL5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq 29] habla de Snooping Protocols y MESI entre otras cosas).


* Hay un curso de HPCA (High Performance Computer Architecture) que incluye todos los temas que entran en este final. Son videos de muy corta duración cada uno (de 2 a 5 minutos) en donde cada video explica un tema particular de forma autocontenida. A mí me sirvieron mucho, recomiendo darles una oportunidad (como complemento al resto del material)
* Hay un curso de HPCA (High Performance Computer Architecture) que incluye todos los temas que entran en este final. Son videos de muy corta duración cada uno (de 2 a 5 minutos) en donde cada video explica un tema particular de forma autocontenida. A mí me sirvieron mucho, recomiendo darles una oportunidad (como complemento al resto del material)

Revisión del 18:40 6 dic 2019

Organización del Computador II es una materia dedicada al estudio de las arquitecturas IA-32 e IA-64 de Intel. Pertenece al área de Sistemas y, según el Plan de la Carrera, es una materia a ser cursada en Segundo año. Es correlativa de Organización del Computador I, y es requerida para cursar Sistemas Operativos.

Históricamente, esta materia se cursa los Martes y Jueves a la noche.

Contenidos

IA32
  • Operaciones básicas
  • Direccionamiento a memoria
  • Manejo de la pila y convencion C
  • Aritmética de números grandes
  • Strings
  • Vectores y matrices
  • MMX: Multimedia extension
  • FPU: Floating point unit
  • Listas enlazadas

Apuntes

IA-32

Parciales

Primeros parciales


Segundos parciales

Finales

Material para Finales

Recomendación (2018): Los finales de Alejandro Furfaro suelen ser orales (si no hay mucha gente, con más de 10 personas podés esperar que te tome escrito). Los orales duran 15-20 minutos y hace preguntas de microarquitectura: específicamente sobre coherencia de caché (protocolo MESI por ejemplo), predicción de saltos, y ejecución fuera de orden (algoritmo de Tomasulo). También suele tomar aplicaciones prácticas (microarquitectura P6, Netburst, HyperThreading, Pentium 4-M, Intel Core).

Empezar viendo los videos, luego completar información con las clases de Microarquitectura de Furfi, y recién ahí leer los papers que esperan leas para el final.

Resúmenes

Videos

  • Carnegie Mellon - Computer Architecture 2015 - Onur Mutlu: Videos sobre los temas del final (MUY recomendado). El link también incluye las clases en formato .ppt y .pdf para descargarse. Las clases (o lecturas) importantes son la 9, 10, 11 (Habla de ROB), 12 (Habla de Tomasulo), 13, 17 y 18 (la 28 habla de Coherencia de Caché (minuto 1:05:20) y la 29 habla de Snooping Protocols y MESI entre otras cosas).
  • Hay un curso de HPCA (High Performance Computer Architecture) que incluye todos los temas que entran en este final. Son videos de muy corta duración cada uno (de 2 a 5 minutos) en donde cada video explica un tema particular de forma autocontenida. A mí me sirvieron mucho, recomiendo darles una oportunidad (como complemento al resto del material)

Papers

Estos son los papers que se espera que se lean:


Material extra

Bibliografía / Temas

  • Computer Architecture. A quantitative approach. Henessy & Patterson. Ed. Morgan Kaufman : Muy buen libro aunque se zarpa un poco con el alcance. Los capítulos son el 2 y el 4, y el apéndice A.
  • Temas para las fechas de final de Diciembre del 2006: Temas dados por Patricia para el final de Diciembre del 2006 y detalles sobre la bibliografía. (precaución: en 2018 estos temas no se están tomando más)

Recursos

Enlaces externos