memory_profiler를 사용하는 여러 가지 방법이 있습니다. 앞 절에서는 라인과 셀 매직을 보았습니다. knn_memtest.py 코드에서 @memory_profiler.profile이라는 데코레이터를 사용합니다. 이 파이썬 구문은 메모리 프로파일러에 knn_memtest의 메모리 사용량을 줄 단위로 추적하라는 명령을 내립니다. 스크립트를 실행하면 knn_memtest의 각 줄에 해당하는 메모리 관련 출력을 볼 수 있습니다.
In [22]:
!python scripts/knn_memtest.py
Filename: scripts/knn_memtest.py # 깔끔하게 형식을 맞추기 위해 출력 결과를 조금 수정했습니다. Line # Mem usage Increment Line Contents =================================================== 4 120.5430 MiB 120.5430 MiB @memory_profiler.profile(precision=4) 5 def knn_memtest(train, train_tgt, test): 6 120.5430 MiB 0.0000 MiB knn = neighbors. KNeighborsClassifier(n_neighbors=3) 7 120.7188 MiB 0.1758 MiB fit = knn.fit(train, train_tgt) 8 120.8125 MiB 0.0938 MiB preds = fit.predict(test)