Modelo de programación paralela
Esto requiere mecanismos de protección, tales como cerraduras, semáforos y monitores para controlar el acceso concurrente.Por ejemplo, un bucle for puede crear hilos para cada iteración que actualiza una variable en paralelo.Un programa paralelo está compuesto de procesos que están ejecutándose simultáneamente.Esta clasificación también puede ser referida como esqueletos algorítmicos o paradigmas de programación paralela.Estos procesos suelen tener conductas distintas, que hace hincapié en la necesidad de comunicación.El paralelismo de datos por lo general se clasifica como MIMD/SPMD o SIMD.Los sistemas analizados en la primera categoría, se caracterizan por el aislamiento del espacio de diseño abstracto visto por el programador.