파이썬 애플리케이션의 메모리 사용량을 측정하는 방법 및 툴

파이썬은 메모리 사용량이 큰 애플리케이션을 개발할 때 주로 사용되는 인기있는 프로그래밍 언어입니다. 그러나 메모리 누수나 비효율적인 메모리 사용으로 인해 프로그램의 성능이 저하될 수 있는 경우가 있습니다. 이를 해결하기 위해 파이썬 애플리케이션의 메모리 사용량을 측정하고 최적화하는 방법과 도구에 대해 알아보겠습니다.

1. psutil 라이브러리

psutil은 파이썬에서 시스템 리소스를 모니터링하는 데 사용되는 라이브러리입니다. 메모리 사용량을 확인하려면 다음과 같이 virtual_memory 함수를 사용할 수 있습니다.

import psutil

mem = psutil.virtual_memory()
print(f"Total memory: {mem.total / (1024 ** 3)} GB")
print(f"Available memory: {mem.available / (1024 ** 3)} GB")
print(f"Used memory: {mem.used / (1024 ** 3)} GB")
print(f"Memory usage percentage: {mem.percent}%")

#python #memory

위 예제 코드는 psutil 라이브러리를 사용하여 전체 메모리 용량, 사용 가능한 메모리 용량, 사용 중인 메모리 용량 및 메모리 사용률을 출력하는 간단한 예제입니다. 이를 통해 현재 시스템에서 파이썬 애플리케이션이 사용하는 메모리를 확인할 수 있습니다.

2. memory_profiler 라이브러리

memory_profiler는 파이썬 애플리케이션의 메모리 사용량을 세부적으로 측정하는 데 사용되는 라이브러리입니다. 이 라이브러리를 사용하려면 다음과 같이 데코레이터를 사용하여 메모리 사용량을 측정할 함수에 적용해야 합니다.

!pip install memory-profiler

from memory_profiler import profile

@profile
def my_function():
    # 메모리 사용량을 측정하고자 하는 함수의 코드

my_function()

#python #memory

위 예제 코드는 memory_profiler 라이브러리를 사용하여 my_function 함수의 메모리 사용량을 측정하는 예제입니다. 데코레이터를 함수 위에 추가하고 해당 함수를 실행하면 메모리 사용량이 출력됩니다.

결론

이 글에서는 파이썬 애플리케이션의 메모리 사용량을 측정하는 방법과 툴에 대해 알아보았습니다. psutil 라이브러리를 사용하면 간단하게 전체 메모리 사용량을 확인할 수 있고, memory_profiler 라이브러리를 사용하면 세부적인 메모리 사용량을 측정할 수 있습니다. 이를 통해 애플리케이션의 메모리 사용량을 모니터링하고 최적화할 수 있습니다.

#python #memory #파이썬 #메모리측정 #프로그래밍 #성능최적화