Computer Science/Operating System
동시성 vs 병렬성
Prower
2018. 10. 25. 14:00
728x90
반응형
[동시성(Concurrency)]
싱글코어에서 멀티쓰레드를 동작시키는 방식
싱글코어가 여러개의 쓰레드를 번갈아 가면서 작업(멀티 프로그래밍)
논리적인 병렬성 구현
쓰레드가 병렬적으로 실행되는것 처럼 보임
[병렬성(Parallelism)]
멀티코어에서 멀티쓰레드를 동작시키는 방식
멀티코어가 여러개의 쓰레드를 동시에 작업(멀티 프로세싱)
물리적인 병렬성 구현
쓰레드가 실제로 병렬적으로 실행됨
데이터 병렬성
- 같은 작업을 병렬처리 하는 방식
- 전체 데이터를 서브 데이터로 나누어 서브 데이터들을 병렬처리
- 서브 데이터는 코어 수 만큼 나뉨
- Java 8에서 지원하는 병렬 스트림이 데이터 병렬성을 사용함
작업 병렬성
- 서로 다른작업을 병렬처리 하는 방식
[Parallelism vs Concurrency]
(출처 : https://www.raywenderlich.com/5370-grand-central-dispatch-tutorial-for-swift-4-part-1-2)
[참고 자료]
http://yolojeb.tistory.com/10
http://atin.tistory.com/567
728x90
반응형