Can process lasso limit total system cpu utilzation

Started by medeksza, April 03, 2013, 10:55:43 AM

Previous topic - Next topic

medeksza

I have a Windows 2008 server at a low cost virtual server provider. As part of the user agreement you have to agree not to use the cpu too much. It'd be nice if their virtualization software enforced any limitations they want to impose, but that doesn't seem to be the case. I just get a nastygram if they think I use too much CPU. I'm generally happy with their price and service and am wondering if process lasso can be used to help me comply with their restrictions. Specifically their user agreement states:
QuoteClient agrees not to run any programs on his or her VPS which use 90% of any CPU core for an extended period of time or which cause a high CPU load on the host node for an extended period of time. In other words, client agrees not to use the equivalent of a full core for him or herself for an extended period of time.
I'll have to get them to specifically define "extended period" for me, but let's assume it is 30 seconds. Can process lasso be setup to allow bursting a single CPU core up to 100% for up to 30 seconds, but then limit the entire core to 90% if the high load time exceeds 30 seconds. The system makes 4 cores available to me. Alternatively, if bursting behavior is not possible, can I just limit it so no single core can exceed 90%?


Jeremy Collake

I would advise not to even try to use the hard throttling on a web server. It won't lead to anything good.

It appears that your host actually limits you to one full core, which is 25% total CPU utilization on a quad core system. Therefore, the default affinities won't help you here either.

Even if you were to enforce some hard limit on execution, the effect would be time outs, and - worst - the CPU consumption would have to resume at some point, as you can't just toss out instructions. It may, however, toss off clients.

The best thing you can do is make sure your site is properly optimized, and host somewhere that can handle your load. Attempting to do anything else will result in misery and wasted time.
Software Engineer. Bitsum LLC.

BenYeeHua

Quote from: Support on April 03, 2013, 04:35:43 PM
I would advise not to even try to use the hard throttling on a web server. It won't lead to anything good.

It appears that your host actually limits you to one full core, which is 25% total CPU utilization on a quad core system. Therefore, the default affinities won't help you here either.

Even if you were to enforce some hard limit on execution, the effect would be time outs, and - worst - the CPU consumption would have to resume at some point, as you can't just toss out instructions. It may, however, toss off clients.

The best thing you can do is make sure your site is properly optimized, and host somewhere that can handle your load. Attempting to do anything else will result in misery and wasted time.
Yes, optimize is the better solution. :)

Jeremy Collake

More important is a host that can handle your load. If you need resources, you have to pay for them. Shared hosting providers love to suck people in with cheap prices, then tell them they are using too many resources, and must upgrade. Most all shared hosting is oversold, including VPSes. It took me a few tries to find a cloud hosting provider that I could depend on (RackSpace). You get what you pay for.

If you are low on money, Linux is always cheaper than Windows hosting, and it consumes fewer resources. No licensing cost with Linux.
Software Engineer. Bitsum LLC.