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

De Cuba-Wiki
(Agrega recuperatorio del primer parcial del 03/07/2014)
Sin resumen de edición
(No se muestran 39 ediciones intermedias de 16 usuarios)
Línea 19: Línea 19:
*[[Apuntes primer parcial 03/10/2006 (Organización del Computador II)| Apuntes primer parcial 03/10/2006]]: Clase del 03/10/2006 de Emilio Platzer con tips para el primer parcial.
*[[Apuntes primer parcial 03/10/2006 (Organización del Computador II)| Apuntes primer parcial 03/10/2006]]: Clase del 03/10/2006 de Emilio Platzer con tips para el primer parcial.
*[[Apuntes segundo parcial 14/11/2006 (Organización del Computador II)| Apuntes segundo parcial 14/11/2006]]: Clase del 14/11/2006 de Emilio Platzer con tips para el segundo parcial. Temas: FPU y Listas.
*[[Apuntes segundo parcial 14/11/2006 (Organización del Computador II)| Apuntes segundo parcial 14/11/2006]]: Clase del 14/11/2006 de Emilio Platzer con tips para el segundo parcial. Temas: FPU y Listas.
*[https://docs.google.com/document/d/1G0Tnyp8jiwzN_cUHSDlw0IWKemfbwaV5N3zG2M8jQOk/edit#heading=h.pw1o7wj3m89b Apunte condensado de consulta para el segundo parcial.]
*[[Medio:resumen_2p_orga2.pdf| Apuntes segundo parcial 2do cuatri 2017: System Programming]]
*[[Medio:resumen_2p_orga2.pdf| Apuntes segundo parcial 2do cuatri 2017: System Programming]]
*[[Glosario de términos técnicos (Organización del Computador II)|Glosario de términos técnicos de la materia]]
*[[Glosario de términos técnicos (Organización del Computador II)|Glosario de términos técnicos de la materia]]
*[[Media:Resumen_Instrucciones_IA-32.pdf|Resumen de Instrucciones de IA-32]]: Resumen hecho a partir de extractos los manuales de Intel [Volumen 2] (2009).
*[[Media:Resumen_Instrucciones_IA-32.pdf|Resumen de Instrucciones de IA-32]]: Resumen hecho a partir de extractos los manuales de Intel [Volumen 2] (2009).
*[[Media:Orga2_apunte_primera_parte_2019.pdf|Apunte de la primera parte de la materia 2019]]


== IA-32 ==
== IA-32 ==
Línea 33: Línea 35:


== IA-64 (Itanium) ==
== IA-64 (Itanium) ==
'''El Itanium ya no se da como tema desde por lo menos el 2do cuatrimestre del 2017.'''
'''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?"''
*[[Itanium for Dummies (Organización del Computador II)| Itanium for Dummies]]: También conocido como ''"No sé nada de Itanium, ¿Cómo empiezo?"''
Línea 64: Línea 66:
*[[Medio:ORGA2 P1 1C 2014.pdf|Parcial del 20/05/14]]
*[[Medio:ORGA2 P1 1C 2014.pdf|Parcial del 20/05/14]]
*[[Medio:Orga2_1recu_03-07-14.pdf|Recuperatorio del 03/07/14]]
*[[Medio:Orga2_1recu_03-07-14.pdf|Recuperatorio del 03/07/14]]
*[[Medio:Orga2_1parcial_07-10-14.pdf|Parcial del 07/10/14]]
*[[Medio:Orga2_1recu_25-11-14.pdf|Recuperatorio del 25/11/14]]
*[[Medio:Orga2_1parcial_12-05-15.pdf|Parcial del 12/05/15]]
*[[Medio:Orga2_1recu_30-06-15.pdf|Recuperatorio del 30/06/15]]
*[[Medio:Orga2_1parcial_01-10-15.pdf|Parcial del 01/10/15]]
*[[Medio:Orga2_1recu_01-12-15.pdf|Recuperatorio del 01/12/15]]
*[[Medio:Orga2_1parcial_05-05-16_resuelto.pdf|Parcial del 05/05/16 (resuelto)]]
*[[Medio:Orga2_1parcial_05-05-16_resuelto.pdf|Parcial del 05/05/16 (resuelto)]]
*[[Medio:Orga2_1recu_07-07-16.pdf|Recuperatorio del 07/07/16]]
*[[Medio:Orga2_1parcial_29-09-16.pdf|Parcial del 29/09/16]]
*[[Medio:Orga2_1recu_29-11-16.pdf|Recuperatorio del 29/11/16]]
*[[Medio:Orga2-1P-11-05-17.pdf|Parcial del 11/05/17 (resuelto)]]
*[[Medio:Orga2-1P-11-05-17.pdf|Parcial del 11/05/17 (resuelto)]]
*[[Medio:Orga2_1parcial_03-10-17_resuelto.pdf|Parcial del 03/10/17 (resuelto)]]
*[[Medio:Orga2_1parcial_03-10-17_resuelto.pdf|Parcial del 03/10/17 (resuelto)]]
*[[Medio:Orga2_1recu_23-11-17_resuelto.pdf|Recuperatorio del 23/11/17 (resuelto)]]
*[[Medio:Orga2_1parcial_10-05-18_resuelto.pdf|Parcial del 10/05/18 (resuelto)]]
*[[Medio:Orga2_1recu_28-06-18_resuelto.pdf|Recuperatorio del 28/06/18 (resuelto)]]
*[[Medio:Orga2_1parcial_2-10-18_resuelto.pdf|Parcial del 2/10/18 (resuelto)]]
*[[Medio:Orga2_1recu_27-11-18_resuelto.pdf|Recuperatorio del 27/11/18 (resuelto)]]
*[[Medio:Orga2 1parcial 07-05-19.pdf|Parcial del 7/5/19 (resuelto)]]


===Segundos parciales===
===Segundos parciales===
Línea 95: Línea 113:
*[[Medio:Orga2_2parcial_29-06-17.pdf|Parcial del 29/06/17 (resuelto)]]
*[[Medio:Orga2_2parcial_29-06-17.pdf|Parcial del 29/06/17 (resuelto)]]
*[[Medio:Orga2_2recu_18-07-17.pdf|Recuperatorio del 27/07/17 (resuelto)]]
*[[Medio:Orga2_2recu_18-07-17.pdf|Recuperatorio del 27/07/17 (resuelto)]]
*[[Medio:Orga2_2parcial_14-11-17_resuelto.pdf|Parcial del 14/11/17 (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]]


== Finales ==
== Finales ==
*[[Temas final Dic-2006 (Organización del Computador II)| 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.
*[[Orga2_final_09-03-18|Final de 09/03/2018]]
*[[Finales Dic-2006 (Organización del Computador II)| Finales de Diciembre del 2006]]: Finales ya tomados en Diciembre del 2006.
*<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)
*[[Media:Resumen_orga_2_-_Straminsky.pdf | Resumen de microarquitectura y otros temas para el final]]
 
*[[Media:Res_orga2.zip | Resumen para el final]] : Contiene los latex y el pdf
== 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 ===
 
*[[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
*Autoevaluación modelo para preparar el final (lbarrios) (disclaimer: no son preguntas oficiales, son preguntas que se me ocurrieron mientras estudiaba, para luego poder hacer un simulacro de final y ver en qué puntos andaba flojo) [https://github.com/lbarrios/orga2-final/blob/master/preguntas-final.md Repositorio Github (Markdown)] [[Medio:Orga2_cuestionario_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
 
=== 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).
 
* 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)
** Parte 1: [https://www.youtube.com/watch?v=tawb_aeYQ2g&list=PLAwxTw4SYaPmqpjgrmf4-DGlaeV0om4iP]
** Parte 2: [https://www.youtube.com/watch?v=z4rWk3VMtm4&list=PLAwxTw4SYaPkNw98-MFodLzKgi6bYGjZs]
** Parte 3: [https://www.youtube.com/watch?v=Oqfk7U2eaFY&list=PLAwxTw4SYaPnhRXZ6wuHnnclMLfg_yjHs]
 
=== Papers ===
 
Estos son los papers que se espera que se lean:
 
*[[Medio:Orga2_paper_pentium4.pdf| The Microarchitecture Of The Pentium 4 Processor]]
*[[Medio:Orga2_paper_hyper-threading.pdf| Hyper-Threading Technology Architecture and Microarchitecture]]
*[[Medio:Orga2_paper_pentiumM.pdf| The Intel Pentium M Processor - Microarchitecture and Performance]]
*[[Medio:Orga2_paper_pentium4-90nm.pdf| The Microarchitecture of the Intel Pentium 4 Processor on 90nm Technology]]
*[[Medio:Orga2_paper_duo.pdf| Introduction to Intel Core Duo Architecture]]
*[[Medio:Orga2_paper_cmp.pdf| CMP Implementation in Systems based on the Intel Core Duo prosessor]]
*[[Medio:Orga2_paper_duo-45nm.pdf| Original 45nm Intels Core 2 Processor Performance]]
*[[Medio:Orga2_paper_penyn.pdf| Improvements in the Intels Core 2 Penryn Processor Family Architecture and Microarchitecture]]
 
 
Material extra
 
*[[Media:Understanding_Pipelining_and_Superscalar_Execution.pdf | Pipelining and Superscalar execution]] : Paper sobre temas de microarquitectura para el final.
*[[Media:Understanding_Pipelining_and_Superscalar_Execution.pdf | Pipelining and Superscalar execution]] : Paper sobre temas de microarquitectura para el final.
*[http://www.nostarch.com/download/insidemachine_ch4.pdf Inside the Machine (Chapter 4): Superscalar Execution] : Capitulo de muestra sobre ejecución superescalar para preparar el final.
*[http://www.nostarch.com/download/insidemachine_ch4.pdf Inside the Machine (Chapter 4): Superscalar Execution] : Capitulo de muestra sobre ejecución superescalar para preparar el final.
*Los finales de Alejandro Furfaro suelen ser orales (si no hay mucha gente). Duran 15-20 minutos y hace preguntas de microarquitectura, específicamente sobre coherencia de Caché, predicción de saltos, microarquitectura Netburst y Pentium III.
 
*[https://www.youtube.com/watch?v=zLP_X4wyHbY&feature=youtu.be&list=PL5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq Carnegie Mellon - Computer Architecture 2015 - Onur Mutlu]: Videos sobre los temas del final ('''MUY''' recomendado). Las clases importantes son la 9, 10, 11, 12, 13, 17 y 18.
=== 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.
*<s>[[Temas final Dic-2006 (Organización del Computador II)| 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.</s> (precaución: en 2018 estos temas no se están tomando más)


== Recursos ==
== Recursos ==

Revisión del 18:08 9 ago 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

IA-64 (Itanium)

Itanium ya no se da como tema desde que está Furfaro como profesor.

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

  • 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