Container는 무제한으로 HOST의 리소스를 사용하기 때문에, 각 컨테이너마다 리소스 제한이 필요할 때가 있음

 

1. Container CPU 사용 수 제한 (host CPU가 여러 개 있는 경우)

docker run -itd --name [컨테이너이름] --hostname [생성할 호스트이름] --gpus '"device=0,1,2"' --cpuset-cpus=”0,1” nvidia/cuda:12.1.1-cudnn8-devel-ubuntu22.04

 

2. Container CPU 사용량 제한 (기준 사용량 1(1024)을 기준으로 2024는 기본값보다 2배 사용한다)

docker run -itd --name [컨테이너이름] --hostname [생성할 호스트이름] --gpus '"device=0,1,2"' --cpu-shares 512 nvidia/cuda:12.1.1-cudnn8-devel-ubuntu22.04

 

3. Container CPU 사용량 제한 (전체 사용량 1을 기준으로)

$ docker run -itd --name [컨테이너이름] --hostname [생성할 호스트이름] --gpus '"device=0,1,2"' --cpus=0.2  nvidia/cuda:12.1.1-cudnn8-devel-ubuntu22.04

 

4. Container 최대 메모리 제한

docker run -itd --name [컨테이너이름] --hostname [생성할 호스트이름] --gpus '"device=0,1,2"' -m 16g  nvidia/cuda:12.1.1-cudnn8-devel-ubuntu22.04

 

5. Containers 리소스 사용량 확인

docker stats

+ Recent posts