목표: 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
http://studyfoss.egloos.com/5505982
https://launchpad.net/ubuntu/+source/libcgroup
https://www.paranoids.at/cgroup-ubuntu-18-04-howto/
'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 |