목표: openmpi를 cgroup을 이용해서 cpuset을 해 준 뒤에 mpirun -np / --cpu-set / bind-to core 옵션 줘서 실행해보기
1. cgroup 관리 툴을 설치 (안깔아도 되는데 까는게 편리)
sudo apt-get install cgroup-tools 혹은 cgroup-bin
2. cgroup생성
sudo cgcreate -g cpuset:mpi_test
sudo cgset -r cpuset.cpus="0,3" mpi_test
sudo cgset -r cpuset.mem="0" mpi_test //안해주면 에러남 그리고 /sys/fs/cgroup/cpuset/mpi_test폴더 안에서 해야 적용되드라
cat /sys/fs/cgroup/cpuset/mpi_test/cpuset.cpus
3. cgroup할당해서 실행
sudo cgexec -g cpuset:mpi_test ./mpirun --allow-run-as-root -np 4 ./a.out
위 방법은 일회용이다
컴퓨터를 껐다 키니까 사라짐
영구적으로 하고 싶으면 configure파일을 만들 것!
결과
cpuset해준거보다 np가 많으면 slot에러난다
다만 mpirun --cpu-set 1을 했는데 멀쩡히 돌아감
참고
https://blueyikim.tistory.com/109
cgroup(Control Group) 이해
1. cgroup 개요 자원 사용(CPU, Memory, I/O 등)을 프로세스 그룹단위로 제어할 수있는 리눅스 커널 기능 성능면에서 자원 경합을 줄이고, 예측성을 높여 SLA를 만족시킴 자원 제어는 CPU/CPUSET, Memory, Network..
blueyikim.tistory.com
2장. 컨트롤 그룹 사용하기 Red Hat Enterprise Linux 6 | Red Hat Customer Portal
The Red Hat Customer Portal delivers the knowledge, expertise, and guidance available through your Red Hat subscription.
access.redhat.com
http://studyfoss.egloos.com/5505982
[Linux] cgroup - (task) control group (1)
studyfoss.egloos.com
https://launchpad.net/ubuntu/+source/libcgroup
libcgroup package : Ubuntu
launchpad.net
https://www.paranoids.at/cgroup-ubuntu-18-04-howto/
cgroup ubuntu 18.04 howto – Paranoids Blog
Install required packages apt install cgroup-tools copy cgred.conf from examples cp /usr/share/doc/cgroup-tools/examples/cgred.conf /etc/ /etc/cgconfig.conf group web2 { cpu { cpu.cfs_quota_us=10000; } memory { memory.limit_in_bytes = 1024m; }} cpu.cfs_quo
www.paranoids.at
'Study > linux' 카테고리의 다른 글
도커 버전 확인하기 (0) | 2019.12.04 |
---|---|
도커에서 CentOS 컨테이너를 실행할 수 있는이유 (0) | 2019.10.29 |
docker에서 컨테이너 gui 실행하기 (0) | 2019.10.18 |
HPL recipe for target 'build' failed *** [build] Error 2 (0) | 2019.10.17 |
도커 컨테이너에서 가장 마지막으로 수정한 파일을 호스트로 가져오기 (0) | 2019.10.13 |