•task-parallelism ("coarse grain")
•multiple independent code segments/programs are run concurrently
•same initial data or different
•same code or different
•data-parallelism ("fine grain")
•same code runs concurrently on different data elements
•usually requires synchronization (better network)