본문 바로가기

개발에 도움이 되는/CS

동시성(Concurrency), 병렬성(Parallelism)

- 동시성 : 여러 개의 작업이 있을 때 Context Switching을 통해 여러 작업을 시분할 방식으로 처리하여 동시에 실행되는 것 처럼 보이는 것 (ex. 싱글 코어에서 여러 작업 수행)

 

- 병렬성 : 실제로 동시에 여러 작업이 처리되는 것 (ex. 멀티 코어)

 

 

동시성은 여러 일을 한꺼번에 다루는 데 관한 것이다.
병렬성은 여러 일을 한꺼번에 실행하는 데 관한 것이다.

- Rod Pike (Google Developer)

 

 

 

- 암달의 법칙 (Amdahl's Law) : 코어가 N배 늘어나더라도 성능이 N배로 늘어나지 않음. 그 이유는 프로그램의 모든 부분을 Parallel 하게 짤 수 없기 때문에 이런 현상이 발생

 

 

반응형