Begränsa CPU sedvänjor i Linux med cpulimit
Du kanske har redan vet hur att kontrollera CPU sedvänja i en process. Men orolig någon process konsumerar för mycket CPU? Du ska veta, att du kan styra CPU sedvänja i en process av CPU limiter. cpulimit är en fri programvara för att begränsa CPU en process. Här är de excepts därifrån sajt:
cpulimit är ett enkelt program som försöker att begränsa CPU-användning av en process (uttryckt i procent, som inte i CPU-tid). Detta är användbart för att kontrollera batch jobb, när du inte vill att de ska äta för mycket cpu. Det verkar inte på den fina värdet eller annat schemaläggning prioriterade saker, men på den verkliga CPU-användning. Dessutom är det möjligt att anpassa sig till den totala belastningen på systemet, dynamiskt och snabbt.
Hur det fungerar
Observera att du inte behöver läsa denna punkt för att kunna använda cpulimit, kan du hoppa på ett säkert sätt om du inte är intresserad av tweaking cpulimit.
Så, är du nyfiken på hemligheter cpulimit Naturligtvis finns det ingen hemlighet om du är en C utvecklare, men jag ska försöka förklara för alla. Arbetet med att cpulimit sker allt i användarrumsbibliotek, så det inte stör Linux scheduler. I grund och botten är målet processen, som du kan ange med pid, namn eller kommandoraden kontinuerligt pausas och återupptas genom att skicka den SIGSTOP och SIGCONT signaler. Signaler skickas med cpulimit i lämpliga stunder, baserat på de gränsvärden som anges av användaren och statistiken Process Läs från / proc.
Systemkrav
cpulimit ska köra på varje Linux 2,2 eller högre. Det har rapporterats av flera användare som cpulimit fungerar bra även på SMP hårdvara, men anser att om du har mer än en cpu det finns en liten skillnad i den mening som avses cpu användning (se nedan).
Om du kan ändra källkoden cpulimit att göra det gå i en annan OS, vänligen meddela mig, så jag kan publicera koden. Jag tror att den enda icke-portabla kod är att iterera igenom processen listan och få processen statistik.
Installation
Du kan ladda ned den senaste från platsen. Nu senaste är 1,1 .
Du kan också ladda ner från SVN källa:
svn kassan https://cpulimit.svn.sourceforge.net/svnroot/cpulimit/trunk cpulimit
Sedan packa upp källkoden och kompilera med make:
zxf cpulimit-.tar.gz
cd cpulimit-
göra
Användningsområden
Begränsa processen pidgin med körbara namn till 20% CPU:
cpulimit-exe bigloop-limit 20
cpulimit-exe / usr / bin / pidgin-limit 20
Begränsa en process genom PID till 25% CPU:
cpulimit-pid 3982-limit 55
Starta en process genom kommandorad och begränsa det till 30% (under utveckling versionen!):
cpulimit-limit 30 / etc / rc.d / rc.boinc start
loading ...
Relaterade inlägg:
Detta är en bra idé. Jag har sett alldeles för många platser blir upphängd på grund av över-med hjälp av en server processor. Detta kan spara mycket tid, möda och pengar för både värd och kund. =)
loading ...