Difference between revisions of "Arquitectura de computadores"
Line 535: | Line 535: | ||
==== '''Quinta Práctica: Aritmética Computacional''' ==== | ==== '''Quinta Práctica: Aritmética Computacional''' ==== | ||
− | El objetivo de esta práctica es observar ciertos aspectos de aritmética computacional, teniendo en cuenta lo visto en clase. Puede realizarse de (2) dos personas. En el documento solo debe colocar las respuestas y no el código. | + | El objetivo de esta práctica es observar ciertos aspectos de aritmética computacional, teniendo en cuenta lo visto en clase. Puede realizarse de (2) dos personas. En el documento solo debe colocar las respuestas, explicaciones y no el código siguiente. Recuerden, sean concretos en las respuestas. |
# Observe el siguiente código: | # Observe el siguiente código: | ||
#include <stdio.h> | #include <stdio.h> | ||
Line 590: | Line 590: | ||
1.3. Modifiquélo previendo un overflow "posible", en el informe agregue unicamente las lineas de esa modificación y expliqué como funciona, teniendo en cuenta la salida que les da. | 1.3. Modifiquélo previendo un overflow "posible", en el informe agregue unicamente las lineas de esa modificación y expliqué como funciona, teniendo en cuenta la salida que les da. | ||
− | 2. Observe el Simulador de suma y resta de punto flotante que se encuentra en el sitio de internet: http://www.ecs.umass.edu/ece/koren/arith/simulator/FPAdd/ | + | 2. Observe el Simulador de suma y resta de punto flotante que se encuentra en el sitio de internet: http://www.ecs.umass.edu/ece/koren/arith/simulator/FPAdd/ |
+ | |||
+ | 2.1. Use los años que tiene usted y su compañero y realice una operación de suma y luego de resta usando números decimales. Explique la salida que les da tanto en single como en double. ¿Que ven de diferente? Expliquen su respuesta. | ||
+ | |||
+ | 2.2. Repita la misma operación anterior pero en hexadecimal. ¿Que observan que es relevante en la salida ? Igual realizarlo para double y expliquen la diferencia. | ||
+ | |||
+ | 3. ¿Cual es la utilidad de la representación hexadecimal respecto a la decimal desde el punto de vista de arquitectura de computadores? No olviden que tienen Internet. | ||
==== '''Sexta Práctica: Jugando con Assembly''' ==== | ==== '''Sexta Práctica: Jugando con Assembly''' ==== |
Revision as of 23:27, 13 September 2018
Volver a Cursos
Arquitectura de Computadores - Código 22966
Carlos Jaime Barrios Hernández - ( c b a r r i o s @ u i s . e d u . c o )
Auxiliatura Técnica-Académica : Equipo de Ingenieria de Supercomputación y Cálculo Científico
Contents
- 1 PRESENTACION
- 2 Contenido
- 3 ASPECTOS METODOLOGICOS
- 4 MATERIAL DEL CURSO
- 5 EVALUACIONES (2 Semestre de 2018 - Todos los Grupos)
- 5.1 1. Evaluación Escrita No. 1 (20%) TEMA 1+2 (SIN material de apoyo, parejas y tríos). Fecha propuesta: Jueves 6 de Septiembre de 2018, 6:00 a.m.
- 5.2 2. Evaluación Escrita No. 2+3 (20%) TEMA 2+3 (CON material de apoyo, individual). Fecha propuesta: Jueves 18 de Octubre de 2018
- 5.3 3. Evaluación Escrita Final (20%) Todos los Temas + Artículo (SIN material de apoyo, Por Parejas y Tríos). Fecha y Hora: Jueves 6 de Diciembre de 2018, 6:00 a.m.
- 5.4 4. Artículo Final de Aplicación y Presentación de Proyectos (20%)
- 5.5 Límite de Fecha y Hora de Entrega: Viernes 23 de Noviembre de 2018 hasta las 23:59 (Tiempo Bogotá, Colombia)
- 5.6 Fecha de Presentación: Viernes 30 de Noviembre de 2018
- 5.7 5. Sesiones de Entregas Prácticas (20%) Todos los Miércoles desde 31 de Enero de 2018
- 5.8 TEMÁTICAS DE PROYECTOS
- 5.9 Temáticas de Proyectos (1 Semestre de 2018)
- 6 Notas de las Evaluaciones del Curso (Se publicarán previamente acá)
- 7 BIBLIOGRAFÍA Y FUENTES DE INFORMACION
- 8 ALGUNAS PRACTICAS
- 8.1 Primera Práctica: Familiarizándose con las secciones prácticas e introducción al curso
- 8.2 Segunda Práctica: Recordando conceptos de diseño digital de circuitos
- 8.3 Tercera Práctica: Requerimientos Funcionales
- 8.4 Cuarta Práctica: Evolución Histórica en Teletrabajo
- 8.5 Quinta Práctica: Aritmética Computacional
- 8.6 Sexta Práctica: Jugando con Assembly
- 8.7 Octava Práctica: Arquitectura General
- 8.8 Novena Práctica: Simulacro de Examén
- 9 CONSULTA CON EL PROFESOR Y SESIONES ESPECIALES
PRESENTACION
El diseño, desarrollo e innovación son palabras que corresponden a la actividad de un ingeniero, cualquiera que sea su área de trabajo. Desde un punto de vista ingenieril la tecnología, es el fruto de la concepción y desarrollo del conocimiento, utilizando herramientas y proyectando una utilidad, incluyendo el diseño de nuevas herramientas. Como ingenieros de sistemas esas herramientas son las máquinas computacionales, las cuales evolucionan con la actualización del conocimiento, que involucra la explotación de nuevos materiales, nuestra capacidad de abstracción y las perspectivas de desarrollo (mas que las necesidades).
Si bien el componente técnico/tecnológico de la asignatura arquitecturas de computadores es importante, el solo hecho de utilizar la palabra “arquitectura” involucra una percepción hacia la concepción, el diseño y la organización de los elementos que integran un sistema de cómputo (no solo una máquina computadora), como es la interacción con otros sistemas y con los humanos, observando tendencias, factibilidad, requerimientos de rendimiento, limitaciones tecnológicas y físicas, impacto ambiental entre otros. Aunque la frontera con el conocimiento que involucra otras áreas como la ingeniería electrónica, la física de materiales o la matemática aplicada es frágil, el curso esta dirigido a estudiantes de ingeniería de sistemas y ciencias de la computación, buscando ofrecer fundamentos de arquitectura de sistemas computacionales desde una ubicación histórica. De ahí que se complementen con lecturas acerca del estado del arte en cada una de las secciones propuestas para este curso.
El propósito fundamental de esta asignatura durante el presente semestre es establecer un estado de conocimientos fundamentales en arquitectura de computadores, que permita manejar el lenguaje técnico asociado, ubicar temporalmente el desarrollo tecnológico, conociendo el estado del arte en esta área y fundamentar conocimientos que permitan el auto-aprendizaje y profundización en el área, además de la interacción en equipos interdisciplinarios que requieran competencias en arquitectura de sistemas computacionales.
Contenido
- Introducción y Fundamentos de Arquitectura de Sistemas de Cómputo
- Arquitectura, Organización y Diseño de Sistemas de Cómputo
- Desarrollo histórico – Ubicación histórica actual
- Clases de Computadoras
- Abstracción y Tecnología de Computación – Tendencias
- Desempeño
- Casos de Estudio
- Instrucciones y Aritmética para Computador
- Fundamentos de Instrucciones para Computador
- Operaciones y Operandos de Hardware de Computadoras
- Representación de Instrucciones
- Operaciones Lógicas
- Instrucciones para la toma de decisiones
- Soporte de Procedimientos a nivel de Hardware
- Comunicaciones
- Arquitectura MIPS
- Introducción Paralelismo I – Paralelismo de Instrucciones y el problema de la sincronización
- Algunos Aspectos Avanzados
- Aspectos Arquitecturales de Compilación
- Fundamentos de Diseño Lógico
- Mapeo de Hardware
- Casos de Estudio
- Introducción y Fundamentos de Aritmética para Computador
- Adición y substracción
- Multiplicación y División
- Introducción al Paralelismo II – Aritmética de computadores y el problema de la asociatividad.
- Casos de Estudio
- Fundamentos de Instrucciones para Computador
- Organización y Diseño Arquitectural de Sistemas de Cómputo
- Fundamentos de Organización y Diseño
- Aspectos Básicos de Procesadores
- Aspectos Lógicos de Diseño
- Pipeline y Control
- Paralelismo y Escalabilidad
- Casos de Estudio
- Fundamentos de Memoria
- Fundamentos de Organización y Diseño
- Jerarquía de Memoria
- Casos de Estudio
- Aspectos Básicos de Almacenamiento
- Aspectos Básicos de Comunicaciones y Conectividad
- Conectividad Interna
- Interconectividad y Redes (Introducción)
- Fundamentos de I/O, Gráficas e Interfaces
- Casos de Estudio
- Tendencias y Direcciones Futuras
- Arquitecturas Híbridas
- Arquitecturas Reconfigurables
- Aspectos Energéticos, Ecológicos y Ambientales
- Arquitecturas Escalables, de Gran Escala y Ecosistemas
- ARMS (Advanced RISC Architectures) y Computadores Embebidos.
- EXASCALE y otras direcciones
ASPECTOS METODOLOGICOS
- Seminarios Teóricos
- Seminarios Magistrales
- Seminarios con Invitados
- Sesiones Teórico Prácticas / Análisis de Casos
- Lecturas Sugeridas (En español y en Inglés)
- Webminars y Videoconferencias
MATERIAL DEL CURSO
El material presentado, fundamentalmente son las diapositivas presentadas durante las sesiones tanto teóricas como los talleres. Es importante resaltar que la mayoría del material se encuentra en inglés. Esto con el fin de acostumbrar la consulta en inglés, debido a que las especificaciones y la bibliografía y fuentes de información "de punta" en tecnología están estandarizadas en inglés. Es posible que existan algunos errores de escritura. Estas diapositivas son principalmente de las sesiones Teóricas (Desde el I Semestre de 2016) y los artículos presentados por los estudiantes a partir del primer semestre de 2016.
Presentación del Curso:
Del Tema 1 del Contenido:
- Abstracción
- Fundamentos de Diseño Lógico Digital
- Evolución Histórica
- Evaluación de Desempeño
Del Tema 2 del Contenido:
- Aritmética Computacional
- Instrucciones Computacionales
- Multinúcleos y Paralelísmo: Una introducción
- Introducción al Ensamblador
Del Tema 3 del Contenido:
- Redes y Conectividad
- Systems on Chip
- Almacenamiento e I/O s
- RISC, CISC y Variaciones
- Arquitecturas Reconfigurables y Embebidas
EVALUACIONES (2 Semestre de 2018 - Todos los Grupos)
Los exámenes escritos se realizarán en las horas de clase e inician a las 6:00 a.m.
Los exámenes son de 90 minutos estrictos.
1. Evaluación Escrita No. 1 (20%) TEMA 1+2 (SIN material de apoyo, parejas y tríos). Fecha propuesta: Jueves 6 de Septiembre de 2018, 6:00 a.m.
- Se recomienda tener hoja de examen y responder con lapicero, no con lápiz.
- No se permite ningún tipo de comunicación entre estudiantes. Traiga todo el material necesario (borradores, lapiceros de repuesto, etc.)
- La comunicación entre diferentes grupos de examen (o estudiantes) y el fraude tienen como consecuencia la anulación del mismo y una calificación de cero (0.0) en la evaluación.
- Los teléfonos celulares deberán apagarse y dejarse en frente del salón, así como cualquier dispositivo electrónico no vital.
2. Evaluación Escrita No. 2+3 (20%) TEMA 2+3 (CON material de apoyo, individual). Fecha propuesta: Jueves 18 de Octubre de 2018
- Principalmente el tema 2, pero puede incluirse conocimientos del tema del contenido 1 y del 3.
- Tenga en cuenta las recomendaciones dadas para la anterior evaluación.
3. Evaluación Escrita Final (20%) Todos los Temas + Artículo (SIN material de apoyo, Por Parejas y Tríos). Fecha y Hora: Jueves 6 de Diciembre de 2018, 6:00 a.m.
- Se incluyen todos los temas y trabajos presentados por sus compañeros.
- Incluye una pregunta de los artículos entregados y expuestos por los grupos (Normalmente es una pregunta evidente realizada durante la exposición).
- La evaluación se realiza por parejas y trios, que son los mismas del grupo de trabajo para los trabajos de aplicación finales.
4. Artículo Final de Aplicación y Presentación de Proyectos (20%)
Límite de Fecha y Hora de Entrega: Viernes 23 de Noviembre de 2018 hasta las 23:59 (Tiempo Bogotá, Colombia)
Fecha de Presentación: Viernes 30 de Noviembre de 2018
El artículo responderá a un proyecto de aplicación que se distribuirá en grupos dados por el profesor y se debe tener en cuenta la estructura del mismo (introducción, estado del arte, contenido en el cual se desarrollará en sí el trabajo, resultados (experimentación si la hay), gráficas, figuras y tablas (si son necesarias), conclusiones, biografía y fuentes de información. Pueden guiarse viendo el siguiente ejemplo aquí
- 10 (Diez) Páginas en Español (mínimo 8 páginas), Título y Resumen (abstract) en español y en inglés (máximo 10 lineas). NO OLVIDE DARLE UN TITULO QUE DEBE SER DIFERENTE AL TITULO DE LA ASIGNACION PERO QUE GENERE UN INTERES A LA LECTURA (en Español)
- Formato IEEE en una columna para series de conferencias http://www.ieee.org/conferences_events/conferences/publishing/templates.html
- La asignación es de 2 (dos) o 3 (tres) autores por artículo, de acuerdo a la asignación (igualmente distribuidos por el profesor). NO SON MODIFICABLES
- Temáticas Distribuidas por el Profesor
- El artículo debe entregarse en un único archivo .pdf enviándolo al correo del profesor, indicando en el asunto: ENTREGA ARTICULO FINAL ARQUITECTURA. Recuerde que la fecha de entrega esta indicada en el calendario de evaluaciones.
Para la presentación del trabajo debe tener en cuenta lo siguiente:
- 5 (Cinco) Minutos estrictos de presentación. Mas allá de este tiempo será penalizado en la nota.
- Puede estructurarse en formato libre (uno de los autores presenta, o todos), pero deben usarse diapositivas. Estas diapositivas deben enviarse al profesor el dia anterior al dia de la presentación, estrictamente en un archivo pdf.
- El orden de presentación de los grupos es el mismo orden de los grupos.
5. Sesiones de Entregas Prácticas (20%) Todos los Miércoles desde 31 de Enero de 2018
- Se pueden realizar y entregar por parejas. Las sesiones prácticas se realizan los viernes e inician puntualmente. Hay una tolerancia de ingreso de (diez) 10 minutos y se tomará lista de asistencia . Después de esa tolerancia no se recomienda ingresar al salón de clase.
- Toda las sesiones prácticas generan un informe que se enviará vía correo electrónico al correo del profesor, diez minutos antes del cierre del sistema (XX:50am). No se calificaran informes enviados fuera del momento de la sesión del curso (después de las X:55 a.m.). Si terminan antes, pueden abandonar el salón.
- Los informes de laboratorio/práctica, se entregan estrictamente en un documento y con las condiciones dadas más adelante en la sección algunas prácticas: Arquitectura de computadores#ALGUNAS PRACTICAS
- Recuerden las sesiones prácticas no se recuperan, la no entrega de informes e inasistencia injustificada da como nota cero (0.0) en esa práctica. Si necesita faltar a una práctica informe previamente en la sesión teórica justificando su inasistencia para recuperarla posteriormente. Si por motivo de fuerza mayor no pudo asistir y puede justificarla, debe hacer el tramite ante la escuela para solicitar la recuperación de la misma, siguiendo la metodología de solicitud de supletorios.
- Si se descubre que uno de los integrantes del informe entregado en la práctica respectiva, no asistió, la calificación de la misma es cero (0.0) por fraude, tanto al que no asistió como el que lo incluyó en el mismo por complicidad.
TEMÁTICAS DE PROYECTOS
Temáticas de Proyectos (2 Semestre de 2018)
Se publicarán y asignarán la primera semana de septiembre.
Temáticas de Proyectos (1 Semestre de 2018)
No olvide ver los temas asignados en la lista posterior denominada Temas para Trabajos 2018-1. Se recomienda observa tanto los artículos como las diapositivas de los semestres anteriores realizados por sus compañeros y disponibles en este sitio.
Asignación de Grupos 2018-1
Grupo | Participantes | Tema para Trabajos 2018-1 | Orden de Presentación Propuesto | Pregunta Examen | ||||||
---|---|---|---|---|---|---|---|---|---|---|
A |
|
T1 | 6:00am-6:05am | Tomando del Grupo T10: Si vemos la pregunta hecha de: ¿Cuál ha sido el papel de los video juegos en torno al desarrollo de la arquitectura de hardware?, Según lo visto en el artículo y en la exposición, responda, ¿que criterios de arquitectura de computadores debo tener en cuenta a la hora de desarrollar videojuegos? Justifique su respuesta. | ||||||
B |
|
T2 | 6:07am - 6:12:00am | Tomando del Grupo T9: Si vemos la pregunta hecha de: la competitividad en Colombia, ¿Desde el punto de vista de arquitectura de computadores que deberá tener en cuenta la UIS para mantener la supremacía en Colombia? Justifique su respuesta. | ||||||
C |
|
T3 | 6:14am - 6:19am | Tomando del Grupo T1: Si vemos la pregunta hecha de: ¿Desde el punto de vista de arquitectura de computadores, cuales son los retos tecnológicos que representan?, responda ¿Cuales son los retos como desarrolladores? Justifique su respuesta. | ||||||
D |
|
T4 | 6:21am - 6:26am | Tomando del Grupo T8: Si vemos la pregunta hecha de: ¿Cuales han sido los principales retos y preguntas abiertas que aún quedan, desde el punto de vista computacional?, responda ¿cuales serian esos retos desde el desarrollo de software? Justifique su respuesta. | ||||||
E |
|
T5 | 6:28am - 6:35am | Tomando del Grupo T7: Del artículo de sus compañeros, se plantea la pregunta : ¿Por qué es importante el exascale y los problemas energéticos tratados desde la computación?, responda ¿por qué es importante igualmente verlo partícularmente desde sistemas no exascale? Justifique su respuesta. | ||||||
F |
|
T6 | 6:37am - 6:42am | Tomado del Grupo T2: De la pregunta: ¿Por qué se hace tanto énfasis en la crisis de identidad del HPC?, responda desde el punto de vista del desarrollador, ¿como lo afecta, dentro de la identidad como ingenieros de sistemas? Justifique su respuesta. | ||||||
G |
|
T7 | 6:45am - 6:50am | Del grupo T6: De la pregunta planteada a sus compañeros, ¿Cuales son los retos técnicos?, responda, ¿cuales son los retos del componente software? Justifique su respuesta. | ||||||
H |
|
T8 | 6:52am - 6:57am | Del Grupo T4, se plantea la pregunta: ¿Que consecuencias tecnológicas, sociales y económicas en el corto plazo ha visto cada vez que las capacidades de cómputo y almacenamiento se incrementan?, responda, ¿es relevante su formación como ingenieros hoy en dia ante una nueva realidad en la carrera o carreras relacioanadas con computación? Justifique su respuesta. | ||||||
I |
|
T9 | 6:59am - 7:04am | Del Grupo T5, se habló de la tercera revolución industrial, ¿a que me refiero con la cuarta revolución industrial? Detalle su respuesta | ||||||
J |
|
T10 | 7:06am - 7:11am | Del Grupo T3, se preguntó ¿Que retos trae a los ingenieros y científicos de computadoras este tipo de cómputo orgánico?, responda, ¿cuales son los retos a nivel de programación? Justifique su respuesta. |
Temáticas de Proyectos
Para este semestre se realizó una asignación por grupos de dos (2) y tres (3) estudiantes, de acuerdo a la tabla anterior. Cada uno de los grupos deberá realizar el trabajo asignado y seguir lo que se muestra en el numeral 4 de la sección de evaluaciones. Cada uno de los grupos partirá de al menos un articulo o enlace informativo de base dado, pero deben buscar otras fuentes para responder a las preguntas asociadas al mismo (no necesariamente en el orden dado, el orden ustedes lo dan para darle un cuerpo y un argumento a su artículo y trabajo). Recuerden que a partir del artículo de base, deben buscar nuevas fuentes de información (otros artículos, otros enlaces, etc).
Tenga en cuenta que la asignación es definitiva, todo el equipo debe trabajar y en la clase práctica del 21 de febrero de 2018, se deberá hacer un informe previo sobre como resolverán la tarea asignada. La tabla de asignación involucra igualmente el orden de presentación.
Temas para Trabajos 2018-1
- T1: Tendencias en IA para el 2018 Cray Inc. en su grupo de discusión de expertos ha trabajado sobre la idea de como la IA transforma la tecnología. Para el 2018, ellos han predicho ciertas tendencias interesantes, que pueden verse en: https://www.cray.com/blog/artificial-intelligence-five-trends-2018/ Exponiendo cada una de estas tendencias, responda las siguientes preguntas:
- ¿Cual, según su criterio representa la más clara para nosotros en Colombia? Justifique su respuesta
- ¿Desde el punto de vista de arquitectura de computadores, cuales son los retos tecnológicos que representan?
- ¿Estamos preparados como ingenieros de sistemas y como país a asumir esas tendencias? Justifique su respuesta.
- T2: Predicciones en HPC para el 2018: HPC Wire es un sitio especializado en Computación de Alto Rendimiento que diariamente publica información acerca de cómputo avanzado y sistemas de datos, tanto a nivel académico como industrial. En la publicación: https://www.hpcwire.com/2017/12/21/five-surefire-maybe-hpc-predictions-2018/ , HPC Wire realizó unas predicciones para el 2018 en la industria y tecnología para este año. Exponiendo cada una de estas predicciones, responda las siguientes preguntas:
- ¿ Cual de estas predicciones es la que a su criterio genera mas impacto en Colombia? Justifique su respuesta.
- ¿Por qué se hace tanto énfasis en la crisis de identidad del HPC?
- No ha pasado sino meses de estas predicciones. Al realizar su articulo, ¿Cual es el estado de estas predicciones?
- T3: Electrónica Orgánica: Tras las limitaciones físicas y los requerimientos cada vez mayores en consumo de energía, rapidez, capacidad y permanencia, los científicos han venido buscando nuevas maneras de proponer cómputo. Recientemente, un nuevo paso se ha dado para generar electrónica orgánica (https://liu.se/en/news-item/jattekliv-inom-den-organiska-elektroniken) con revolucionarios resultados (http://onlinelibrary.wiley.com/doi/10.1002/adma.201704916/full) De acuerdo a este tipo de contribuciones expuestas, responda las siguientes preguntas:
- ¿Por qué se buscan componentes orgánicos para dispositivos electrónicos?.
- ¿La abstracción lógica cambia? Justifique su respuesta.
- ¿Que retos trae a los ingenieros y científicos de computadoras este tipo de cómputo orgánico?
- T4: Nuevo descubrimiento aumentaría las capacidades de memoria y procesamiento: Recientemente el Colegio de Ciencia e Ingeniería de la Universidad de Minnesota anunció un descubrimiento que afectaría las capacidades de memoria y procesamiento en sistemas computacionales (https://cse.umn.edu/news-release/new-discovery-improve-brain-like-memory-computing/) El descubrimiento, publicado en nature (https://www.nature.com/articles/s41467-017-02491-3) sin duda es revolucionario y podría genera en el corto plazo nuevamente una potencialización de las capacidades tecnológicas. De acuerdo a esto y exponiendo de que se trata este logro, responda las siguientes preguntas:
- ¿Que hace tan importante y relevante este descubrimiento? Explique el detalle.
- ¿Por qué se hace referencia a que las capacidades de memoria y procesamiento se acercan a las capacidades del cerebro, como principal preocupación de los investigadores en el área?. Justifique su respuesta.
- ¿Que consecuencias tecnológicas, sociales y económicas en el corto plazo ha visto cada vez que las capacidades de cómputo y almacenamiento se incrementan?. De ejemplos.
- T5: La Siguiente Fase en la Revolución Digital: Sin duda alguna, en los últimos cinco (5) años se ha presentado una revolución que ha replanteado no sólo el valor de la información sino también la manera como se garantiza su uso, desde las plataformas hasta los modelos de programación, más aún en lo que denominamos nube computacional (https://cacm.acm.org/magazines/2018/2/224635-the-next-phase-in-the-digital-revolution/fulltext) Observando aquellas características expuestas por expertos, acerca de la siguiente fase en esa revolución, responda las siguientes pregunta:
- ¿A qué se debe el debate dato acerca de la productividad y como la sociedad se transforma dramáticamente? Justifique desde el punto de vista tecnológico e ingenieril su respuesta.
- ¿Por qué lo que se considera plataforma es importante en toda esta revolución?
- ¿Cómo es la perspectiva regional colombiana para ser actores en esa nueva fase de revolución digital? Justifique su respuesta de manera crítica.
- T6: Perspectiva de los Sistemas Operativos Ubiquos: Los sistemas que denominamos tradicionales de cómputo van desde sistemas en la nube, dispositivos que interactuan entre ellos, entre lo que denominados Internet de las Cosas (IoT) y nuevas tecnologías emergentes que se preocupan de nuevas capacidades pero tambien de limitaciones como el consumo energético. En ese sentido, se lleva una continua y completa discusión como puede verse en: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8268011 y el papel de los sistemas operativos. Teniendo en cuenta los aspectos tratados y expuestos relacionados en el artículo de base, responda las siguientes preguntas:
- ¿Por qué la perpsectiva definida en software (software-defined) es importante?
- ¿Cuales son los retos técnicos?
- Con el rápido desarrollo y despliegue de sistemas ubicuos en el mundo, ¿que retos debemos afrontar como futuros ingenieros de sistemas? De un ejemplo de una posible aplicación en algún sector productivo en Colombia (agro-industria, energía, salud)
- T7: HPC for Energy: Exascale plantea retos tecnológicos que tradicionalmente se ven desde las arquitecturas hardware y software, pues no solo se trata de tener una electrónica mejor para poder procesar exa-datos a un costo energético eficiente, sino también que las aplicaciones se ejecuten. En ese sentido sus compañeros del semestre 2017-2 del G2, realizaron un trabajo en torno a la modernización de las aplicaciones. Precisamente, en dias pasados, un consorcio europeo en torno al interés en exascale para problemas asociados a la energía se reunió (https://www.hpcwire.com/2018/01/25/eu-brazil-energy-interests-position-exascale/) en el cual obtuvieron interesantes conclusiones en torno a los avances del proyecto (https://hpc4e.eu/). Ese consorcio esta conformado por la Unión Europea y Brazil. Observando de que se trata tanto el exascale como el proyecto HPC4E responda las siguientes preguntas:
- ¿Cuales han sido los logros más relevantes del proyecto?
- ¿Por qué es importante el exascale y los problemas energéticos tratados desde la computación?
- Santander es una región de industrias energéticas, a su criterio ¿es relevante que se participe y genere proyectos similares en los cuales la computación juegue un papel interesante? Justifique su respuesta.
- T8: AI para suplir miembros amputados: Recientemente, se ha anunciado un logro que desde el 2012 no se realizaba y era la posibilidad de realizar tareas avanzadas en miembros robotizados en personas amputadas (https://goo.gl/abMz1U) El anunció de los resultados hechos por un grupo de investigación de Georgia Tech (http://www.news.gatech.edu/2017/12/11/force-strong-amputee-controls-individual-prosthetic-fingers) abre nuevas posibilidades para que la tecnología aporte al bienestar de los seres humanos. Teniendo en cuenta lo expuesto anteriormente, responda las siguientes preguntas:
- ¿Qué arquitectura computacional ha permitido desarrollar este tipo de logros?
- ¿Cuales han sido los principales retos y preguntas abiertas que aún quedan, desde el punto de vista computacional?
- ¿Como podríamos como ingenieros en Colombia, aportar a estos desarrollos, por ejemplo, para personas que han perdido sus miembros en la guerra reciente en Colombia o en accidentes de trabajo? Justifique su respuesta.
- T9: Europa lanza proyecto de 1 billón de Euros para construir supercomputador en el 2023: La supercomputación es uno de los pilares modernos para la competitividad científica de las naciones y conglomerados económicos. En se sentido, la unión europea lanzó su proyecto de supercomputación para el 2023(https://sciencebusiness.net/news/eu-launches-eu1b-project-build-fastest-supercomputer-world-2023), en el cual le apuesta no sólo ha construir un supercomputador sino el más poderoso del mundo y cambiar el panorama observado hoy en el Top500 (https://www.top500.org/) De acuerdo a la información que recopila al respecto, responda críticamente las siguientes preguntas:
- ¿Cuales son las principales motivaciones para Europa?
- ¿Cómo ve a América Latina como bloque respecto a Europa, Asía, Estados Unidos de América y Canada? Justifiqué su respuesta.
- ¿Y Colombia, es altamente competitiva o no? Justifique su respuesta.
- T10: La investigación en Hardware en su sistema de video juegos: Recientemente, la prestigiosa revista nature publicó una interesante contribución en torno a la investigación y la ruptura que se ha generado en los sistemas de video juegos (https://www.nature.com/articles/d41586-017-08968-x) De acuerdo a las ideas expuestas allí, responda las siguientes preguntas:
- ¿Por qué los sensores han sido fundamentales? Justifique su respuesta.
- ¿Cuál ha sido el papel de los video juegos en torno al desarrollo de la arquitectura de hardware?
- No como jugadores, sino como desarrolladores tanto de video juegos como de sistemas completos, ¿como ve al país? (Recuerde, debe documentarse muy bien y buscar información al respecto).
Trabajos 2017-2
- G1: El Problema de la Memoria en Arquitecturas computacionales en la Era PostMoore (Artículo , Diapositivas): Actualmente nos encontramos ante una disrupción tecnológica en computación, en la cual, por las limitaciones físicas, económicas y energéticas, la ley de Moore no se aplica más en computación y los fabricantes e investigadores están desarrollando lo que es las arquitecturas computacionales en la era post-moore. Existen muchos retos que se plantean, entre ellos el uso de arquitecturas heterogeneas para acelerar procesamiento a un bajo consumo energético relativo, pero cada reto que se busca tratar genera otros tantos, como los problemas relacionados con la memoria. En el artículo Heterogeneous Computing Meets Near-Memory Acceleration and High-Level Synthesis in the Post-Moore Era muestra como se trata el reto para acelerar la memoria mas cercana al procesamiento en arquitecturas heterogéneas.
- ¿Dé que se trata efectivamente la Era Post-Moore en arquitectura computacional?
- Describa de que se trata el reto que estan solucionado los autores del mismo, y cuales son sus principales logros.
- ¿Otras personas o grupos de investigación han tratado el problema o no? Si es asi, cual es el aporte que dan los autores.
- ¿Cuales nuevas preguntas y retos surgen de la propuesta de los autores del articulo dado?
- Como ingenieros de sistemas, ¿como los afecta este tipo de problemáticas?. Sea concreto y puede dar ejemplos.
- G2: Modernización de las Aplicaciones en la Era Exascale (Artículo , Diapositivas):'Exascale plantea retos tecnológicos que tradicionalmente se ven desde las arquitecturas hardware y software, pues no solo se trata de tener una electrónica mejor para poder procesar exa-datos a un costo energético eficiente, sino también que las aplicaciones se ejecuten. En ese sentido, se han desarrollado grupos y centros especializados para tratar problemáticas asociadas, como los Centros de Excelencia (o COE de sus siglas en inglés). En el artículo http://ieeexplore.ieee.org/document/8024142/ Application Modernization for the Exascale Era introduce otros tres siguientes, en los cuales se trata precisamente de como un COE generado trata ese problema de la modernización de las aplicaciones, teniendo en cuenta aspectos importantes del co-diseño hasta aplicaciones. Uno de los tres articulos siguientes denominado: Application Modernization at LLNL and the Sierra Center of Excellence trata mas en detalle la acción de un COE.
- ¿Por qué y como el exascale afecta las aplicaciones?
- ¿Por qué es importante tratar la modernización de las aplicaciones? ¿Cuales son los principales retos que se encuentran?. Recuerden desde el Exascale.
- ¿Por qué es importante los COE?
- Una de las aplicaciones visibles y de alto impacto desarrollado por el COE en mención puede verse en Toward Exascale Earthquake Ground Motion Simulations for Near-Fault Engineering Analysis de que se trata y como desde la ingenierí de sistemas e informática y la computación se trata este tipo de problemas? Recuerde, desde el punto de vista de arquitectura de computadores (hardware/software)
- ¿Como se atacarían desde la EISI problemas como el anteriormente expuesto? ¿Es importante hacerlo para Santander y el país?
- G3: Computación Cuántica (Artículo, Diapositivas):'Desde la ciencia ficción hasta en conversaciones de cafetería se habla de la computación cuántica, el cual, a pesar de ser muy experimental aun, es un hecho que algunos grupos de investigación y empresas le apuestan a un desarrollo a futuro, generan igualmente nuevos retos y resolviendo otros. En el articulo The Quantum Future of Computation los autores tratan de que se trata ese "futuro cuántico de la computación" (Igualmente puede ver en youtube en la charla de Matthias Troyer con el mismo nombre).
- ¿Dé qué se trata la computación cuántica? Recuerde, desde el punto de vista de arquitectura (hardware/software).
- ¿De que se trata la física cuántica?¿Porqué entonces de computadores cuánticos?
- ¿Qué pasa con las aplicaciones y la arquitectura de ellas (arquitectura software)? ¿Como se compilan, ejecutan y trazan (ver su desempeño)?
- Si la computación cuántica se desplegara inmediatamente, ¿Cuales serian las implicaciones sociales, económicas e industriales?
- ¿Como futuro ingeniero, se cree listo para asumir en rol en un mundo con computación cuántica? Justifique su respuesta.
- G4: Computación Molecular (Artículo , Diapositivas): Los científicos en computación, andan trabajando desde hace años en resolver los diferentes retos (bajo consumo de energía, aumentar capacidades, programabilidad, etc.) proponiendo nuevos paradigmas y arquitecturas computacionales, cada vez menos convencionales. Precisamente, como se observa en Embodied Molecular Computation: Potential and Challenges se plantea un nuevo reto, para nada convencional, desde las posibilidades moleculares de la materia para hacer computación.
- ¿De qué se trata la computación molecular? ¿Por qué aparece el término embodied (incorporada)?
- ¿Esta de acuerdo que los procesos biológicos pueden entenderse como programas? Justifiqué su respuesta.
- ¿Que retos, cambios de paradigma (a nivel de arquitectura, representación, programación, etc) y cambios trae consigo la computación molecular y en este caso molecular incorporada (o embebida)?
- Si la computación molecular see desplegara inmediatamente, ¿Cuales serian las implicaciones sociales, económicas e industriales?
- Como futuro ingeniero, ¿cree que con los conocimientos actuales que tiene como estudiante, esta listo para afrontar un mundo con computación molecular (y molecular embebida?. Justifique su respuesta.
- G5: Nuevos Paradigmas de Interacción Hombre -Máquina (Artículo , Diapositivas): El desarrollo de arquitecturas computacionales que permitan la interacción hombre-máquina desde sinergias corticales para permitir un control cerebral de dichas arquitecturas es un reto que genera cada vez mas preguntas, ante nuevos avances logrados. En el artículo Cortically Coupled Computing: A New Paradigm for Synergistic Human-Machine Interaction se presenta un nuevo paradigma pensando en el acoplamiento precisamente en el acoplamiento cortical.
- ¿De qué se trata la interacción cerebro-computador y porque involucra cada vez mas nuevos retos?
- Arquitecturalmente (computacionalmente), ¿como podría explicarse un sistema cerebro-computador?
- ¿Cual es el rol que juega la inteligencia artificial en todo esto?
- En términos de aplicaciones, ¿cuales son los retos tanto en el desarrollo como en la concepción de aplicaciones del "mundo real"?
- Dé que se trata IEEE Brain Initiative y ¿Como se podría participar desde la UIS?
- G6: Computación en Tiempo Real sobre Procesadores Multi-núcleos (Artículo , Diapositivas): El uso de múltiples núcleos en procesadores han permitido sobre diferentes arquitecturas computacionales, garantizar alto rendimiento y nuevos usos, pero también generan nuevos retos como la misma gestión de la memoria. En el artículo Real-Time Computing on Multicore Processors presenta una propuesta para el uso de procesadores multi-núcleos para computación en tiempo real, usada en aviónica.
- ¿Cuales son los principales retos y problemas a los que se enfrenta el uso de procesadores de multiples núcleos para sistemas de computación de tiempo real?
- ¿Por qué se hace tanto énfasis en la interferencia entre núcleos?
- A nivel de aplicaciones, ¿Cuales son los retos?
- ¿Por qué es importante estimar los peores casos en el rendimiento de estos sistemas (y de cualquier sistema)?
- ¿Que campos de aplicación sociales, industriales y académicos podría tener el uso de sistemas de procesamiento multinúcleo para tiempo real en el entorno cercano? (Universidad, Bucaramanga, Santander, Colombia). De ejemplos.
- G7: ¿La Ley de Moore ha muerto? (Artículo , Diapositivas): La Ley de Moore, propuesta en 1965 se ha cumplido de una manera extraordinaria hasta hace un par de décadas cuando las limitaciones físicas y el advenimiento de nuevas tecnologías generaron una disrupción tecnológica que hace que se comience a visualizar una era post-Moore. Sin embargo, algunos investigadores dicen que el anuncio de la muerte de la Ley de Moore es exagerado. En el artículo Exponential Laws of Computing Growth y en el video trata precisamente acerca de ese crecimiento computacional exponencial y las implicaciones que tiene no solo en como entendemos y usamos la tecnología sino también como la vemos a futuro.
- ¿Como podría entender la ley de Moore no solo a nivel de los transistores (chips) sino también a nivel de procesos, hilos y aplicaciones?.
- ¿De que se trata la ley de Rock y por qué es importante?
- ¿Qué rol tiene el paralelismo en todo esto?
- ¿Qué ha pasado con el desarrollo de aplicaciones en la era Moore?
- El crecimiento exponencial computacional plantea retos complejos. ¿Cuales son esos retos como ingeniero de sistemas y como se ubica la Escuela de Ingenieria de Sistemas e Informática de la Universidad Industrial de Santander, para atacar esos retos?
- G8: Computación Heterogénea (Artículo , Diapositivas): Para garantizar máximo desempeño aprovechando las características y propiedades de tecnologías especificas, se han propuesto arquitecturas computacionales completamente híbridas y heterogéneas, creando configuraciones cada vez mas novedosas, complejas y con un costo económico menor, pero que plantean nuevos retos. En el video y en el artículo Heterogeneous computing: here to stay se presenta lo que es hoy la computación heterogénea y como debe entenderse, desde un punto de vista computacional, haciendo enfásis en los retos que plantea.
- ¿Qué es la computación heterogénea?
- ¿Cuales son los retos en hardware y en software? De ejemplos.
- La UIS, desde Supercomputación y Cálculo Científico (SC3UIS) comenzó a innovar hace cinco (5) años con computación heterogénea, inicialmente con el codiseño y cointegración de GUANE-1 (GpUAdvanced eNvironmEnt - 1) que es un computador heterogéneo. ¿Qué lo hace tan especial y heterogéneo/híbrido?
- ¿Qué es lo bueno y lo malo de esa computación heterogénea?
- Como la UIS desde la Escuela de Ingenieria de Sistemas e Informática ha respondido a la computación heterogénea? (cursos, proyectos, grupos de investigación, interés de los profesores, estudiantes... etc.)
Artículos de los Grupos del Curso del Semestre 1-2016
- Artículo del Grupo 1, Arquitecturas Heterogéneas
- Artículo del Grupo 1 - Versión B, Arquitecturas Heterogéneas
- Artículo del Grupo 2, Programación de Arquitecturas Híbridas
- Artículo del Grupo 3, Arquitecturas Reconfigurables
- Artículo del Grupo 4, Codiseño
- Artículo del Grupo 5, Eficiencia Energética
- Artículo del Grupo 6, Tecnologías Verdes
- Artículo del Grupo 7, Arquitecturas Escalables
- Artículo del Grupo 8, Sistemas de Gran Escala
- Artículo del Grupo 9, ARM
- Artículo del Grupo 10, Supercomputación basada en ARM
- Artículo del Grupo 11, Computación Exascale
- Artículo del Grupo 12, Supercomputación Exascale
- Artículo del Grupo 13, Hardware Libre
- Artículo del Grupo 14, Supercomputación en el bolsillo
- Artículo del Grupo 15, Interfaz Cerebro Computador
- Artículo del Grupo 16, Codiseño de Sistemas Embebidos
Nota importante: Para efectos de la evaluación, al grupo que le correspondió el artículo del Grupo 1, como estos trabajaron finalmente separadamente, escojan alguna de las dos versiones, indicando en la evaluación, que versión escogieron.
Artículos de los Grupos del Curso del Semestre 2-2016
- Artículo del Grupo 1, Connecting Processing...
- Artículo del Grupo 2, Sistema Confiable de Almacenamiento
- Artículo del Grupo 3, Modelos de Programación y Cargas de Trabajo en Computadoras Escalables
- Artículo del Grupo 4, WSC
- Artículo del Grupo 5, Exascale
- Artículo del Grupo 6, Top500.org
- Artículo del Grupo 7,Hardware Libre y Sistemas Embebidos
- Artículo del Grupo 8, Sistemas de Gran Escala
- Artículo del Grupo 9, Arquítecturas Híbridas
- Artículo del Grupo 10, HiPEAC
- Artículo del Grupo 11, ARM
- Artículo del Grupo 12, NVIDIA Jetson TK1 y TX1
- Artículo del Grupo 13, GUANE-1
Notas de las Evaluaciones del Curso (Se publicarán previamente acá)
BIBLIOGRAFÍA Y FUENTES DE INFORMACION
1.Patterson and Hennesy, Computer Organization and Design (The Hardware, Software Interface)]
- Historial Perspective and Further Reading
- Glossary of Terms in Architecture
- A Survey of RISC Architectures for Desktop, Server and Embedded Computers
2. Patterson and Hennesy, Computer Architecture; A Quantitative Approach
3. Commer, Douglas, Essentials of Computer Architecture
4. TED Talks
- The Birth of Computers by George Dyson
- Shimon Schocken: The self-organizing computer course
- [http://www.ted.com/talks/john_graham_cumming_the_greatest_machine_that_never_was.html John Graham-Cumming: The greatest machine that never was
- Kwabena Boahen: A computer that works like the brain
5. Algunos enlaces interesantes
- Computer Arithmetic Algorithm Simulator: http://www.ecs.umass.edu/ece/koren/arith/simulator/
- Enlace de programa en C para sumar dos números binarios (https://www.sanfoundry.com/c-program-sum-binary-numbers/)
ALGUNAS PRACTICAS
Todas las prácticas se desarrollan en el tiempo de clase y el informe para las mismas deberá enviarse 10 minutos antes de la finalización de la misma. En el momento de la sesión, se dirá si esas prácticas son en parejas o individuales. Las condiciones generales de entrega son las siguientes:
- Los informes deben enviarse por correo electrónico al correo del profesor. En el asunto del mismo deberá colocarse "PractArqComp No. XX" Por ejemplo, si la práctica es la práctica 37, el asunto del correo deberá ser: PractArqComp-37.
- El informe de las mismas, se enviará adjunto en el correo ÚNICAMENTE en un solo archivo .pdf de máximo (3) tres páginas tamaño carta, tipo de letra 12 puntos, espaciado sencillo, que incluya las gráficas necesarias, cuyo archivo debe nombrase con los apellidos (o apellido si es individual), las iniciales de los nombres (o inicial del nombre si es individual) y el numero de práctica respectivo. Por ejemplo, si los integrantes del trabajo son Pedro Pérez y Maria Márquez, que realizan la práctica 37, el archivo de informe .pdf deberá nombrarse como : MarquezPerezMP37.pdf El archivo debe incluir en la cabecera el número y fecha de la práctica, asi como los nombres completos de los participantes junto con el código respectivo y el curso al que pertenencen.
- En algunas prácticas es necesario que se incluyan algunos archivos de código fuente. En ese caso, dentro del informe mismo, deberán indicarse cuales son esos archivos adjuntos y deben enviarse junto con el archivo de informe (con nombres libres) pero dando las indicaciones de compilación y ejecución.
- En el cuerpo del mensaje, deberán colocarse los nombres completos y códigos de los autores del informe ( o autor si es el caso de un laboratorio individual), así como el código del curso al que pertenecen.
- Lea cuidadosamente lo que se les pregunta y respondan únicamente lo que se les esta preguntando precisamente, de manera clara y concisa. Siga las indicaciones de respuesta, que en algunos casos están limitadas en números de líneas a responder, gráficas, comparaciones, justificaciones, ejemplos, contra ejemplos, entre otros.
Primera Práctica: Familiarizándose con las secciones prácticas e introducción al curso
Esta primera práctica tiene como objetivo, introducir la asignatura de arquitectura de computadores y se realizará de manera individual. Antes de entrar a desarrollar las secciones de las prácticas, visite completamente esta página del curso y familiarícese con el contenido de la misma.
Observe la charla de TED dada por George Dyson, The Birth of Computers y responda las siguientes preguntas, de manera concreta, si es necesario complementando con otras fuentes de información que busque al momento de hacer el informe:
- ¿Qué es lo más trascendental para usted en esta charla?
- ¿Qué situaciones "cotidianas" encuentra hoy en día en las máquinas de cómputo que prevalecen desde los primeros días de esas primeras máquinas de computación?
- Compare las principales características de su teléfono celular o del PC que tiene junto a usted al momento de hacer este informe (capacidad de memoria, almacenamiento, consumo energético, capacidad de procesamiento e incluso complejidad), con las de esas máquinas pioneras. ¿Cuales han sido los cambios más dramáticos?.
- Observe las dos caricaturas que se han colocado en el wiki:
y
¿Cuales son sus impresiones al respecto?Tenga en cuenta el contexto del curso de Arquitectura de Computadores.
Segunda Práctica: Recordando conceptos de diseño digital de circuitos
En un curso anterior, se siguieron conceptos acerca de electricidad, electrónica y diseño digital de circuitos. En esta práctica el objetivo es recordar algunos conceptos de diseño digital de circuitos, esta práctica se realizará por parejas asignadas por el profesor en el momento de la práctica. Recuerde, tenga en cuenta las recomendaciones dads anteriormente para la entrega del informe de práctica.
- Use la web para encontrar el número de transistores en un chip VLSI y el tamaño físico de ese chip (de nueva generación). Suponga que todo el espacio de ese chip es utilizado ¿Un transistor individual, que tan grande es?
- Como se mencionó en la primera clase, la energía es fundamental y muy importante en cualquier dispositivo computacional. Los circuitos digitales de un smart phone y otros dispositivos similares no funcionan a (5) cinco voltios, como normalmente funciona otros dispositivos electrónicos o los que ustedes manipularon en los talleres de semestres pasados en los cursos de electrónica. Observe en la web cada uno de sus teléfonos celulares cuanto voltaje es usado y en no más de diez (10) lineas explique las diferencias entre ellos. Si son teléfonos iguales, compárelo con el de la generación anterior.
- El voltaje y la corriente son propiedades cuantificables en electricidad muy importantes. Sabiendo que el voltaje entre dos (2) puntos representa la diferencia de energía potencial (medida en voltios) y la corriente representa el flujo de electrones a través de un camino (medido en amperios), explique con una analogía en no mas de cinco (5) lineas estas propiedades.
- Use el internet para buscar acerca de flip-flops (contextualice desde el punto de vista del curso, en este caso en particular sobre fundamentos de diseño lógico de circuitos, electricidad y electrónica). Explique de que se trata en no más de (5) cinco lineas y liste los tipos más importantes y sus características en no mas de (10 diez lineas en total.
- Usando igualmente internet, responda la siguiente pregunta, en no más de cinco (5) lineas: Cuando un fabricante presume que el fabrica chips con una tecnología de siete (7) nanometros, ¿Que significa en términos prácticos?.
- Busque por internet acerca de "clockless logic". Explique en no más de (10) diez lineas de que se trata y en que es usado.
- Responda la pregunta dada por el instructor en el tablero de la clase.
Tercera Práctica: Requerimientos Funcionales
Observando las diapositivas de la clase anterior (principalmente la diapositiva No. 35) y lo que se puede consultar en la bibliografia dada (ver principalmente fuente bibliográfica No. 2, sección 1.3 recomendando observar la tabla presente en la figura 1.7), la práctica de hoy busca hacer un ejercicio en el cual, teniendo en cuenta requerimientos funcionales, se va a sugerir una tecnología a tomadores de decisiones.
Esta práctica se realizará por parejas de la siguiente manera: Tomé la última cifra de su código de estudiante y sumela con la de su compañero, si el resultado es un numero par o cero siga las indicaciones dadas en a), si es impar siga las dadas en b).
a) Una empresa local en el segmento de hidrocarburos, quiere adquirir tecnología computacional para colocarla en campos petroleros en la selva, en los que no hay una distribución energética constante sino dadas por plantas, ademas que estos dispositivos son para colocar en diferentes pozos que se comunican por wifi. Las aplicaciones dadas están realizadas por la misma compañía (códigos propios o in-house), realizados en C/C++ y Python, en un ambiente que solo funciona bien sobre un linux embebido. Por política de la compañía sólo usan software abierto y propone el uso de hardware abierto principalmente (pero no necesariamente), pero la seguridad de la información es importante y debe tratarse en tiempo real y como se mencionó anteriormente, implica una comunicación constante entre los dispositivos en cada pozo. Estos dispositivos se comunicarán al final con un servidor de réplica que envía los datos a un datacenter.
La compañía se comunica con ustedes para recibir sugerencias arquitecturales basadas en los requerimientos funcionales dados UNICAMENTE, las cuales ustedes deben presentar. Busqué en internet cuanto costaría en el mercado un dispositivo que ustedes están recomendado (no olviden dar las referencias del casos, como enlace de internet para buscar más información). En la recomendación, justificada, en un documento de no mas de tres (3) páginas, presente cual seria la opción mas cercana y no olviden mencionar las limitaciones que en una primera revisión ustedes encuentran.
b) Un DJ local muy conocido, quiere adquirir tecnología computacional que le permita ofrecer en streaming y en vivo, sus presentaciones por internet. Fundamentalmente, el DJ usa Virtual DJ o Traktor que puede ser soportado sobre macOS Sierra, Linux o cualquier versión de Windows moderna. Es importante tener en cuenta que el dispositivo computacional debe tener los puertos de salida necesarios para la consola de mezclas (que puede ser de cualquier marca, pues el se presenta en diferentes sitios, pero que por la complejidad requiere muy buena capacidad en memoria RAM), debe no ser tan pesado (pues el lo debe llevar consigo), no recalentarse demasiado y mantener cierta autonomía en caso de caídas de luz, que son muy frecuentes en el momento de las presentaciones por la cantidad de tecnología conectada. Hay periféricos conectados que deben permitir salida hacia una cámara de video de alta resolución, puertos USB de lectura hacia discos duros externos en los que tiene su música, puerto de red para el streaming y puertos necesarios hacia servidores que permitan almacenar y posteriormente difundir en la nube sus presentaciones, usando su sitio personal y plataformas como soundcloud o mixcloud.
El DJ se comunica con ustedes para recibir sugerencias arquitecturales basadas en lo que les dijo UNICAMENTE. Proponga la arquitectura, detallando los aspectos de tecnología mas importantes (procesador (marca del mismo), memoria RAM, capacidad de disco, entre otras características importantes). Presente, justificando, su recomendación observando en el mercado por internet, posibles soluciones comerciales, teniendo en cuenta la mas costosa y la menos costosa, justificando ventajas y desventajas de cada una de ellas. Eso no debe hacerse en mas de tres (3) páginas.
No olviden seguir las recomendaciones de informes. NO SE ACEPTAN INFORMES EN SOLITARIO y envienlo una sola vez por todo el grupo desde una de las cuentas de correos de alguno de los estudiantes del grupo.
Cuarta Práctica: Evolución Histórica en Teletrabajo
De acuerdo con la Ley 1221 de 2008, el Teletrabajo se define como una forma de organización laboral, que consiste en el desempeño de actividades remuneradas o prestación de servicios a terceros utilizando como soporte las tecnologías de la información y la comunicación - TIC para el contacto entre el trabajador y la empresa, sin requerirse la presencia física del trabajador en un sitio específico de trabajo. En el mundo, este tipo de trabajo se esta expandiendo por diferentes motivos: económicos, medioambientales y de calidad de vida. Sin embargo, involucra un cambio de mentalidad en el trabajador y del empleador, basándose sobre todo en valores y confianza, aunque también se requieren plataformas tecnológicas que soporten el teletrabajo. Diferentes plataformas en Colombia como http://www.teletrabajo.gov.co han promovido este tipo de práctica laboral y en la Universidad Industrial de Santander, se han desarrollado charlas para entenderlo, junto con el MinTIC. El desarrollo de este taller se realizará de esta manera, para lo cual deben tener en cuenta lo siguiente:
- Se realizará de manera individual.
- Se enviará el respectivo informe hasta las 14:59 (2:59 p.m. Hora Colombiana) al correo electrónico del profesor el dia de la práctica, siguiendo las mismas indicaciones con las cuales se han enviado los trabajos anteriores (archivo .pdf, asunto del mensaje claro, etc.)
- Como es teletrabajo, pueden realizarlo donde quieran, no hace falta que vengan al salón de práctica.
Para desarrollar el taller, tenga en cuenta que la arquitectura de computadores es ante todo un desarrollo continuo, de hardware y software, que involucra cambios radicales que tienen una afectación importante en el individuo y la sociedad.
- Revise las diapositivas: File:CompHist1-16.pdf acerca de la evolución histórica de la computación y bibliografia relacionada (Por ejemplo, Historial Perspective and Further Reading).
- Según su criterio personal, ¿Cual ha sido el mas extraño de los desarrollos en esa evolución histórica? Justifique su respuesta en no mas de (Diez) 10 líneas.
- Teniendo en cuenta esa evolución histórica y tendencias, ¿Como ve a Colombia dentro de ese desarrollo? ¿Se ha mantenido al margen? ¿Ha producido tecnología? ¿Es un buen consumidor de la misma?. Responda en no mas de diez líneas.
- El premio ACM Turing, es el equivalente al Nobel en Informática y Computación (https://amturing.acm.org/) Los dos últimos ganadores del premio fueron los profesores David Patterson y John Hennessy (que precisamente son los autores de libros guía de cursos como este de arquitectura de computadores. Observando la trayectoria de ellos, responda:
- Antes del ACM Turing, ¿Que otros premios y reconocimientos han recibido?
- ¿Qué es lo mas interesante de la hoja de vida y el recorrido personal de cada uno de ellos?
- ¿Creen que el aporte que ellos han hecho para ganarse el ACM Turing tiene realmente una incidencia en la sociedad y en la computación? Justifique su repuesta (en no mas de veinte lineas).
- Escoja otro ganador del ACM Turing y responda las mismas preguntas anteriores.
- Teniendo en cuenta lo visto en el ACM Turing, ¿Que necesitaría alguien para ganarse ese reconocimiento desde la Universidad Industrial de Santander?
Quinta Práctica: Aritmética Computacional
El objetivo de esta práctica es observar ciertos aspectos de aritmética computacional, teniendo en cuenta lo visto en clase. Puede realizarse de (2) dos personas. En el documento solo debe colocar las respuestas, explicaciones y no el código siguiente. Recuerden, sean concretos en las respuestas.
- Observe el siguiente código:
#include <stdio.h>
int main()
{
long binary1, binary2;
int i = 0, remainder = 0, sum[20];
printf("Enter the first binary number: ");
scanf("%ld", &binary1);
printf("Enter the second binary number: ");
scanf("%ld", &binary2);
while (binary1 != 0 || binary2 != 0)
{
sum[i++] =(binary1 % 10 + binary2 % 10 + remainder) % 2;
remainder =(binary1 % 10 + binary2 % 10 + remainder) / 2;
binary1 = binary1 / 10;
binary2 = binary2 / 10;
}
if (remainder != 0)
sum[i++] = remainder;
--i;
printf("Sum of two binary numbers: ");
while (i >= 0)
printf("%d", sum[i--]);
return 0;
}
1.1. ¿Qué hace el código? Expliquélo en un diagrama de flujo y un pseudocódigo.
1.2. Teniendo en cuenta que el lenguaje de programación sobre el que esta escrito es evidente, transcribalo, guardelo con la extensión correspondiente, compilelo y ejecutelo. ¿Qué salida le da?
1.3. Modifiquélo previendo un overflow "posible", en el informe agregue unicamente las lineas de esa modificación y expliqué como funciona, teniendo en cuenta la salida que les da.
2. Observe el Simulador de suma y resta de punto flotante que se encuentra en el sitio de internet: http://www.ecs.umass.edu/ece/koren/arith/simulator/FPAdd/
2.1. Use los años que tiene usted y su compañero y realice una operación de suma y luego de resta usando números decimales. Explique la salida que les da tanto en single como en double. ¿Que ven de diferente? Expliquen su respuesta.
2.2. Repita la misma operación anterior pero en hexadecimal. ¿Que observan que es relevante en la salida ? Igual realizarlo para double y expliquen la diferencia.
3. ¿Cual es la utilidad de la representación hexadecimal respecto a la decimal desde el punto de vista de arquitectura de computadores? No olviden que tienen Internet.
Sexta Práctica: Jugando con Assembly
Ensamblador, traduce el lenguaje de alto nivel a un lenguaje que pueda ser posteriormente enlazado hacia un lenguaje que será entendido por la máquina. Cuando ya ha sido ensamblado por el compilador, las instrucciones fundamentales para la operación quedan visibles. Normalmente, las instrucciones ensamblador son estandarizadas. En el siguiente enlace: http://reliant.colab.duke.edu/c2mips/ se tiene en linea un convertidor de C hacia ensamblador para MIPS. El objetivo de esta práctica es observar y distinguir que pasa cuando un programa escrito en un lenguaje una vez compilado es traducido hacia ensamblador. Esta práctica se realizará igualmente en parejas.
- Utilice el código de "Hola Mundo" en C y usando únicamente la opción de optimización por defecto, indique pasa, explicando que hace cada linea de instrucción importante, cuando se traduce hacia ensamblador.
- Haga lo mismo con un programa para sumar dos números enteros menores que 100.
- Ahora con un programa en C para calcular los números primos hasta 1000 y mire que pasa. Juegue con las opciones de optimización del compilador. Inclusive si salen warnings o errores, explique por que pasa eso y en que modo de optimización.
- Responda las siguientes preguntas:
- ¿Qué es compilar?
- ¿Cual es la función del compilador?
- ¿Todos los compiladores son iguales?
- ¿Que hace o a que se refiere las opciones de compilación? ¿Cual es la diferencia entre ellas?
Recuerden las reglas para la entrega de informes.
Octava Práctica: Arquitectura General
El objetivo de esta práctica es comprobar las capacidades para identificar planos de arquitectura de algunos sistemas y entenderlos.
- La siguiente imagen, corresponde a una organización del sistema propuesta para un sistema Nehalem-EP 8-way cc-NUMA SMP, basado en CPUs (http://sc.tamu.edu/systems/eos/). Como profesional en ingenieria de sistemas le preguntan lo siguiente, de acuerdo a la gráfica (10 puntos):
- ¿Cuantos procesadores tengo?
- ¿Cuántos tipo de procesadores tengo y de que tipo? Explique cada uno
- ¿Cuántos nucléos de procesamiento (cores) tengo?
- ¿Cuántos niveles de caché tengo? Explique a que me refiero con el caché.
- ¿Qué dice la información acerca de la latencia al compararla de procesador a procesador y de procesador a memoria?
(Este tipo de gráficas pueden aparecer en los examénes)
Novena Práctica: Simulacro de Examén
El objetivo de esta práctica es realizar un simulacro de algunas de las preguntas tipo que se realizan en el primer examen. . Sea claro y conciso en sus respuestas. Observé lo que se le pregunta y responda UNICAMENTE lo que se le pregunta y las indicaciones dadas en el sitio .
1. Para realizar una evaluación de rendimiento, le solicitan la lista de al menos tres métricas para comparar:
- · Dos computadores personales
- · Dos Sistemas de bases de datos
- · Dos Aplicaciones que funcionan en red
2. En un proceso en el cual usted esta explicando a una junta directiva de una gran empresa sus decisiones en tecnología, le pregunta: ¿Por qué el caché es importante? (Use solo 5 líneas)
3. Usted esta en el consejo de escuela de la EISI en el cual se discute acerca de la velocidad de la red inalámbrica del sistema. En el consejo se insiste en que se cuenta con un canal de red de una capacidad de 1GB (Ancho de banda) cableada que puede suplir a los 780 estudiantes y 18 profesores de la EISI, pero la red sigue siendo lenta. ¿Qué no se ha tenido en cuenta al evaluar el rendimiento? (Máximo en cinco líneas)
4. Un compañero de derecho tiene un equipo con un procesador de 2.6 GHz, una memoria RAM de 1.GB y un disco duro de 2TB, le pregunta por qué si ha actualizado su disco duro a un disco duro de 4TB, su equipo sigue lento. De la solución mas simple para que su equipo sea mas rápido. (Máximo 5 lineas).
CONSULTA CON EL PROFESOR Y SESIONES ESPECIALES
Normalmente, si requieren alguna consulta pueden enviarme un email al correo cbarrios(-@-)uis.edu.co o en el desarrollo del curso para planificarla . Sin embargo, los martes en la mañana en el horario de 9:30 am. hasta las 11:50 a.m. puede buscarse en la oficina LP 226. Les recomiendo sin embargo que saquemos una cita previa.
Algunas sesiones especiales serán programadas en el transcurso del semestre.