파이썬에서 코드 속도 개선을 위해 병렬처리 프로세스 관련 기술을 알아보면 threading과 mutiprocessing중 하나를 선택할 수 있다. 이 두개의 차이점은 구현하려는 프로세스가 cpu즉 연산과 입출력 중에 어느것이 더 많은 작업이 들어가느냐에 대한 차이가 있다.
나는 주로 머신러닝 기반의 코드를 구현하기 때문에 cpu 연산이 많이 들어가게 된다. 이 경우에는 mutiprocessing으로 구현하면 성능이 크게 상승한다.
참고
Threading(쓰레딩) vs Multiprocessing(멀티프로세싱) 비교
출처: https://yeonfamily.tistory.com/3
CPU Bound vs I/O Bound
출처: https://taes-k.github.io/2021/06/05/cpu-io-bound/