위키득계정 ↗
기술

Scalene 프로파일러

Scalene 프로파일러기술
주요 대상
Python 프로그램
관측 자원
CPU와 GPU 및 메모리
결과 단위
코드 줄과 함수
표시 방식
터미널과 웹 화면
Scalene은 Python 프로그램의 CPU와 GPU 및 메모리 사용을 분석하는 프로파일러다. 줄과 함수별 실행 비용을 보여 주고 Python 코드와 네이티브 코드의 비용을 나눠 병목의 성격을 파악하도록 한다.

실행 시간의 구분

표본 수집을 이용해 코드를 분석하고 Python에서 사용한 시간과 네이티브 라이브러리에서 사용한 시간을 나눠 보여 준다. 시스템 시간도 구분해 입출력 관련 부담을 살필 수 있다. 같은 줄의 실행 비용도 어느 영역에서 생겼는지 구분하는 방식이다.

메모리 증가와 복사 비용

메모리 할당을 추적해 사용량이 늘어나는 코드 줄과 잠재적 누수 위치를 분석한다. Python과 네이티브 코드의 메모리 비중 및 자료 복사량도 다룬다. CPU 시간만으로 드러나지 않는 메모리 부담을 조사하는 데 활용한다.

결과 탐색과 관측 범위

명령행에서 분석하고 터미널이나 로컬 브라우저 화면으로 결과를 볼 수 있다. GPU 시간 분석은 지원하는 NVIDIA 환경을 대상으로 한다. 선택적으로 제공하는 AI 최적화 제안 기능은 자원 사용 측정 결과와 별도의 보조 기능이다.

관련 문서

py-spy / Memcheck / Valgrind / Python / GPU / 프로파일링