Unidad 1: Clusters en computación paralela/distribuida#
Contenido de la unidad#
![](_static/images/contenidoU1.png)
Introducción al HPC#
HPC: Cualquier técnica computacional que soluciona un problema grande de forma más rápida que usando posiblemente sistemas simples.
HPC ha tenido gran impacto sobre todas las áreas de ciencias computacionales e ingenieria en la academia, gobierno e industria.
Muchos problemas han sido solucionados con técnicas de HPC que eran imposibles de solucionar con estaciones de trabajo individuales o computadores personales.
![](_static/images/U1_1.png)
Procesadores de alto rendimiento
![](https://hardzone.es/app/uploads-hardzone.es/2023/02/Computacion-Alto-Rendimiento-HPC-Portada.jpg)
Computación paralela
Sistemas simples con varios procesadores trabajando sobre el mismo problema
Computación paralela Vs Computador paralelo
Computación Paralela: el uso de múltiples computadores o procesadores trabajando en conjunto sobre una tarea común
Computador Paralelo: un computador que contiene múltiples procesadores:
Cada procesador trabaja sobre una sección del problema
Los procesadores permiten intercambio de información con otros procesadores
![](_static/images/U1_14.png)
![](_static/images/U1_15.png)
Computación/programación Concurrente
![](_static/images/U1_6.png)
la programación concurrente se enfoca en manejar múltiples tareas al mismo tiempo (ya sea simultáneamente o dando la ilusión de simultaneidad), la programación paralela se enfoca en la división y ejecución simultánea de tareas para resolver un problema más grande en menos tiempo.
Computación Distribuida
Varios sistemas acoplados por un secuenciador de trabajo sobre problemas relacionados
![](_static/images/U1_12.png)
Sistemas distribuidos
![](_static/images/U1_5.png)
Computación grid
![](_static/images/U1_3.png)
Varios sistemas acoplados por software y redes para trabajar en conjunto en problemas simples o en problemas relacionados.
Unión de Clusters de computadores, recursos computacionales, datos, grupos de investigación, científicos, etc., distribuidos geográficamente y conectados mediante redes WAN
Funcionamiento de la computación grid
Middleware para comunicación transparente y explotación de recursos.
El objetivo final es usar recursos remotos
Se requieren conexiones de redes rápidas
El grid busca el uso eficiente de los recursos
Es escencial la seguridad centrada en: políticas de acceso, autenticación y autorización.
Es importante estandarizar las aplicaciones grid.
![](_static/images/U1_13.png)
![](_static/images/U1_16.png)
Arquitectura Grid
Capa de aplicación
Capa de middleware
Capa de recursos
Capa de red
Middleware
El autentico cerebro del grid, se encarga de las siguientes funciones:
Encontrar lugar conveniente para ejecutar la tarea solicitada por el usuario
optimizar el uso de recursos que se encuentren dispersos
organizar el acceso eficiente a los datos
autenticar los diferentes elementos
ejecutar tareas
monitorizar el progreso de los trabajos en ejecución
gestionar automáticamente la recuperación frente a fallos
Notificar el fallo, culminación de la ejecución de una tarea y sus resultados.
![](_static/images/U1_17.png)
¿Dónde corre lo que se va a programar en el curso?#
Infraestructura: Cluster#
![](_static/images/U1_2.png)
Colas y calendarizadores#
![](_static/images/U1_20.png)
Administrar recursos del Clúster
Priorizar trabajos
Limitar capacidad de cómputo
Administrar usuarios
![](_static/images/U1_21.png)
![](_static/images/U1_22.png)
Algunos calendarizadores#
![](_static/images/U1_23.png)
Flujo de trabajo con calendarizadores#
![](_static/images/U1_24.png)
Así se ve un job para calendarizador#
![](_static/images/U1_25.png)
Infraestructura: Cloud#
![](_static/images/U1_4.png)
Externalizar TI a proveedores de servicio
Presentar transparencia al usuario final
Asignación dinámica de recursos bajo demanda (Sin compartir) – Pago asociado
Virtualización
Computación cloud#
![](_static/images/U1_18.png)
Infraestructura tradicional Vs Cloud#
![](_static/images/U1_19.png)
CPU & GPU & TPU#
![](_static/images/U1_7.png)
![](_static/images/U1_9.png)
CPU & GPU#
![](_static/images/U1_8.png)
Actualidad del software para Big Data#
![](_static/images/U1_10.png)
Aplicaciones del HPC#
![](_static/images/U1_11.png)