새소식

AI 개발

[JupyterLab] CPU&Memory 모니터링 익스텐션 ✨

  • -

 

 

 

진짜 진짜 좋은 주피터랩 모니터링 익스텐션을 발견해서 오랜만에 포스팅을 해봅니다.

그동안 top이나 htop으로 cpu 점유율이나 메모리 점유율을 모니터링 했었는데요.

터미널을 따로 띄워놓는게 귀찮아서 잘 안하게 되더라구요 ㅠㅠ

 

그런데 서버를 혼자만 쓰는게 아니라 모니터링은 꼭 해야 한다고 느껴서

뭔가 좋을게 없을까 뒤지다가 노트북 파일 안에서 바로바로 cpu점유율이랑 메모리를 볼 수 있는 짱짱 좋은 익스텐션을 발견하였습니다.

 

명령어를 쳐서 확인하는 것이 아니라 터미널을 따로 켜놓을 필요 없고

노트북 파일 안에서 상단바(topbar)에 표시되기 때문에 아주아주 편리합니다~.~

 

 

 

 

 

🔗 Inatallation

 

일단 주피터랩 버전을 확인합니다.

jupyter lab --version

 

 

JupyterLab 3.x 일경우

pip install jupyterlab-system-monitor

 

JupyterLab 2.x 일경우

pip install nbresuse
jupyter labextension install jupyterlab-topbar-extension jupyterlab-system-monitor

 

pip 말고 conda 를 사용할 경우

conda install -c conda-forge nodejs # node가 설치되어 있지 않다면
conda install -c conda-forge nbresuse

 

 

 

 

🔗 Configuration

Graphic Display

1. jupyter_notebook_config.py에 설정하기

jupyter_notebook_config.py은 보통 .jupyter 폴더 밑에 있습니다.

jupyter 관련 여러 설정 포트설정, 버퍼사이즈 설정, 디렉토리 설정, 패스워드 설정 등.. 을 할 수 있는 파일입니다.

보통 초기에 설정하게 되지만,  jupyter_notebook_config.py를 아직 생성하지 않으셨다면

$ jupyter notebook --generate-config

명령어를 통해 생성하시면 됩니다.

 

 jupyter_notebook_config.py 안에 다음과 같은 내용을 추가해주세요.

c = get_config()

c.ResourceUseDisplay.mem_limit = 4294967296 # 메모리 제한 설정
c.ResourceUseDisplay.track_cpu_percent = True
c.ResourceUseDisplay.cpu_limit = 2 # 사용할 cpu 수

 

2. 또는 명령어를 통해 변수 설정을 할 수도 있습니다.

# POSIX shell
jupyter lab --NotebookApp.ResourceUseDisplay.mem_limit=$(( size_in_GB *1024*1024*1024)) \
            --NotebookApp.ResourceUseDisplay.track_cpu_percent=True \
            --NotebookApp.ResourceUseDisplay.cpu_limit=$(( number_of_cpus ))

 

 

설정이 끝나면, 주피터서버를 재시작 해주면 됩니다.

$ ps | grep jupyter # 주피터 서버 PID 확인
$ kill -9 PID
$ nohup jupyter lab --allow-root & # 백그라운드로 시작

 

 

 

References

https://awesomeopensource.com/project/jtpio/jupyterlab-system-monitor

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.