파이썬 코드 실행과 코어 할당에 관해 궁금한 것이 있습니다.

조회수 1165회

파이썬 코드를 단 하나만 실행시킨다면 상관이 없겠지만..

서로 다른 파이썬 코드를 동작시킬 때 cpu는 어떻게 할당될까에 대한 궁금증이 있습니다.

멀티프로세싱을 하지 않는 이상 파이썬은 1개의 코어만을 사용한다고 알고 있는데요.

그렇다면, 파이썬 코드를 2개 이상 실행하게 되면 이 코드들을 1개의 메인 코어에서 모든 코드들을 할당받게 되는지, 아니면 각각의 코어들이 코드를 하나씩 맡게 되는지 궁금합니다.

직접 확인해보면 좋겠지만.. 안타깝게도 cpu 코어별로 할당된 작업들을 어떻게 확인하는 방법을 몰라서.. ㅠㅠ

혹시 저와 비슷한 궁금증을 가지고 확인해보셨을 분들이 계시지 않을까 생각하여 이렇게 질문을 남깁니다.

1 답변

  • 좋아요

    0

    싫어요
    채택 취소하기

    스케줄링 작업은 OS의 역할입니다. 사용하시는 OS에서 멅티코어 환경에서 어떤 식으로 코어를 분배하고 스위칭하는지 알아보셔야 합니다.

    언급하신 멀티프로세싱은 GIL-free 하도록 새로운 인터프리터를 통해 파이썬 코드를 실행하는 방법입니다. 이때에도 각 인터프리터에 어떤 코어가 할당될지는 전적으로 OS의 결정입니다. 같은 코어에서 실행될 수도 있고 상황에 따라 다른 코어로 스위칭 될 수도 있겠죠.

    • 답변 감사합니다. 현재 윈도우와 리눅스 2개의 os에서 코드들을 실행하는데, 코드 실행 중에 부하가 되면 할당 코어가 작업 중에 변경되기도 할까요? 초보자 2021.5.31 09:55

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)