프로파일링의 필요성?파이썬 인터프리터의 경우 컴퓨터 구성 요소를 추상화 해두었다. 배열을 위한 메모리 할당, 메모리 정렬, CPU로 데이터 보내는 순서 등 개발자가 고민할 필요가 없게 설계되어 있다. 그러나 고민할 필요가 없다는 의미는, 성능상 비용을 치르고 있을 수 있다는 말이다. 한 예로, 파이썬이 메모리를 자동으로 할당하고 해제하는 GC(Garbage-Collection) 사용하면 CPU 캐시에 데이터 전송하는데 영향을 미치는 메모리 단편화를 일으킨다. 그외 파이썬은 동적 타입 언어이며, GIL (Global Interpreter Lock)과 같은 최적화 알고리즘이 제대로 수행되기 어려운 환경에 있기도 하다. (Cpython이 등장하게 된 이유와도 상통한다..........
Python 프로파일링 (for loop vs sum())에 대한 요약내용입니다.
자세한 내용은 아래에 원문링크를 확인해주시기 바랍니다.
원문링크 : Python 프로파일링 (for loop vs sum())