Arquitectura de computadores

From Supercomputación y Cálculo Científico UIS

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

Theory-vs-practice.jpg

Contents

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

  1. Introducción y Fundamentos de Arquitectura de Sistemas de Cómputo
    1. Arquitectura, Organización y Diseño de Sistemas de Cómputo
    2. Desarrollo histórico – Ubicación histórica actual
    3. Clases de Computadoras
    4. Abstracción y Tecnología de Computación – Tendencias
    5. Desempeño
    6. Casos de Estudio
  2. Instrucciones y Aritmética para Computador
    1. Fundamentos de Instrucciones para Computador
      1. Operaciones y Operandos de Hardware de Computadoras
      2. Representación de Instrucciones
      3. Operaciones Lógicas
      4. Instrucciones para la toma de decisiones
      5. Soporte de Procedimientos a nivel de Hardware
      6. Comunicaciones
      7. Arquitectura MIPS
      8. Introducción Paralelismo I – Paralelismo de Instrucciones y el problema de la sincronización
      9. Algunos Aspectos Avanzados
        1. Aspectos Arquitecturales de Compilación
        2. Fundamentos de Diseño Lógico
        3. Mapeo de Hardware
      10. Casos de Estudio
    2. Introducción y Fundamentos de Aritmética para Computador
      1. Adición y substracción
      2. Multiplicación y División
      3. Introducción al Paralelismo II – Aritmética de computadores y el problema de la asociatividad.
      4. Casos de Estudio
  3. Organización y Diseño Arquitectural de Sistemas de Cómputo
    1. Fundamentos de Organización y Diseño
    2. Aspectos Básicos de Procesadores
      1. Aspectos Lógicos de Diseño
      2. Pipeline y Control
      3. Paralelismo y Escalabilidad
      4. Casos de Estudio
    3. Fundamentos de Memoria
      1. Fundamentos de Organización y Diseño
      2. Jerarquía de Memoria
      3. Casos de Estudio
    4. Aspectos Básicos de Almacenamiento
    5. Aspectos Básicos de Comunicaciones y Conectividad
      1. Conectividad Interna
      2. Interconectividad y Redes (Introducción)
    6. Fundamentos de I/O, Gráficas e Interfaces
    7. Casos de Estudio
  4. Tendencias y Direcciones Futuras
    1. Arquitecturas Híbridas
    2. Arquitecturas Reconfigurables
    3. Aspectos Energéticos, Ecológicos y Ambientales
    4. Arquitecturas Escalables, de Gran Escala y Ecosistemas
    5. ARMS (Advanced RISC Architectures) y Computadores Embebidos.
    6. 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:

Del Tema 2 del Contenido:

Del Tema 3 del Contenido:

EVALUACIONES (1 Semestre de 2019 - 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(CON material de apoyo, INDIVIDUAL).  Fecha propuesta:  Jueves 23 de mayo de 2019, 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  (SIN material de apoyo, PAREJAS).  Fecha propuesta: Jueves 4 de Julio de 2019

  • 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.
  • Observe que hay preguntas especificas para cada grupo. FIJESE MUY BIEN Y RESPONDA LA QUE LE CORRESPONDE, SI RESPONDE LA DEL GRUPO QUE NO LE CORRESPONDE O DE LOS DOS GRUPOS, EL PUNTO SE ANULA. RECUERDE: DEBE RESPONDER EN EL ORDEN ESTRICTO DE LAS PREGUNTAS.
  • Se recuerda que el examen es por grupos individuales y que hay tanto herramientas tecnológicas como metodologías que permiten ver el plagio, copias, similitudes en la redacción, entre otras. Exámenes similares en un rango mínimo del 15% comienza a dividirse la nota entre los similares. Por ejemplo, si la nota de un examen es 4.5, y hay tres trabajos iguales, cada uno de los exámenes tendrá una nota de 1.5.

3. Evaluación Escrita Final  (20%) Todos los Temas + Artículo (SIN material de apoyo, Por Parejas y Tríos).  Fecha y Hora: Jueves 22 de Agosto de 2019. 6:00 a.m.

  • Se incluyen todos los temas y trabajos presentados por sus compañeros.
  • Se incluyen los artículos presentados por sus compañeros que estarán disponibles en este sitio, EN EL SEMESTRE EN CURSO.
  • Incluyen dos preguntas 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 asignados por el profesor en el momento del examen.

4. Artículo Final de Aplicación y Presentación de Proyectos (20%)

Límite de Fecha y Hora de Entrega: Viernes 9 de Agosto de 2019 23:59 (Tiempo de Bogotá, Colombia)

Fecha de Presentación Oral: Jueves 15 de Agosto de 2019.

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í

  • Máximo 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 ASIGNACIÓN PERO QUE GENERE UN INTERÉS 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 3 (tres) o 4 (cuatro) 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 2019. 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 Viernes desde el 3 de Mayo 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

Los proyectos que están dados, deben tratarse como ingenieros de sistemas y especialistas en arquitectura de computadores, desde nuestro punto de vista como ingenieros sin olvidar que en este curso hemos estado tratando la relación hardware y software. Téngalo presente para el desarrollo del mismo. No olviden ver las condiciones dadas anteriormente. Se recomienda usar los recursos bibliográficos que puede acceder por parte de la UIS en: http://tangara.uis.edu.co/ y vea los trabajos disponibles de los semestres anteriores en este sitio.

Asignaciones y Temáticas de Proyectos (1 Semestre de 2019)

Tengan en cuenta que los grupos son definidos y los integrantes no pueden cambiarse. Todos deben trabajar y cualquier anormalidad en el desarrollo del mismo, debe informarse al profesor por lo menos con dos semanas de anticipación a la entrega. Se recomienda observar los trabajos de los semestres anteriores para conocer el formato y lo que se espera del mismo.

Grupo Participantes Tema Articulo + Diapostivas

(Disponible a a partir del 16 de Agosto)

G1 2162100 - ARDILA GOMEZ DANIEL FELIPE VHDL Y VERILOG

VHDL y Verilog son los HDL’s (Hardware Description Languages) más difundidos actualmente. Ambos son estándares en la industria de ASICs y FPGAs. Ambos poseen sus respectivos estándares IEEE. Existe aún hasta el día de hoy una discusión sobre cual es mejor. A partir de las referencia sde base dadas en wikipedia: https://en.wikipedia.org/wiki/VHDL y https://en.wikipedia.org/wiki/Verilog diga de que se trata cada uno de ellos, y por medio de un ejemplo, haga una comparación, mostrando a su criterio cuál es el más adecuado, igualmente justificando ese criterio.

ArchiG01
2160044 - CHACON SUAREZ JAVIER ALEXI PArch01
2161352 - VILLAMIZAR RUIZ ANDREA FABIANA
G2 2160414 - SANMIGUEL ARENAS CAMILO ENRIQUE ADVANCED PROCESSORS ARCHITECTURES (APA) AND TECHNOLOGIES (APT)

El término APA es un sistema de procesador y memoria distribuida escalable que es configurable y reconfigurable desde los dispositivos, la integración con el sistema y comunicaciones (fabric), que constituye hoy en dia futuras direcciones para la concepción de los sistemas computacionales. en el caso de las APT, involucran las tecnologías relacionadas para ese tipo de procesamiento, teniendo una especial atención en herramientas, mecanismos y usos, como el caso de inteligencia artíficial. Esto a generado la creación de empresas como http://advancedprocessorarchitectures.com/ y https://www.arm.com/ pero también otras confirmadas como Intel, AMD y NVIDIA. Teniendo en cuenta lo que se conoce como APA y APT describa cuales son las principales desarrollos implementados en los últimos cinco años y como en la escala regional/nacional afecta esos desarrollos (por ejemplo, teniendo el cuenta el uso, tendencias del mercado, decisiones políticas, etc). Tenga en cuenta que debe enmarcar teóricamente APA y APT observando las características más importantes para limitar su trabajo. Puede guiarse por ejemplo en las lineas y contribuciones realizados por el grupo en APT de la Universidad de Manchester: http://apt.cs.manchester.ac.uk/APT_Research.php

ArchiG02
2161638 - CAMACHO GALVIS CHRISTIAN STIVEN
2161671 - VEGA VILLABONA GABRIELA FERNANDA PArch02
2161342 - PALENCIA POMBO CARLOS ALBERTO
G3 2162114 - VILLALBA SANTOS ANDREA JULIANA ARQUITECTURAS COMPUTACIONALES PARA INTELIGENCIA ARTIFICAL

La explosión cámbrica de tecnologías que proporcionan grandes capacidades de procesamiento y la implementación en paralelo de algoritmos considerados anteriormente demasiado pesados para programarse han permitido el masivo uso de la Inteligencia Artificial y el Aprendizaje Automático (Machine Learning). Precisamente, hoy en dia, se encuentra un amplio espectro de arquitecturas e integrados para inteligencia artificial (https://cacm.acm.org/magazines/2018/4/226374-chips-for-artificial-intelligence/) De acuerdo a esa realidad, describa las características arquitecturales existentes y deseadas de esas arquitecturas computacionales y por que son tan "especiales" y diferentes a las tradicionales. De acuerdo al mercado, ¿qué futuro inmediato ve en el uso de esas tecnologías en Colombia y si existe una consciencia de la existencia de ellas a nivel regional y nacional?. No olvide justificar todas sus respuestas.

ArchiG03
2141846 - DIAZ HIGUERA JHOAN MANUEL
2161336 - PARRA RODRIGUEZ JHON ANDRES PArch03
G4 2161223 - DOMINGUEZ MURALLAS JEFERSON ALEXANDER REALISMO CUANTICO

En los últimos años, los desarrollos en computación cuántica permitió pasar de la especulación y del trabajo teórico-práctico realizado por los físicos a plantear problemas de ingeniería y ciencias computacionales, relacionados con la implementación, la representación de los algoritmos fisico-matemáticos en lenguajes de programación existentes y nuevos, conceptos como el del sistema operativo, aspectos arquitecturales como lo que se considera "memoria" y la utilización para la solución de problemas reales. Empresas como IBM o D-Wave han colocado en el mercado costosos computadores cuánticos, pero también existen simuladores cuánticos como los propuestos por ATOS y HPE aprovechando las características de arquitecturas híbridas y tecnologías avanzadas de procesamiento. Precisamente, la IEEE en su revista COMPUTER de Junio de 2019 dedicó toda la edición a ese realismo cuántico (https://www.computer.org/csdl/magazine/co/2019/06). Teniendo en cuenta esa edición pero principalmente el artículo Really Small Shoe Boxes: On Realistic Quantum Resource Estimation , ¿cuales preguntas desde el punto de vista de ingeniería ya se están respondiendo satisfactoriamente y cuales persisten? (Por ejemplo, observe lo que se refiere a sistemas operativos y compiladores). Igualmente teniendo en cuenta la misma edición, que problema real (diferente a los de criptográfia) se pueden tratar con computación cuántica. Se recomienda igual observar el trabajo realizado por sus compañeros el año pasado acerca de Arquitecturas Computacionales para Computación Cuántica, disponible en este sitio.

ArchiG04
2160039 - ALBARRACIN BARBOSA JUAN RICARDO
2151853 - PEDRAZA CADENA JESSICA FERNANDA PArch04
2160023 - CASTILLO CAÑAS IVAN RODRIGO
G5 2162116 - TORRES CARREÑO DIANA SOFIA SISTEMAS CIBERFISICOS (CYBER-PHYSICAL SYSTEMS)

Un sistema ciberfísico es una orquestación de computadores y sistemas físicos. Aunque el término pareciera exótico, los sistemas de control, aquellos que permiten monitoreo, captura y difusión de datos, como los que se encuentran en diferentes sistemas embarcados y que son componentes en sistemas IoT a diferentes niveles (Edge, Fog o Cloud) son sistemas ciberfísicos. Observando el pasado, presente y futuro de los mismos (por ejemplo, a partir del artículo https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4435108/) y el mapa conceptual presente en el siguiente sitio: https://ptolemy.berkeley.edu/projects/cps/ sintetice el presente y futuro de esos sistemas ciberfísicos y plantee un proyecto (no en detalle) que involucre este tipo de sistemas ciberfísicos en el campus universitario, por ejemplo, teniendo en cuenta sistemas IoT para Smart Campus.

ArchiG05
2163002 - VALENCIA GOMEZ YEISON ARGEMIRO
2161327 - GIL GAMEZ OSCAR ANDRES PArch05
G6 2090041 - DALLOS MARTINEZ LEONARDO HERNANDO ARQUITECTURAS PARA NUBE HIBRIDA (HYBRID CLOUD ARCHITECTURE)

Un nube híbrida puede entenderse conceptualmente combina aquellas propiedades de las nubes privadas y las nubes públicas. Algo interesante que tienen las nubes híbridas, en términos de infraestructura tecnológica es que se ha convertido en el mejor soporte para sistemas IoT, Big Data y móviles. Una manera resumida de ver los conceptos arquitecturales asociados a este tipo de nubes computacionales híbridas esta en el sitio: https://www.networkcomputing.com/cloud-infrastructure/hybrid-cloud-architecture-concepts . Teniendo en cuenta esos conceptos y los elementos y componentes de ese modelo, que soporte de infraestructura podría soportar cada uno de esos elementos y por supuesto, cual es el papel precisamente de arquitecturas computacionales híbridas y heterogéneas (por ejemplo, aquellas que tienen diferentes tipos de procesadores GPUs/CPUS/TPUS/FPGAS/ARM/X86 o de memoria). Piensen en usos para este tipo de nubes en el contexto universitario.

ArchiG06
2162134 - MARTINEZ ESTRADA EMMANUEL DAVID
2161325 - ROZO QUINTANA LICETH YANETH PArch06
2141986 - VARGAS MARTINEZ JESUS SEBASTIAN
G7 2161343 - GOMEZ AVILA ANNGY NATHALIA COMPUTACION EDGE ORBITAL

Edge Computing es un paradigma relativamente reciente que ha permitido la implementación de diferentes soluciones en el ámbito terrestre y aun asi sigue ofreciendo posibilidades poco exploradas. Uno de los usos mas novedosos de Edge computing, es el desarrollado en órbita, que puede consultarse en: https://ieeexplore.ieee.org/document/8674608 Tomando como base este trabajo, expliquen las principales características arquitecturales, los retos enfrentados y los resultados en la evaluación obtenidos. ¿Cuales son los principales problemas que persisten? ¿Cómo se imaginan ustedes que pueden resolverse o al menos tratarse de resolver?

ArchiG07
2160082 - PICON RODRIGUEZ CRISTIAN ANDRES PArch07
2162118 - CARDENAS REYES JEISSON ALEJANDRO
G8 2162017 - HERRERA BLANCO DIANA ALEJANDRA SERVIDORES DE PROCESAMIENTO MASIVAMENTE PARALELO

En el mundo actual, la posibilidad de usar servicios en la nube como Netflix, video juegos en linea, servicios móviles como Instagram o Whatsapp es portado por centros de datos modernos que contienen servidores especializados que soportan procesamiento masivamente paralelo. Teniendo en cuenta los artículos https://ieeexplore.ieee.org/document/8691538 y http://www.ittoday.info/AIMS/Information_Management/3-02-45.pdf, cuales son las principales características de este tipo de servidores. Observe en el mercado técnicamente (no económicamente) que fabricante o integrador ofrece a su criterio (y justificando su decisión) la mejor alternativa y por qué este tipo de servidores igualmente se usan en aplicaciones y frameworks para Deep Learning e Inteligencia Artificial. Muestre un ejemplo real. (No olvide explorar mas referencias bibliográficas y contribuciones tanto de la industria como de la academia).

ArchiG08
2161906 - RODRIGUEZ MARTINEZ KAREN DANIELA
2152499 - VIVIESCAS ROMERO JUAN PABLO PArch08
2151846 - MANTILLA VILLAMIZAR VICTOR ALFONSO
G9 2151830 - DULCEY LIZARAZO SERGIO ANDRES IMPLICACIONES ARQUITECTURALES DE MICROSERVICIOS EN LA NUBE

Los ingenieros de sistemas saben que la implementación de microservicios aseguran la optimización de la calidad de servicio (QoS) en infraestructuras que soportan aplicaciones finales en la nube, pero igualmente plantean retos excepcionales, principalmente cuando se diseñan centros de datos y los servicios asociados. A partir de la contribución que puede consultarse en https://arxiv.org/abs/1805.10351 explique cuales son las principales implicaciones y retos enfocándose en las aplicaciones y mostrando un ejemplo. ¿Cómo es la relación con las microarquitecturas?

ArchiG09
2163022 - PINZON URIBE HAZEL DAVID
2152480 - MORALES OSMA ANDREA JIMENA PArch09
G10 2150403 - VALLEJO HUERTAS MARIO HERNAN COSTO ELECTRICO Y CENTROS DE DATOS SOSTENIBLES

El problema del costo energético relacionado con las capacidades computaciones que nos dicen que tan eficiente computacionalmente es un sistema es un gran reto abierto que se ha tratado con muchas estrategias, no solo a nivel de infrastructura sino también con algoritmos y diferentes mecanismos de implementación de esos algoritmos. El consumo eléctrico por supuesto, es un factor importante al contratar y ofrecer servicios computacionales en la nube, pero también es una responsabilidad ambiental muy alta. Diferentes autores han presentado contribuciones al respecto, por ejemplo, un reciente trabajo que puede verse en: https://ieeexplore.ieee.org/document/7938380 presenta una buena alternativa para reducir el consumo y el costo asociado. Teniendo como base esa contribución, explique de que se trata la computación sostenible y por que es importante, igualmente, ¿por qué este tipo de estrategias son interesantes e implementadas por los diferentes prestadores de servicios y diseñadores de centros de datos?. A manera de información importante, consulte y estime el consumo eléctrico de los centros de datos de la Universidad Industrial de Santander (DSI, SC3UIS en Guatiguará) y si se han observado estrategias para reducir el consumo de energía (por ejemplo, desde el diseño de la solución de infraestructura).

ArchiG10
2150376 - PUERTAS ZULUAGA ALFREDO RAFAEL
2142608 - NIÑO MENDEZ ESTEBAN ANDRES PArch10
2152476 - SEQUEDA CASTILLO KARINA
G11 2162135 - RIVEROS GOMEZ MARIA PAULA ALMACENAMIENTO LIQUIDO EN LA NUBE

El almacenamiento de datos siempre será un reto que desde diferentes perspectivas se ha venido tratando, no solo teniendo en cuenta tecnología, sino estratégias y protocolos de colección, transferencia y guardado de la información. Recientemente, surgió el término Liquid Cloud Storage (las versiones del principal artículo están relacionadas y disponibles por el mismo grupo de autores (y pre-prints) en https://www.researchgate.net/publication/317087859_Liquid_Cloud_Storage , https://arxiv.org/abs/1705.07983 , https://dl.acm.org/citation.cfm?id=3281276 ) Explique de que se trata, teniendo en cuenta las principales características arquitecturales (tanto en infraestructura como en sistema). ¿Por qué es importante la tolerancia a fallos y la reparación?. Den un ejemplo.

ArchiG11
2142665 - DUARTE DELGADO MIGUEL ANGEL PArch11
2151856 - FERNANDEZ CELIS ELKIN DARIO
G12 2162146 - NIÑO PANQUEBA JAIR EDUARDO ARQUITECTURAS PARA AUTOMOVILES AUTONOMOS

Sin duda alguna, uno de los logros mas interesantes en el desarrollo de los sistemas computacionales es la implementación de sistemas inteligentes para la conducción autónoma en vehículos. Mucho se dice de los aspectos arquitecturales en la prensa, pero es importante entender sin duda los parámetros de diseño necesarios y por supuesto los principales retos durante su implementación que derivan en su uso tanto exitoso, como sobre situaciones inesperadas (que pueden ser fatales https://en.wikipedia.org/wiki/List_of_self-driving_car_fatalities ). Teniendo en cuenta el artículo presente en https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8340798, ¿cuales serian las principales características y patrones de diseño arquitectural e implementación para esos vehículos autónomos.? Imagine que se hará el auto de #LaUISQueQueremos para transportar a las personas a través del campus central hacia le parqueadero del estadio. Observando lo anterior, a manera de ejemplo, cómo seria ese macro-diseño (un diseño amplio sin especificaciones detalladas) y qué habría que tener en cuenta para implementarlo?

ArchiG12
2161326 - VERA NEGRON MARIA FERNANDA
2163024 - BUITRAGO MEDINA JONATHAN EDUARDO PArch12

Temáticas de Proyectos (2 Semestre de 2018)

Se publicarán y asignarán la primera semana de septiembre. Se publicarán al regreso después del cese de actividades en el 2019.

Grupo Participantes Tema Artículo Presentado (Disponibles a partir del 16 de Febrero)
1 2130056 - ACEROS BLANCO CARLOS JAVIER

2151257 - ALVAREZ CASTILLO BRYAN DANIEL

2161907 - APARICIO NOVA MARIA CAMILA

2161069 - ARANGO SERRANO JUAN JOSE

Arquitecturas computacionales para Inteligencia Artificial:

Uno de los artículos más citados en computación ha sido el publicado por Gordon Bell y Peter Freeman en 1987 acerca de los requerimientos computacionales para que la inteligencia artificial fuera útil ( DOI: 10.1145/1480083.1480099 Conference: Fall Joint Computer Conferenc, At Anaheim, CA, Volume: 41 : http://dl.acm.org/ft_gateway.cfm?id=1480099 )

Más de 30 años después, sin el desarrollo y las prestaciones actuales de las arquitecturas computacionales, ningún algoritmo de Inteligencia Artificial podría ser implementado y menos aún todos sus usos, tanto así que se dice que estamos en una nueva era dorada de la computación, como la que se tuvo hace 40 años. Observando el artículo reciente propuesto por Jeff Dean, David Paterson y Cliff Young ( https://ieeexplore.ieee.org/document/8259424 ) y comparándolo con el de Gordon Bell, responda en su artículo principalmente si esos requerimientos de hace 30 años se han cumplido hoy en dia y cuales son las principales diferencias y similitudes con lo propuesto en esos años. Igualmente, cuales son las implicaciones sociales en el contexto colombiano y discuta si de alguna manera, se es consciente de esa realidad en torno a la relación Arquitectura de Computadores : Alto Desempeño Computacional : Inteligencia Artíficial.

TF1
2 2151824 - CASTELLANOS CONGUTA YANN KARLO

2142611 - CASTELLANOS VERGAÑO LUIS GERARDO

2162042 - ARENAS MARQUEZ MARTHA ELIANA

2162061 - BARRERA MANRIQUE CARLOS DANIEL

Arquitecturas computacionales para Blockchain:

Mucho se habla de blockchain pero desde el punto de vista de tecnología es necesario tener en cuenta tendencias, requerimientos e implicaciones. La bilbliografía especializada trata el tema teniendo en cuenta por supuesto, que uso se le da la tecnología, como es el caso del articulo presentado por Zibin Zheng ; Shaoan Xie ; Hongning Dai ; Xiangping Chen ;y Huaimin Wang ( https://ieeexplore.ieee.org/abstract/document/8029379 ) Teniendo como base este artículo (pero por supuesto buscando en otras fuentes de información), ¿ tecnológicamente que se debería tener en cuenta para implementar blockchain en algún tipo de aplicación en Colombia? Describa un par de ejemplos, haciéndo enfásis en la arquitectura computacional (hardware/software) y por supuesto, como ingenieros de sistemas que son, discuta acerca de las implicaciones que tiene el uso de blockchain críticamente, más allá de las bondades. (Recomiendo buscar Block Chain Alianza y Block Chain Colombia igualmente).

TF2
3 2152500 - CORDOBA CARRERO JUNIOR ALEJANDRO

2110228 - DIAZ GUERRERO SARA INES

2134305 - CERA BUSTAMANTE ANDRES FELIPE

2160041 - CORZO GOMEZ OSCAR ANDRES

Arquitecturas computacionales Fog y Edge

Desde el desarrollo de Internet, diferentes paradigmas computacionales se han propuesto, los cuales sin duda alguna han tenido un importante impacto en el desarrollo tecnológico y social de nuestra civilización. El Internet de las Cosas y su relación con la computación en la nube, desde hace varios años plantea dos nuevos paradigmas que no pueden verse de manera aislada: Fog and Edge Computing. Teniendo en cuenta el artículo de referencia que se da de base para el desarrollo de este trabajo, ¿cuales son las diferencias entre Fog and Edge Computing? ¿En que se relacionan y por que no pueden separarse los dos paradigmas? Con un ejemplo en la Universidad Industrial de Santander, muestre este paradigma. (https://arxiv.org/pdf/1808.05283.pdf)

TF3
4 2161073 - GOMEZ ORTIZ ANDRES FELIPE

2152497 - GOMEZ ALBIADEZ NATALIA ANDREA

2130535 - GOMEZ ESTUPIÑAN ANGEL FABIAN

2122910 - VILLABONA ARDILA DAVID

Arquitecturas Computacionales para Computación Cuántica:

La Computación Cuántica, más allá que especulativa es una realidad y hoy en dia es un apasionante tema de estudio y un intenso dominio que si bien, inicialmente ha sido explorada por físicos y matemáticos, los problemas fundamentales que existen se tratan desde el punto de vista computacional y arquitectural. Una interesante comparación entre dos arquitecturas existentes puede ser vista en: https://www.pnas.org/content/114/13/3305/ así como un artículo explicativo sobre una arquitectura determinada en: https://dl.acm.org/citation.cfm?id=3177152 . Teniendo en cuenta estas dos fuentes de información como base, explique computacionalmente (desde el punto de vista como ingeniero de sistemas y como arquitecto computacional) como es precisamente esa arquitectura (procesamiento, tipos de procesadores, soporte hacia lenguaje de máquina, etc.)

TF4
5 2162094 - GARAVITO CHTEFAN MAXIMILIANO

2143601 - FRANCO CASADIEGO JOAN SEBASTIAN

2160052 - GOYENECHE CALDERON VALENTINA

2161698 - VILLAMIZAR CORREA DIEGO ARMANDO

Los Supercomputadores como SuperMáquinas para Inteligencia Artíficial y Análitica de Datos:

Recientemente fue publicado por la ACM (https://cacm.acm.org/magazines/2018/11/232217-will-supercomputers-be-super-data-and-super-ai-machines/fulltext) un artículo de como las grandes infrastructuras de HPC en China, hoy en día son lideres para tratar problemas realmente grandes en inteligencia artíficial y análitica de datos. Tomándo como base ese artículo, y por supuesto, como ingenieros de sistemas y especialistas en arquitectura de computadores, exponga porque esas supermáquinas pueden tratar esos superproblemas. Haga una breve discusión sobre que se requeriría en el caso colombiano y de manera crítica, mencioné si se esta al nivel o no para asumir esos retos y que se debe hacer (o si se esta haciendo) para asumirlos de manera competitiva a nivel global.

TF5
6 2150340 - INFANTE MONSALVE NESTOR IVAN

2151482 - LANDAZABAL LANDAZABAL JAVIER DAVID

2152477 - GUTIERREZ CARREÑO NICOLAS GERARDO

2122274 - HERNANDEZ TORRES ANDRES RICARDO

Arquitecturas Computacionales para Apoyo a la Conducción:

Desde hace una decada, gracias a la explosión de las capacidades de hardware, se ha presentado diferentes alternativas para el apoyo a la conducción, desde algoritmos bien conocidos en Inteligencia Artíficial. Recientemente, NVIDIA, presentó Drive 8.0 Software, un framework para desarrollar aplicaciones para ese soporte de conducción (https://blogs.nvidia.com/blog/2019/01/07/drive-software-8-0-automated-driving/?_lrsc=02711740-73bc-44cf-aa67-304ec9076b28&ncid=so-lin-lt-798). Teniendo como base el enlace anteriormente dado, que hardware y soporte tecnológico es necesario para soportar Drive 8.0. Como ingeniero de sistemas, describa dicho framework sin olvidar enlazarlo con el hardware necesario. Discuta como sería una prueba de concepto en Bucaramanga, de manera crítica, teniendo en cuenta todos las variables existentes.

TF6
7 2160075 - MOGOTOCORO FAJARDO JORGE ANDRES

2160063 - MORENO RIOS JUAN PABLO

2160076 - JAIMES ESTEBAN JHEYSON ARLEY

2161329 - JIMENEZ ARCINIEGAS LUIS CARLOS

Rendimiento de las Unidades de Procesamiento Tensor:

Las Unidades de Procesamiento Tensor (TPUs), fueron propuestas desde el 2006 como una evolución de las Unidades de Procesamiento Gráfico (GPUs9 dirigidas principalmente a tratar eficientemente la matemática existente en algoritmos bien conocidos de Inteligencia Artificial. Su rendimiento real ha sido ampliamente estudiando, como puede verse en el artículo de base dado (https://dl.acm.org/citation.cfm?id=3080246) y hoy en dia los grandes centros tanto de investigación como centros de datos de producción las tienen implantadas en sus sistemas. Explique de que se trata teniendo en cuenta cuales son las principales diferencias arquitecturales con las GPUs y las CPUs. Discuta cuales son las implicaciones para los ingenieros de sistemas y desarrolladores, al existir las TPUs.

TF7
8 2142669 - RANGEL FLOREZ DEISY KATHERINE

2160062 - NAVAS BURGOS MARIA FERNANDA

2151857 - ROJAS PRADA WILDER STEVEN

El regreso grandioso de los computadores vectoriales:

En el 2018, NEC anunció su motor de procesamiento NEC SX Aurora TSUBASA, que ya se encuentra implantado en diferentes soluciones en el mercado (https://www.nec.com/en/global/solutions/hpc/sx/index.html y https://dl.acm.org/citation.cfm?id=3291728 ) , mostrándose como el gran regreso de los costosos pero excelentes procesadores vectoriales. Teniendo en cuenta las referencias dadas, exponga porque es interesante la computación vectorial hoy en dia y que ha hecho tan atractiva e implantable la solución propuesta por NEC. No olvide comparar si existen otras opciones por otros fabricantes a nivel mundial. En el contexto colombiano, ¿En que usaría este tipo de procesadores vectoriales y que implicaría?.

TF8
9 2160055 - LIZARAZO SANDOVAL MARIA DANIELA

2140182 - MARTINEZ CIFUENTES JOHN SEBASTIAN

2151252 - REY OLARTE LIZETH KATHERINE

2120372 - SANTOS SARMIENTO CARLOS ARLEY

Controladores de Memoria:

La memoria siempre ha sido un problema y un reto interesante computacionalmente y más hoy, cuando las capacidades de procesamiento y el gran volumen de datos plantean requeirimientos realmente altos que involucran pensar de una manera diferente la memoria. Uno de los retos tiene que ver con los controladores de memoria. Teniendo en cuenta el siguiente articulo como base ( https://dl.acm.org/citation.cfm?id=2039374 ) describa de que se tratan los controladores de memoria, porque es importante ese control de la misma, y como es "visible" desde las aplicaciones.

TF9
10 2160065 - NIÑO RODRIGUEZ JUAN DAVID

2161635 - QUINTERO LEON DANIELA

2161636 - SANCHEZ ARCINIEGAS OMAR

2150628 - VINAZCO BUITRAGO JHOAN SEBASTIAN

Arquitectura en Cloud Computing

Aunque se ha escrito y el concepto de cloud computing es ampliamente usado en nuestro contexto, es necesario conocer las implicaciones que se tiene desde el punto de vista arquitectural (computacional) y los retos asociados. Precisamente, observando los microservicios es necesario tener en cuenta esas implicaciones que influyen en el diseño de infraestructuras y centros de recursos que soporten servicios en la nube. Teniendo en cuenta el artículo de base y contextualizando como ingenieros de sistemas (https://www.computer.org/csdl/letters/ca/2018/02/08362750.pdf ) exponga esas implicaciones desde los microservicios y discuta acerca de lo necesario para construir un centro de recursos de servicios en la nube.

TF10
11 2142612 - VARGAS CAMACHO JONATTAN STIVENT

2152890 - VARGAS TRIANA JAVIER ALFONSO

2160072 - SINUCO TIRADO OSCAR ESNEYDER

2160066 - VEGA ARRIETA JOSE SAUL

Siguientes Direcciones en Almacenamiento de Datos

Dia a dia se produce mucha información y aunque existen grandes capacidades de procesamiento, esta no logra procesarse completamente y la información para futuros usos debe almacenarse. Igual pasa con la información ya procesada, genera nuevos datos, lo cual implica que se piense en nuevas maneras de almacenar información, tanto desde el punto de vista físico como lógico. Recientemente, los físicos han propuesto nuevas alternativas de almacenamiento explorando propiedades de los materiales (https://phys.org/news/2018-06-next-generation-storage.html y https://www.osapublishing.org/oe/abstract.cfm?uri=oe-26-9-12266 ) el cual para los ingenieros de sistemas y los arquitectos computacionales plantea nuevos y dificiles retos. Teniendo en cuenta la información de base y como ingeniero de sistemas, explique de se tratan esas direcciones planetadas y que retos plantean (por ejemplo, sistema de archivos, coherencia, programabilidad, técnicas de tratamiento de datos, etc.)

TF11

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
2142635 - ALVAREZ AMADO ADEL FARID
2142618 - CARRIZALES DUARTE ALVARO
2130138 - CHACON LOPEZ JUAN FELIPE
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
2150174 - CHIA LERZUNDY JOSE ANDRES
2152479 - ESPITIA MUÑOZ FABIAN ALBERTO
2151476 - FERNANDEZ DIAZ CRISTIAN MAURICIO
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
2130284 - HERNANDEZ ARIAS ANDRES CAMILO
2152903 - LUCENA LUNA LISETH VERONICA
2142641 - MANTILLA DIAZ LAURA JULIANA
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
2143696 - MANTILLA LOPEZ JUAN DAVID
2150011 - MEDINA BLANCO DIEGO FERNANDO
2152501 - MONTENEGRO MARTINEZ EDGAR ANDRES
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
2151841 - MORENO TARAZONA ALEJANDRA
2150782 - PALOMINO FLOREZ WILLIAM GIOVANY
2151215 - PAREJA FONSECA LAYONETH ENRIQUE
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
2142657 - PARRA BASTOS LIZETH PAOLA
2130478 - PEREA PEREZ JORGE LUIS
2150606 - PEÑA CONTRERAS HENRY IVAN
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
2150436 - RAMIREZ BRUJES DOUGLAS ANDRES
2152779 - RAMIREZ MUÑOZ ALEJANDRO
2151287 - RIVERA CEPEDA BRAYAN ORLANDO
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
2122079 - ROJAS CHACON DAMAR NICOLAS
2150286 - ROJAS ROBLES MARIANNE SOLANGEL
2152488 - RUIZ GARCIA LINA MARCELA
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
2130539 - TRIANA MOJICA JORGE ANDRES
2150877 - VALDIVIESO SUAREZ LUIS HERNANDO
2142627 - PEÑA HERRERA JUAN FELIPE
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
2151843 - VALENZUELA RINCON BRAYAN CAMILO
2142626 - VEGA BORRERO BERNARDO ANDRES
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

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

Notas de las Evaluaciones del Curso 2019-1

Indicaciones sobre los acrónimos utilizados (Recuerde que la revisión se hará el MIERCOLES 28 de agosto de 14:00 a 16:20

  • E1: Evaluación 1
  • E2: Evaluación 2
  • E2+B: Evaluación 2 + Bonus : Este bonus se le adjunta de acuerdo al extra por quices y laboratorios. Los laboratorios son calculados sobre 10, teniendo en cuenta que hubo 12 entregas + 1 quiz escrito.
  • E3: Evaluación 3
  • E3 +B: Evaluación 3 + Bonus : Este bonus se le adjunta de acuerdo al extra por quices y laboratorios. Los laboratorios son calculados sobre 10, teniendo en cuenta que hubo 12 entregas + 1 quiz escrito. El quiz escrito hizo parte de la prueba de control de asistencia.
  • TF: Trabajo Final : Se calculó teniendo en cuenta tanto la presentación como el artículo.
  • PL: Prácticas y Laboratorios : Hubo 12 Entregas calificadas. Se cálculo la nota final , sin embargo, sobre diez.
  • DEF: Definitiva
Notas2019-1O1.png
Notas2019-1O2.png

BIBLIOGRAFÍA Y FUENTES DE INFORMACION

1.Patterson and Hennesy, Computer Organization and Design (The Hardware, Software Interface)]


2. Patterson and Hennesy, Computer Architecture; A Quantitative Approach

3. Commer, Douglas, Essentials of Computer Architecture

4. TED Talks

5. Algunos enlaces interesantes

PRACTICAS 2019

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 Viernes 4 de Octubre de 2019': 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. Esta práctica se realizará en presencial (DEBEN TRAER AUDIFONOS) y deberá ser enviada a mas tardar a las DIEZ (10) MINUTOS ANTES DE FINALIZAR LA SESIÓN DE PRÁCTICAS al correo electrónico del profesor con las condiciones expuestas anteriormente, teniendo en cuenta el siguiente Asunto: PRACTICA-1 INTRODUCCION A LAS PRACTICAS DE ARQUITECTURA. Recuerde que en el cuerpo del mensaje enviado, debe colocar su nombre completo, grupo al que pertenece y código. Recuerde, debe enviar el documento en .pdf

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:

  1. ¿Qué es lo más trascendental para usted en esta charla?
  2. ¿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?
  3. 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?.
  4. Hoy en día se habla mucho de la cuarta revolución industrial y la transformación digital. ¿Qué es cada una de ellas? . Suponiendo que se gradúa mañana ¿Tiene claro (o no) como hacer parte de esas transformaciones? . Justifique su respuesta.

Observe las dos caricaturas que se han colocado en el wiki:

300px-ArchitectureCartoon.png y Theory-vs-practice.jpg

  1. ¿Qué es cada una de ellas? ¿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.

  1. 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?
  2. 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.
  3. 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.
  4. 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.
  5. 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?.
  6. 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.
  7. 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:

  1. Se realizará de manera individual.
  2. 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.)
  3. 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.

  1. 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).
  2. 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.
  3. 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.
  4. 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).
  5. Escoja otro ganador del ACM Turing y responda las mismas preguntas anteriores.
  6. 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.

  1. 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: Multinúcleos y Multiprocesamiento

Los sistemas computacionales desde hace décadas, explota las posibilidades de concurrencia y paralelismo en procesamiento aprovechándose de la posibilidad de aglomerar multiples núcleos de procesamiento y multiples procesadores. Esto permite tener grandes capacidades computacionales que soportan diversos tipos de aplicaciones, algunas como las de Inteligencia Artificial que sin esta explosión cámbrica de procesamiento, sería imposible hoy implementar algoritmos para tales fines. Profesor Satoshi Matsuoka en el 2017 durante una presentación en Zurich (https://www.cse-lab.ethz.ch/wp-content/uploads/2017/12/171208_Talk-1_Satoshi-Matsuoka.pdf) utilizó el término "cambrian explotion" (en inglés) por primera vez y en el 2018 se formalizó el término durante la Conferencia HPDC ( https://dl.acm.org/citation.cfm?id=3225055 )

Observe detenidamente las diapositivas de la presentación del profesor Satoshi Matsouka, consulte fuentes y citaciones por internet y responda las siguientes preguntas:

  1. ¿A qué se refiere cuando usa el término Cambrian Explotion of Computing...? ¿Por qué la relación de similitud con la explosión cámbrica desde el punto de vista geológico?
  2. ¿Qué son las aplicaciones exascale y por qué son importantes?
  3. ¿Qué son las arquitecturas computacionales neuromórficas?
  4. ¿A qué se refiere la computación centrada en datos (data-centric computing)?
  5. ¿Por qué la memoria es importante en esta explosión cámbrica? ¿Qué se ha propuesto hasta el momento?
  6. ¿Qué se plantea en términos de interconexión de acuerdo a la presentación? ¿Por qué es importante?.
  7. ¿Qué características comunes tienen las aplicaciones de Inteligencia Artificial y de Big Data que hacen que requieran arquitecturas de computación de alto rendimiento?
  8. Teniendo en cuenta la presentación y las consultas asociadas ¿Qué se imagina que pasará en los siguientes 20 años de computación para las nuevas generaciones de procesadores?

Puede observar igualmente el video de la charla sobre Post K architecture en: https://www.youtube.com/watch?v=vQjy0t9FtQI

No olviden que esta práctica se hace individual y que en el cuerpo del correo debe indicarse el nombre completo, código y grupo al que pertenece.

Séptima 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.

  1. 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.
  2. Haga lo mismo con un programa para sumar dos números enteros menores que 100.
  3. 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.
  4. Responda las siguientes preguntas:
    1. ¿Qué es compilar?
    2. ¿Cual es la función del compilador?
    3. ¿Todos los compiladores son iguales?
    4. ¿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: Práctica Especial

Los valores éticos y morales en las diferentes profesiones son un motivo de discusión, ya que si bien, en algunos casos podrían considerarse principios, en otros de acuerdo al mismo desarrollo tecnológico y social. Precisamente, es por eso que los grupos sociales son los que generan esos códigos de ética, llaménse asociaciones o grupos e interés o de presión. La ACM (www.acm.org) es una asociación fundada en 1947, que reúne precisamente a la comunidad en computación e informática a nivel mundial, en la cual nosotros nos vemos implicados. En el 2018, se propuso un código de ética teniendo en cuenta tanto conducta profesional como principios éticos generales, teniendo en cuenta varios aspectos importantes como son el hecho de la responsabilidad social y humana en el cual los profesionales en computación tienen ante un mundo cambiante, cuyas transformaciones se han dado precisamente por nosotros como computistas. El código de Ética puede consultarse en: https://www.acm.org/code-of-ethics

En parejas, siguiendo las indicaciones que se han manejado para la entrega de informes, responda lo siguiente:

  1. ¿Que opina de los principios éticos generales de la profesión? Argumente de manera concreta su respuesta.
  2. ¿Cree que hay puntos éticos que no se han tratado en estos principios? Justifique su respuesta.
  3. Los puntos 1.5 y 1.6., son muy discutidos hoy en dia, sobre todo por la proliferación de motores y robots que pueden tratar los datos personales e información sensible (Por ejemplo, "la piratería" de software y algoritmos o hay que ver el caso de Cambridge Analytica con Facebook) ¿Cree que estos puntos se han tratado adecuadamente en nuestro medio colombiano? Justifique su respuesta.
  4. La responsabilidad profesional en computación (que puede observarse en la sección dos) genera hoy en dia posiciones encontradas en muchos aspectos (por ejemplo, cuando se aspira a contratar "toderos" o a creerse igualmente "que puede hacer de todo", ignorando las competencias y por supuesto subvalorando el conocimiento y niveles de formación (Cómo el conocido caso del ingeniero recién graduado que sepa de todo, varios idiomas y haya tenido años de experiencia , pero con una asignación salarial ridícula). De la misma manera, existen versiones beta, o fraccionarias consecutivas, que muestran desarrollos parciales, no robustos y que requieren constantes actualizaciones por supuesto, respondiendo a oportunidades de mercado (por el ejemplo el caso de los productos obsoletos o que se vuelven de poco desempeño cuando salé la versión nueva al público) ¿Por qué cree que en el medio colombiano y regional la responsabilidad y las competencias sean subvaloradas? Analice un caso conocido y expongalo para complementar su respuesta.
  5. Los líderes, debido a su responsabilidad al influenciar e impactar, tiene ciertas características que incluso en el contexto no profesional, buscamos justificar, ignorando implicaciones. ¿Creen que los aspectos relacionados con el liderazgo están tratados integralmente en el código propuesto? Justifique su respuesta.
  6. No sólo el futuro de la computación, sino de la misma humanidad depende tanto de excelencias éticas y técnicas que permiten desarrollo tecnológico y social. ¿Porque es importante observar los principios éticos además del conocimiento científico y tecnológico? Justifique su respuesta.
  7. ¿Se sienten identificados o no con el código propuesto por la ACM? Justifique su respuesta.
  8. Teniendo en cuenta la pregunta que se le colocó en el tablero, ¿cree que existe una confrontación entre las dos visiones? Justifique su respuesta.

Novena Práctica: Arquitectura General - En Parejas

El objetivo de esta práctica es comprobar las capacidades para identificar planos de arquitectura de algunos sistemas y entenderlos.

  1. 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?
La magen, 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/)  

(Este tipo de gráficas pueden aparecer en las evaluaciones)

2. CISC VS RISC

En la clase anterior se habló sobre aspectos importantes y diferenciadores de cada una de las dos tecnologías RISC y CISC. Observando la siguiente gráfica, responda las preguntas dadas (Tenga en cuenta la conclusión final dicha en clase).

CISCVSRISC.jpg
  • ¿Cuáles son las principales diferencias arquitecturales?
  • Abstraiga la implantación sobre el sistema (recuerde desde el programa en lenguaje de alto nivel hasta la circuiteria), con un ejemplo de cada uno, muestre las diferencias de la abstracción (si existe) y como la explicaría con un ejemplo.
  • Muestre en el mercado dos ejemplos de cada uno de las tecnologías y una tecnología que combine las dos.
  • ¿Consulte que lenguajes de programación, compiladores y sistemas operativos existen para RISC que igualmente están con soporte para CISC? Enumére tres ejemplos de cada uno.
  • De acuerdo a lo dicho en clase (y consultando por Internet), ¿Que retos y problemas plantea RISC?

Práctica: Simulacro de Examen

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, para este segundo semestre, los martes en la tarde en el horario de 13:30 hasta las 16:30 puede buscarse en la oficina LP 226 de la Escuela de Ingenieria de sistemas. Se recomienda sin embargo, debido a situaciones extraordinarias sacar una cita previa via email.

Algunas sesiones especiales serán programadas en el transcurso del semestre.