Belirli bir işlem için bellek sınırı nasıl ayarlanır?


10

mpiexec -16 ...384 GB RAM sunucusunda yürütmeye çalıştım , ancak OOM Killer'i tetikledi ve iptal edildi.

mpiexecYürütme için nasıl bellek sınırı ayarlayabilirim ?

Biliyorum ulimit, ama bu diğer süreçleri de etkileyebilir.

Teşekkür ederim.

Yanıtlar:


9

Bence bu yapılabilir cgroups:

mpigroupBellek sınırı (örneğin 50 GB) olan bir grup (veya seçtiğiniz ad) oluşturun:

cgcreate -g memory,cpu:mpigroup
cgset -r memory.limit_in_bytes=$((50*1024*1024*1024)) mpigroup

Sonra, mpiexec zaten çalışıyorsa, bunu bu gruba getirin:

cgclassify -g memory,cpu:mpigroup $(pidof mpiexec)

Veya mpiexecbu grup içinde yürütün:

cgexec -g memory,cpu:mpigroup mpiexec -16 ...

memoryKontrolör yeterli olmamalı mı cgcreate -g memory:mpigroup?
heemayl

@heemayl olmalı. Bu örneği doğrudan
wiki'den

ayarları / sys / fs / cgroup / memory / dizininde saklanır ve sudo kullanılmıyorken başarısız olmasa bile sudo'nun çalışması gerekir
Aquarius Power

Fiziksel belleği 2GB ile sınırlamayı başardım, mükemmel çalıştı, ancak sanal bellek hala 8GB'a gidiyordu, ancak şarap oyunu diğer tüm linux uygulamalarını takas etmek yerine sadece takas kullanacaktı ve tüm sistem daha iyi çalışır! Teşekkür!
Kova Gücü
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.