Date: Wed, 11 Mar 2015 15:11:57 +0100 From: Polytropon <freebsd@edvax.de> To: opendaddy@hushmail.com Cc: freebsd-questions@freebsd.org Subject: Re: Limiting CPU on some processes on web server Message-ID: <20150311151157.5baea8b7.freebsd@edvax.de> In-Reply-To: <20150311140420.1646CC044F@smtp.hushmail.com> References: <20150311122656.96F2020341@smtp.hushmail.com> <20150311141347.1013d42d.freebsd@edvax.de> <20150311134232.838ABC0451@smtp.hushmail.com> <20150311144958.3ef9519d.freebsd@edvax.de> <20150311140420.1646CC044F@smtp.hushmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 11 Mar 2015 14:04:19 +0000, opendaddy@hushmail.com wrote: > On 11. mars 2015 at 1:41 PM, "Polytropon" <freebsd@edvax.de> wrote: > > > >The main differnce in functionality is that ulimit -t defines > >the limit as time, whereas cpulimit defines it as percentage > >of CPU resources used. > > > >Another difference is that ulimit comes with FreeBSD's default > >scripting shell, whereas cpulimit is a Linux program that has > >to be compiled from source, after porting it, of course. :-) > > > > Sounds really tempting especially considering those other cpulimit > compile errors. If you manually add "#include <libgen.h>" to src/cpulimit.c and remove "#ifdef __APPLE__" ... "#endif" from tests/process_iterator_test.c around the "#include <libgen.h>" line, you can run "gmake" (in src/ and /test, or at the top level), and it will successfully build. Result: $ ./cpulimit Error: You must specify a cpu limit percentage Usage: cpulimit [OPTIONS...] TARGET OPTIONS -l, --limit=N percentage of cpu allowed from 0 to 200 (required) -v, --verbose show control statistics -z, --lazy exit if there is no target process, or if it dies -i, --include-children limit also the children processes -h, --help display this help and exit TARGET must be exactly one of these: -p, --pid=N pid of the process (implies -z) -e, --exe=FILE name of the executable program file or path name COMMAND [ARGS] run this command and limit it (implies -z) You can try that "quick & dirty" modification and check if the cputime program _works_ for you. > Is there a CPU time limit equivalent to say 20% or have I totally misunderstood? I'd say it's hard to calculate or estimate absolute CPU time from relative resource consumption (load). You will probably have to test this with the real application you want to limit. -- Polytropon Magdeburg, Germany Happy FreeBSD user since 4.0 Andra moi ennepe, Mousa, ...
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20150311151157.5baea8b7.freebsd>