Raúl Ramos-Pollán, Universidad Industrial de Santander, [+info] rramosp@uis.edu.co
Estaremos usando:
- una máquina virtual configurada para las lecciones 1, 2 y 3, con CentOS 6, OpenMP y Python Anaconda para que puedas realizar de manera independiente tus ejercicios (contáctame para obtenerla)
- una máquina virtual con la instalación del Spark para la lección 4. Seguiremos parte del contenido del curso en EDX sobre Scalable Machine Learning
- la infraestructura
guane
de Centro de Supercómputo y Cálculo Científico de la UIS sobre todo para las pruebas de escalabilidad y uso de CUDA/GPUs (instrucciones de acceso más abajo)
Crea una copia local de este repositorio para trabajar en los ejercicios desde la máquina virtual del curso y lanza tu servidor personal del entorno de ejecución de ipython notebooks
:::console
git clone https://bitbucket.org/rramosp/ucaldas.20152.msc
ipython notebook
Temas: Uso infraestructura SC3-UIS, Paralelismo y computación, Computación distribuida, Arquitecturas de procesadores
Refs: Supercomputación y Cálculo Científico UIS [web site], Caché effects [enlace] , HPC Course @UWisc [enlace]
Ejercicios:
- Lección 1 - C warmup
- Lección 1 - Alineamiento de Datos - parte 1
- Lección 1 - Alineamiento de Datos - parte 2
- Lección 1 - Líneas de Caché
- Lección 1 - Tamaños de Caché
Temas: Modelo de programación, Variables compartidas y sincronización, Tareas, Optimización
Refs: Tim Mattson, Intel [video lectures, materials], Lista de recursos [enlace]
Ejercicios:
- Lección 2 - OpenMP warmup
- Lección 2 - PI paralelo
- Lección 2 - PI mejorado
- Lección 2 - Loops
- Lección 2 - Reducers
Temas: Modelo de programación, Distribución de Tareas, Comunicaciones, Coordinación, Sincronización, Procesamiento de imágenes.
Refs: IPython for Parllel Computing
Ejercicios:
- Lección 3 - Introductión a Python
- Lección 3 - IPython Parallel Warmup
- Lección 3 - Cómputo de PI en multinodo
- Lección 3 - Exploración de configuraciones de clasificadores automáticos (machine learning)
- Lección 3 - Procesamiento de imágenes
Temas: Modelos de paralelismo en Big Data, Resilient Distributed Datasets, Modelo de programación, Acciones y Operaciones Spark
Refs: Seguiremos parte del curso sobre Scalable Machine Learning en EDX. Los siguientes ProblemSets son parte de los assignments de dicho curso.
Ejercicios:
- Lección 4 - Procesado de logs web
- Lección 4 - Análisis de texto y resolución de entidades
- Lección 4 - Sistemas de recomendación
- Lección 4 - Reconocimiento de Audio
- Lección 4 - Predicción de navegación web
si, por ejemplo, tu número de estudiante es el 03 usa la cuenta estudiante03
y el puerto 9903
en los comandos siguientes.
Entra en la máquina de salida de la Universidad de Caldas:
:::console
ssh progpara@c-head.ucaldas.edu.co -L9903:localhost:9903
Usa la cuenta compartida para entrar en la máquina toctoc
y en la máquina guane
que son los puntos de entrada para la infraestructura de la UIS:
:::console
ssh ucaldas@toctoc.grid.uis.edu.co -o ServerAliveInterval=30 -L9903:localhost:9903
ssh ucaldas@guane -L9903:localhost:9903
Una vez en guane
, usa tu cuenta para entrar en la máquina reservada para el curso (p.ej. guane01
, confirma con el profesor cuál está disponible durante el curso):
:::console
ssh estudiante03@guane01 -L9903:localhost:9903
Si es la primera vez que entras, crea una copia del repositorio de ejercicios para poder trabajarlos de manera independiente
:::console
git clone https://bitbucket.org/rramosp/ucaldas.20142.msc
Lanza tu servidor personal de notebooks de ipython:
:::console
ipython notebook --port 9903 --no-browser
Abre la siguiente dirección en un browser de tu computadora de escritorio
:::console
http://localhost:9903