Contenido de XSL

Arquitectura de Computadores

Centro
Facultad de Informática
Titulación
Grado en Ingeniería Informática
Curso académico
2019/20
Curso
2
Nº Créditos
6
Idiomas
Castellano
Euskera
Inglés

DocenciaAlternar navegación

Distribución de horas por tipo de enseñanza
Tipo de docenciaHoras de docencia presencialHoras de actividad no presencial del alumno/a
Magistral4040
P. Laboratorio2050

Guía docenteAlternar navegación

ObjetivosAlternar navegación

COMPETENCIAS ESPECÍFICAS:

1. Identificar y analizar los parámetros de diseño de las memorias cache.

2. Analizar la influencia de la memoria cache en la ejecución eficiente de los programas.

3. Entender el diseño y el funcionamiento de un procesador segmentado

4. Analizar algunas optimizaciones de código para mejorar el rendimiento del procesador.

5. Enunciar y aplicar los conceptos de paralelismo en entornos de memoria compartida

6. Programar aplicaciones sencillas de forma paralela afrontando aspectos como las dependencias de datos, la sincronización y el reparto de carga.



COMPETENCIAS GENERALES

Además de las competencias de la asignatura, se trabajarán las competencias generales C4, C8 y C9, así como las competencias RI1 y RI9 de la rama común informática, tal y como aparecen en el documento http://www.ehu.es/documents/340468/516505/Lista+de+competencias.pdf



TemarioAlternar navegación

1.-MEMORIA CACHE

1.1.-Introducción: jerarquía de memoria.

1.2.-Características generales: tamaño, contenido, bloque.

1.3.-Parámetros de diseño: correspondencia, algoritmo de reemplazo, política de escritura.

1.4.-Ejercicios. Trabajo práctico opcional.



2.-PROCESADORES SEGMENTADOS

2.1.-Motivación: aumento del rendimiento del procesador.

2.2.-Diseño de un procesador segmentado: DLX.

2.3.-Dependencias de datos y de control.

2.4.-Introducción a los procesadores multiciclo y superescalares.

2.5.-Técnicas de compilación para procesadores segmentados.

2.6.-Ejercicios.



3.-INTRODUCCIÓN A LOS SISTEMAS DE CÓMPUTO PARALELO

3.1.-Introducción. Computadores paralelos. Clasificación de Flynn. Rendimiento.

3.2.-Computadores paralelos de memoria compartida: sincronización y reparto de carga.

3.3.-Programación de multiprocesadores: OpenMP.

3.4.-Desarrollo de una aplicación paralela.



FUNDAMENTOS DEL LENGUAJE DE PROGRAMACIÓN C

MetodologíaAlternar navegación

Los dos primeros temas de la asignatura se impartirán teniendo en cuenta dos tipos de actividades presenciales, clases magistrales y clases de ejercicios, de forma colaborativa y activa.



Por su parte, el tercer tema se impartirá combinando clases magistrales y sesiones de laboratorio, tras lo cual habrá que paralelizar una aplicación y generar el correspondiente informe técnico en grupos de dos personas.

Sistemas de evaluaciónAlternar navegación

La asignatura tiene dos modos de evaluación:

a) Evaluación continua. Es el modo de evaluación predeterminado y se utilizará sólo en la convocatoria ordinaria. Requiere parcticipación activa y continua del alumnado: asistencia a las clases y laboratorios, entrega de ejercicios y trabajos, y realización de las correspondientes pruebas de evaluación, prácticas y presentaciones. En caso de no cumplir estas condiciones se pasará al modelo de evaluación global.

Los elementos de evaluación son los indicados en el apartado anterior.



b) Evaluación global (o de conjunto). En caso caso de no seguir la asignatura en evaluación continua se optará por este modelo de evaluación:



- Examen: 80%.

- Trabajo práctico: 20%



BibliografíaAlternar navegación

Bibliografía básica

1. Hennessy J.L., Patterson D.A.

Computer Architecture: A Quantitative Approach. (5. ed.). Morgan Kaufmann, 2012.

Konputagailuen arkitektura. Hurbilketa kuantitatibo bat. (4 ed.). UPV/EHU, 2008.

Arquitectura de computadores: un enfoque cuantitativo. (1. ed.). McGraw-Hill, 1993.

Información on-line (transparencias, anexos...): https://www.elsevier.com/books-and-journals/book-companion/9780128119051



2. Patterson D.A., Hennessy J.L.

Computer Organization and Design: The Hardware/Software Interface. (5. ed.). M. Kaufmann, 2013.

Estructura y diseño de computadores. La interfaz hardware/software. (4. ed.). Reverté, 2011.



3. Ortega J., Anguita M., Prieto A.: Arquitectura de Computadores. Thomson, 2005.



4. Stalling W.

Computer Organization and Architecture. Designing for performance. (8. ed.). Pearson, 2010.

Organización y Arquitectura de Computadores (7. ed.). Pearson - Prentice Hall, 2006.

http://williamstallings.com/COA/COA7e.html



5. Chandra R. et al.: Parallel Programming in OpenMP. Morgan Kaufmann, 2001.



6. Almeida F., Giménez D., Mantas J.M., Vidal A.M.: Introducción a la programación paralela. Paraninfo, 2008.

Bibliografía de profundización

- Culler D.E., Singh J.P.: Parallel Computer Architecture. A Hardware/Software Approach. M. Kaufmann, 1999.
- Chapman B. et al.: Using OpenMP. Portable shared memory parallel programming. The MIT Press, 2008.
- Pacheco P.S.: An introduction to Parallel Programming. M. Kaufmann, 2011.
- Nemirovsky M., Tullsen D.: Multithreading Architecture. Morgan & Claypool Pub., 2013.
- Hughes C.: Single-Instruction Multiple-Data execution. Morgan & Claypool Pub., 2015.
- Scott M.L.: Shared memory synchronization. Morgan & Claypool Pub., 2013.
- Sorin D.J., Hill M.D., Wood D.A.: A primer on memory consistency and cache coherence. M. & C. Pub., 2011.

Revistas

Revistas técnicas del área: IEEE computer, IEEE Micro, ACM, BYTE...

Tribunal de convocatorias 5ª, 6ª y excepcionalAlternar navegación

  • ARBELAIZ GALLEGO, OLATZ
  • ARRUABARRENA FRUTOS, AGUSTIN
  • MARTIN ARAMBURU, JOSE IGNACIO

GruposAlternar navegación

01 Teórico (Castellano - Mañana)Mostrar/ocultar subpáginas

Calendario
SemanasLunesMartesMiércolesJuevesViernes
1-15

10:45-12:15

09:00-10:30

Profesorado

Aula(s) impartición

  • 1.1 - CENTRO IGNACIO MARIA BARRIOLA
  • 1.1 - CENTRO IGNACIO MARIA BARRIOLA

01 P. Laboratorio-1 (Castellano - Mañana)Mostrar/ocultar subpáginas

Calendario
SemanasLunesMartesMiércolesJuevesViernes
1-15

12:30-14:00

Profesorado

01 P. Laboratorio-2 (Castellano - Mañana)Mostrar/ocultar subpáginas

Calendario
SemanasLunesMartesMiércolesJuevesViernes
1-15

10:45-12:15

Profesorado

31 Teórico (Euskera - Mañana)Mostrar/ocultar subpáginas

Calendario
SemanasLunesMartesMiércolesJuevesViernes
1-15

10:45-12:15

09:00-10:30

Profesorado

31 P. Laboratorio-2 (Euskera - Mañana)Mostrar/ocultar subpáginas

Calendario
SemanasLunesMartesMiércolesJuevesViernes
1-15

10:45-12:15

Profesorado

31 P. Laboratorio-1 (Euskera - Mañana)Mostrar/ocultar subpáginas

Calendario
SemanasLunesMartesMiércolesJuevesViernes
1-15

12:30-14:00

Profesorado

61 Teórico (Inglés - Mañana)Mostrar/ocultar subpáginas

Calendario
SemanasLunesMartesMiércolesJuevesViernes
1-15

10:45-12:15

09:00-10:30

Profesorado

61 P. Laboratorio-1 (Inglés - Mañana)Mostrar/ocultar subpáginas

Calendario
SemanasLunesMartesMiércolesJuevesViernes
1-15

12:30-14:00

Profesorado