Câu trả lời:
Tôi nghĩ rằng điều này có thể được thực hiện bằng cách sử dụng cgroups
:
Tạo một nhóm có tên mpigroup
(hoặc bất kỳ tên nào bạn chọn) với giới hạn bộ nhớ (ví dụ: 50 GB ):
cgcreate -g memory,cpu:mpigroup
cgset -r memory.limit_in_bytes=$((50*1024*1024*1024)) mpigroup
Sau đó, nếu mpiexec đã chạy, hãy đưa nó vào nhóm này:
cgclassify -g memory,cpu:mpigroup $(pidof mpiexec)
Hoặc thực hiện mpiexec
trong nhóm này:
cgexec -g memory,cpu:mpigroup mpiexec -16 ...
memory
điều khiển không nên là đủ :cgcreate -g memory:mpigroup
?