2.14.13 PL/Concurrencia y Paralelismo
Apoyo a la concurrencia es una cuestión de programación-idiomas fundamental con material rico en diseño de lenguajes de programación, implementación del lenguaje y la teoría del lenguaje. Debido a la cobertura en otras áreas de conocimiento, esta unidad de conocimiento electiva tiene como único objetivo complementar el material incluido en el Cuerpo de Conocimientos de otros lugares. Cursos sobre lenguajes de programación son un excelente lugar para incluir un tratamiento general de concurrencia incluyendo este otro material PDParallelandDistributedComputing, SFParallelism
Temas:
Electivo
- Construye para las variables de rosca-compartida y la sincronización de memoria compartida.
- Modelos de Actor.
- Futuros.
- Soporte de lenguaje para paralelismo de datos.
- Modelos para pasar mensajes entre procesos secuenciales.
- Efecto de modelos de consistenicia de memoria en la semántica del lenguaje y la correcta generación de código.
Objetivos de Aprendizaje (Learning Outcomes):
Elective:
- Escribir programas concurrentes correctos usando múltiples modelos de programación, tales como memoria compartida, actores, futures y primitivas de paralelismo de datos [Usar]
- Usar un modelo de paso de mensajes para analizar un protocolo de comunicación [Usar]
- Explicar porqué los lenguajes de programación no garantizan consistencia secuencial en la presencia de la carrera de datos (data race) y qué es lo que los programadores deben hacer como resultado de esto [Familiarizarse]
Generado por Ernesto Cuadros-Vargas , Sociedad Peruana de Computación-Peru, basado en el modelo de la Computing Curricula de IEEE-CS/ACM