[Python] 파이썬 multiprocessing


[Python] 파이썬 multiprocessing

multiprocessing 파이썬은 기본적으로 여러 CPU를 사용하지 않는다. 단일 코어 시대에 설계 되었고 병렬 처리를 효율적으로 실행하기가 어렵기도 하다. 로직을 병렬화하면 N배의 속도를 기대하지만 실제로는 프로세스간 통신 비용이 발생 등 N배 만큼에 성능 향상이 이루어지지는 않는다. 또는 어떻게 설계하냐에 따라서 오히려 더 느려지는 경우도 있기 때문에 설계를 잘 해야한다. multiprocessing 모듈은 프로세스와 스레드 기반의 병렬 처리를 사용해 작업 대기열을 분산시키고 프로세스 간에 데이터를 공유할 수 있도록 한다. 작업을 병렬화 하려면 순차적으로 작성하는 방식과는 달리 다른 관점으로 작성을 해야하며 일반적으로 디버깅이 어렵다. 따라서 성능도 중요하지만 유지보수 측면에서 단순하게 작성을 해..


원문링크 : [Python] 파이썬 multiprocessing