Data splitting
동기화 문제를 방지하고자 적절히 나눠줘야 한다.
Parallelism
multi core system에서 가능한 term이다.
지금 바로 동시에 수행한다.
그 시간에 하나의 task가 아닌 여러 tasks를 동시에 수행한다.
Concurrency
일정 시간에 tasks를 수행한다.
하나의 core에서 말할 수 있다.
ex. 2ms간 무슨 일을 했어 ? t1, t2, t3 했어
Data parallelism
Task parallelism
thread 개수가 증가할 수록 HW의 support가 필요하다.
thread, process serial하게 수행하는 구간, parallel하게 수행하는 구간이 따로 있다.
User thread
Kernel thread
Thread Pools