.NET용 라이브러리로, C# 메서드를 자동 워밍업과 통계 및 결과 보고서를 갖춘 재현 가능한 벤치마크로 바꿔 줍니다.
pyutils/line_profiler
Python 함수의 각 소스 코드 줄이 실행되는 데 걸리는 시간을 보여주는 줄 단위 프로파일러입니다.
- 스타
- 3,252
- 포크
- 143
- 열린 이슈
- 59
- 마지막 커밋
- 19일 전
어떤 프로젝트인가요?
line_profiler는 Python 함수 내부의 실행 시간을 줄 단위로 측정합니다. 함수 단위 프로파일링으로 느린 함수를 찾은 뒤, 어느 줄에서 시간이 소요되는지 확인할 때 유용합니다. 함수에 @profile 데코레이터를 붙이면 스크립트가 끝날 때 각 줄의 실행 횟수, 시간, 전체 시간에서 차지하는 비율을 요약해 출력합니다.
권장 사용 방법은 line_profiler에서 profile을 가져오고, 확인하려는 함수에 데코레이터를 붙인 다음 스크립트를 실행하기 전에 LINE_PROFILE=1 환경 변수를 설정하는 것입니다. 패키지에는 이전 방식인 kernprof -lv 워크플로를 지원하는 명령줄 도구 kernprof도 포함되어 있습니다. pip로 설치할 수 있으며 Python 3.10 이상이 필요합니다.
이 저장소는 현재 PyPI의 line_profiler 패키지가 가리키는 유지 관리 포크로, rkern이 시작한 원본 프로젝트의 작업을 이어가고 있습니다. 문서에는 기본 사용법, 예제, FAQ가 담겨 있습니다.
핵심 기능
- 01데코레이터가 적용된 함수의 각 줄에 대해 실행 횟수, 시간, 비율을 보고합니다.
- 02@profile 데코레이터와 LINE_PROFILE 환경 변수로 프로파일링을 활성화합니다.
- 03명령줄 도구 kernprof가 포함되어 있습니다.
- 04pip로 PyPI에서 설치할 수 있으며, 일반적인 플랫폼용 wheel을 제공합니다.
- 05ipython extra를 통해 선택적으로 IPython과 연동할 수 있습니다.
활용 사례
- 느린 Python 함수 안에서 어떤 줄이 실행 시간의 대부분을 차지하는지 찾을 때.
- 최적화에 앞서 데이터 처리 스크립트나 수치 계산 스크립트를 프로파일링할 때.
- 핫 함수의 특정 줄에서 코드 변경이 미치는 영향을 확인할 때.
빠른 시작
- 1
pip으로 line_profiler를 설치합니다
pip install line_profiler - 2
profile을 가져오고 프로파일링할 함수에 데코레이터를 적용합니다
- 3
LINE_PROFILE=1을 설정하고 평소처럼 스크립트를 실행합니다
사용 전 알아둘 점
- Python 3.10 이상이 필요합니다. 이전 Python 버전에서는 더 오래된 릴리스가 필요합니다.
- 소스에서 설치하려면 C 컴파일러가 필요할 수 있으며, git checkout으로 설치할 때는 Cython도 필요합니다.
토픽
자주 묻는 질문
- line_profiler은(는) 무엇인가요?
- Python 함수의 각 소스 코드 줄이 실행되는 데 걸리는 시간을 보여주는 줄 단위 프로파일러입니다. line_profiler는 Python 함수 내부의 실행 시간을 줄 단위로 측정합니다. 함수 단위 프로파일링으로 느린 함수를 찾은 뒤, 어느 줄에서 시간이 소요되는지 확인할 때 유용합니다. 함수에 @profile 데코레이터를 붙이면 스크립트가 끝날 때 각 줄의 실행 횟수, 시간, 전체 시간에서 차지하는 비율을 요약해 출력합니다.
- line_profiler은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- line_profiler은(는) Other 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- line_profiler은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. line_profiler의 마지막 커밋은 2026년 10월 18일입니다.
- line_profiler은(는) 어디에 사용할 수 있나요?
- 느린 Python 함수 안에서 어떤 줄이 실행 시간의 대부분을 차지하는지 찾을 때. 최적화에 앞서 데이터 처리 스크립트나 수치 계산 스크립트를 프로파일링할 때. 핫 함수의 특정 줄에서 코드 변경이 미치는 영향을 확인할 때.
- line_profiler는 어떻게 설치하나요?
- pip으로 line_profiler를 설치합니다: pip install line_profiler profile을 가져오고 프로파일링할 함수에 데코레이터를 적용합니다 LINE_PROFILE=1을 설정하고 평소처럼 스크립트를 실행합니다
- line_profiler은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/pyutils/line_profiler
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
주로 Laravel 앱을 위한 PHP 개발 도구로, 브라우저에서 요청 데이터와 쿼리, 로그, 타임라인 등을 확인할 수 있습니다.
.NET 10~11 벤치마크 워크로드를 주로 대상으로 하는 AI 코딩 에이전트용 성능 튜닝 팁을 단일 SKILL.md 파일에 담았습니다.
Python 코드, 네이티브 확장 모듈, 인터프리터의 메모리 할당을 추적하고 여러 유형의 리포트를 생성하는 메모리 프로파일러입니다.
함수 호출을 기록하고 코드 실행을 대화형 타임라인으로 시각화하는 오버헤드가 낮은 Python 트레이서입니다.
실행 중인 Python 프로세스를 프로파일링하는, 오버헤드가 낮고 별도 계측이 필요 없는 C 기반 CPython 프레임 스택 샘플러입니다.