CPULimit, bir işlemin CPU'dan yaptığı kullanımı sınırlar

CPULimit hakkında

Bir sonraki yazıda CPULimit'e bir göz atacağız. Bu bir komut satırı aracıdır. bir işlemle CPU kullanımını sınırlar (CPU zamanı değil, yüzde olarak ifade edilir). Bu, bir işlemin çok fazla CPU döngüsü tüketmesini istemediğimizde toplu işleri kontrol etmek için faydalı olacaktır.

Bu aracın kullanımıyla, değeri veya diğer öncelik ayarlarını değil, CPU'nun gerçek kullanımını değiştireceğiz. Ayrıca sistemin genel yüküne dinamik ve hızlı bir şekilde uyum sağlayabilmektedir. Kullanılan CPU miktarının kontrolü, Senales DURDUR y SONRAKİCONT POSIX süreçlere. Belirtilen sürecin tüm alt süreçleri ve iş parçacıkları aynı CPU yüzdesini paylaşacaktır.

CPULimit'i yükleyin

CPULimit Unix benzeri dağıtımların varsayılan depolarının çoğunda mevcuttur. İlgili Gnu / Linux dağıtımındaki varsayılan paket yöneticilerini kullanarak kurabiliriz. Eldeki örnek için Debian, Ubuntu ve Linux Mint'e nasıl kurulacağını göreceğiz. Sadece bir terminal açmamız (Ctrl + Alt + T) ve içine aşağıdaki komutu yazmamız gerekecek:

sudo apt-get install cpulimit

Kim isterse, bölgedeki diğer tesis türlerine başvurabilir. proje GitHub sayfası.

CPULimit'i kullanma

Araç kurulduktan sonra, nasıl çalıştığını görme zamanı. Bunu yapmak için, çok fazla CPU kaynağı tüketen bir program çalıştıracağız. Aşağıdaki komutlar kök kullanıcı olarak çalıştırılmalıdır.

CPU kaynaklarını tüketen bir komut dosyası oluşturma

İlk önce gidiyoruz derrochecpu.sh adlı bir dosya oluşturun. Kullanacağım Vim editörüama her biri tercih ettiği birini kullanıyor. Terminalden (Ctrl + Alt + T) yazmamız gerekecek:

vim derrochecpu.sh

Açıldıktan sonra 'tuşuna basacağızEsc' ve sonra 'i'. Şimdi şu satırları ekleyeceğiz:

vim betiği splurgecpu

#!/bin/bash
while :; do :; done;

Bunu yaptıktan sonra, kaydetme ve çıkma zamanı. Bunu yapmak için 'tuşuna basacağızEsc've yazacağız : wq Dosyayı kaydetmek ve kapatmak için. Bu kısa komut dosyası, kesintisiz olarak maksimum CPU kullanımını tüketerek tekrarlanacaktır. Bu nedenle, sanal bir makinede test etmeniz önerilir.

Şimdi bu dosyayı çalıştırılabilir hale getireceğiz. Bunu yapmak için, aynı terminalden (Ctrl + Alt + T) çalıştıracağız:

chmod +x derrochecpu.sh

Komut dosyasını başlatmak

Şimdi süreci arka planda başlatacağız. Bunu şu komutu kullanarak yapacağız:

./derrochecpu.sh &

PID komut dosyası splurgeCPU

Sürecin PID'sini tutacağız. Bu durumda 6472, başlatılan işlemin PID'sidir.

Ne kadar CPU tükettiğini kontrol etmek

Yeni başlattığımız sürecin tükettiği CPU miktarını «üst» komutu aynı terminalde:

en iyi komut dosyası splurgeCPU

top

Yukarıdaki ekran görüntüsünde görülebileceği gibi, wastecpu.sh işlemi% 96'dan fazla CPU kullanımı tüketir. Çok fazla CPU kullanımı tükettiği için diğer görevleri yürütmek zordur. Birkaç dakika sonra, sistem çökebilir veya donabilir. CPULimt'in yardımımıza geldiği yer burasıdır.

CPU kullanımını PID ile sınırlama

Şimdi, bu işlemin CPU kullanımını CPULimit aracını kullanarak sınırlayalım. Gidiyoruz CPU kullanımını karşılık gelen PID aracılığıyla% 35 ile sınırlandırın (yaklaşık olarak). Bunu yapmak için şunu çalıştırın:

cpulimit -l 35 -p 6472 &
  • Seçenek "-35 XNUMX»Süreci yaklaşık% 35 ile sınırlar.
  • «-s 6472»Daha önce gördüğümüz derrochecpu.sh PID'sidir.

CPULimit'in etkisini kontrol etme

Önceki komut çalıştırıldığında, işlemin CPU kullanımını tekrar kontrol edelim. Bunun için yine top komutu kullanacağız:

en iyi komut dosyası CPULimit squander

top

Yukarıdaki görüntüden de görebileceğiniz gibi, wastefulcpu.sh'nin CPU kullanımı% 35,6'ya düştü, bu da% 35'e çok yakın. Şimdi sen diğer işlemleri çalıştırmak için daha fazla CPU kaynağına sahip olabiliriz.

CPU kullanımını dosya adına göre sınırlama

PID kullanarak bir süreci nasıl sınırlandıracağımızı gördük. Aynı zamanda çalıştırılabilir program dosyasının adını belirterek CPULimit komutunu çalıştırabiliriz.

Örneğin, yukarıdaki aynı örnek şöyle olacaktır:

cpulimit -l 30 ./derrochecpu.sh &

CPULimit, çok fazla CPU kullanımı tüketen bir işlemi çalıştırırken faydalı olabilir. Bir dahaki sefere bir programın çok fazla CPU kullandığını fark ettiğimizde, «komutunu kullanarak işlemin PID'sini bulmamız gerekecek.üst«. Sahip olduğunuzda, CPU kullanımınızı bu makalede anlatıldığı gibi CPULimit komutunu kullanarak minimum bir değerle sınırlamanız yeterlidir.

CPULimit'i kaldırın

Bu aracı sistemimizden kaldırmak, bir terminal açıp (Ctrl + Alt + T) yazmak kadar basittir:

sudo apt remove cpulimit

Bu makale ne anlattı bu sadece bir örnek. Açıkçası, aklı başında hiç kimse burada anlatılana benzer bir senaryoyu kendi bilgisayarında başlatmayacaktır.


Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: Miguel Ángel Gatón
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.

  1.   javp dijo

    Selam
    Soğutma sorunu varmış gibi görünen bir amd64 x2'ye sahip eski bir PC için mükemmel ve bir işlem birkaç dakika boyunca çok fazla CPU tükettiğinde 100º C'ye kadar ısınır ve kapanır.
    Bu nedenle, bir işlemin (genellikle bazı web siteleri veya video oluşturma programları) cpu'nun sıcaklığını artırdığını gördüğümde, bu işlemden "gücü" kaldırmak için cpulimit kullanacağım.
    teşekkürler