파이썬 코드 실행과 코어 할당에 관해 궁금한 것이 있습니다.
조회수 1165회
파이썬 코드를 단 하나만 실행시킨다면 상관이 없겠지만..
서로 다른 파이썬 코드를 동작시킬 때 cpu는 어떻게 할당될까에 대한 궁금증이 있습니다.
멀티프로세싱을 하지 않는 이상 파이썬은 1개의 코어만을 사용한다고 알고 있는데요.
그렇다면, 파이썬 코드를 2개 이상 실행하게 되면 이 코드들을 1개의 메인 코어에서 모든 코드들을 할당받게 되는지, 아니면 각각의 코어들이 코드를 하나씩 맡게 되는지 궁금합니다.
직접 확인해보면 좋겠지만.. 안타깝게도 cpu 코어별로 할당된 작업들을 어떻게 확인하는 방법을 몰라서.. ㅠㅠ
혹시 저와 비슷한 궁금증을 가지고 확인해보셨을 분들이 계시지 않을까 생각하여 이렇게 질문을 남깁니다.
1 답변
-
스케줄링 작업은 OS의 역할입니다. 사용하시는 OS에서 멅티코어 환경에서 어떤 식으로 코어를 분배하고 스위칭하는지 알아보셔야 합니다.
언급하신 멀티프로세싱은 GIL-free 하도록 새로운 인터프리터를 통해 파이썬 코드를 실행하는 방법입니다. 이때에도 각 인터프리터에 어떤 코어가 할당될지는 전적으로 OS의 결정입니다. 같은 코어에서 실행될 수도 있고 상황에 따라 다른 코어로 스위칭 될 수도 있겠죠.
댓글 입력