Introducció al paral·lelisme · 1.6
Abstracció del codi en tasques
Per paral·lelitzar cal entendre el codi i identificar què es pot fer alhora. Per això abstraiem el programa en tasques, unitats lògiques de treball que analitzarem per temps, dependències i conflictes.
Conceptes clau
- Tasca
- Estratègia de paral·lelització
- Temps, dependències i conflictes de cada tasca
Per evitar aquests problemes a l’hora de paral·lelitzar, és clau entendre el codi i identificar quines parts es poden executar en paral·lel i quines han d’executar-se abans que d’altres.
Per fer-ho, abstraurem el programa en tasques:
Aquesta abstracció en tasques definirà l’estratègia de paral·lelització i ens permetrà separar la lògica global del programa en parts manejables per analitzar:
- el temps d’execució de cada tasca,
- les dependències,
- i els possibles conflictes (accés concurrent a dades compartides).