Tag Info

Hot answers tagged

23

Edit: Updating on Oct. 1 2013 - Some of my original answer has since become obsolete. I'm not sure if you're still active on this site or that you'll see this, but I wanted you to know that I read this question today and it fascinated me, and so I spent all day (when I should have been working) researching Hyper-V and Windows internals and even digging in ...


20

On a CPU utilization graph or report, the "nice" CPU percentage is the % of CPU time occupied by processes with a positive nice value (lower scheduling priority -- see man nice for details). Basically it's CPU time that's currently "in use", but if a normal (nice value 0) or high-priority (negative nice value) process comes along those programs will be ...


14

It is the CPU scheduling priority, higher vales (+19) mean lower priority, and lower values (-20) mean higher priority (inverse relationship). man 2 getpriority will give you lots of details. You can set the nice value when launching a process with the nice command and then change it with the renice command. Only the superuser can specifiy a priority ...


14

There are a couple of possible ways you can do this. Note that its entirely possible its many processes in a runaway scenario causing this, not just one. The first way is to setup pidstat to run in the background and produce data. pidstat -u 600 >/var/log/pidstats.log & disown $! This will give you a quite detailed outlook of the running of the ...


9

As others have already pointed out, we can see from that screenshot that the CPU that's working so hard is spending all its time in kernel mode. (The red color.) Running Powershell as administrator, type: Get-Process | Select Name, PrivilegedProcessorTime | ` Sort-Object PrivilegedProcessorTime -Descending The process at the top of the list is the ...


9

The Steal percentage (documented in the mpstat man-page) is indeed the hypervisor telling your VM that it can't have CPU resources the VM would otherwise use. This percentage is regulated in part by Amazon's CPU limiting, and VM load on that specific host. I/O load is monitored through the %io stat.


8

Try monit. You could use a configuration like this, to accomplish your task: check process gameserver with pidfile /var/run/gameserver.pid start program = "/etc/init.d/gameserver start" with timeout 60 seconds stop program = "/etc/init.d/gameserver stop" if cpu > 80% for 2 cycles then alert if cpu > 95% for 5 cycles then restart if ...


8

Have you looked at the Cisco troubleshooting guide for high cpu ? It has an extensive guide on what to do when encountering high CPU loads. Included are : Determining Causes and Solving the Problem : High CPU Utilization due to Interrupts High CPU when Enabling Netflow NDE on Cisco 7600 Series Router High CPU Utilization due to Processes PCI and FAST ...


8

CPUs (or individual cores) can be put into "deep" C-states by an OS kernel. You're thinking that the processor "puts itself to sleep" when it "detects" inactivity. This isn't how it works. The OS scheduler determines system idle percentage based on the amount of time spent in the system idle loop to detect system inactivity. The CPU itself (in x86 land, at ...


7

One of the canonical sources for ESX performance tips is the Performance Troubleshooting Guide! (PDF) In short: If your host is busy, and your VMs are reporting a high "ready-time," (which is a counter of when the VM is ready to perform work but no physical CPU can be found for the machine to be scheduled by the hypervisor) then the symptoms you are ...


7

FreeBSD has a pretty decent userbase of very knowledgeable people. I wouldn't worry about that too much. Bigger issue would be your personal experience and knowledge on the matter. Ask yourself (and tell us): why is it so important to have a couple of megs of extra free RAM in your server? What does that gain you? And what does it cost you, both in terms of ...


7

In cases like this, you need to go beyond task manager and looking at % CPU usage. That does not tell you if something is adversely affecting performance. For a case like this, the next step would be to use Performance Monitor to view System\Processor Queue Length. This tells you if processes are waiting for the CPU to become idle possibly affecting ...


6

The key issue is "how much data is being compressed?". If you are running a massive DB query that takes a noticeable number of seconds to run, and the resulting page is a few tens of Kb long, then the expense of compressing the data will be completely dwarfed by the expense of the SQL work to the point where there is no point even thinking about it. A ...


6

There are two counters with the same name: Process\% Processor Time: The sum of processor time on each processor Processor(_Total)\% Processor Time: The total for all processors Your question indicates you're using the first counter, which means that its maximum value is 100% * (no of CPUs). So if you have 4 CPUs, then the total maximum is 400%, and 80% ...


6

This is when the cron.daily scripts run... By default, it runs daily just after 4:00am. From /etc/crontabs SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root HOME=/ # run-parts 01 * * * * root run-parts /etc/cron.hourly 02 4 * * * root run-parts /etc/cron.daily <-- THIS ONE!! 22 4 * * 0 root run-parts /etc/cron.weekly 42 4 1 * * root ...


6

You are on the right track, top uses this file for this purpose. But you need to read it more than once. Utilization is a is a measure of use over time. You can read it once providing you know the uptime in seconds of the host, then divide by that, but that would give you a utility rate of the host since the machine was booted. If you want a rate over 5 ...


6

Databases (well, 99% of them) cache everything they can. Cache is good. It makes stuff go faster. You want your database server to eat up all the memory it can, and never release it unless it have to. It won't cache stuff unless you ask it to (like in a query). Maybe there are tools to make MySQL pre-cache data, but I have no idea. Newer database products ...


5

Things to consider: The processors built into expensive purpose-built firewall appliances are generally quite anemic; firewall vendors sell expensive software and hype, not hardware. Of course, one way to protect proprietary software is to sell it with hardware included, and that is what firewall vendors do. LAN traffic ordinarily does not traverse your ...


5

Atop is a particularly handy daemon for looking at drill-downs to the process level and by default archives this data for 28 days. Besides presenting an awesome real-time monitoring interface, you can specify those log files to open and step through them. The article gives some idea of the capabilities, and you can find more in the manpage. It's truly a ...


5

...where to start. It is normal if your website is truly busy and you can justify the usage. Chances are however, you've probably got some non-optimial queries and poor table structures which are causing most of your pain. I would probably start looking at mysqladmin processlist to see what queries are running the longest and start optimising from ...


5

In-guest CPU monitoring is a bad idea, it's almost impossible inherently for any guest to ever really know how much CPU time it's taking, on any hypervisor - the only real way to know is to look outside via the hypervisor. So yeah, a very busy hypervisor could easily make an in-guest CPU usage stat way off base yes - just don't trust those figures anyway.


5

You seem to be seriously using a lot of swap there. You have a relatively small amount of memory allocated to cache/buffers. Your %wa is at 49.5%. That value corresponds to the CPU waiting for I/O to complete. I suspect you have that is or was using a large ammount of memory. But perhaps you also have something performing a lot of I/O as well. Fire up ...


5

mscorsvw is a process that pre-compiles .NET binaries. Your updates may have triggered this activity. At least, that's what http://blogs.msdn.com/b/davidnotario/archive/2005/04/27/412838.aspx says is happening. You might get more clue what exactly is happening if you can run the sysinternals procmon utility. That will tell you what file(s) mscorsvw is ...


5

You may be addressing the symptom and not the problem. The place to start is by looking at what is making your load so high. Is it kernel mode activity? Is it userland activity? If it is kernel mode, my guess is you are having issues writing to disk fast enough and the io is in a wait state. Look at tools like top, iostat, vmstat, etc to start narrowing down ...


5

Ah - no. Power does not only deend on frequency, it also depends on what the transistors do. So, yes, power usage even WHILE executing instructions can fluctuate - especially given that with out of order execution and parallelism inmodern CPUs the number of instructions executed can vary depending on what instructions are executed. The fact that CPU power ...


4

I assume this is due to a process being in a state of uninterruptable sleep ( Sleep). For a number of years now, the Linux kernel counts uninterruptable sleep towards load. This state is usually caused by a program waiting for disk I/O. You can check if the high load correlates with I/O by watching the output of ps aux; look for a Din the Stat column, or ...


4

Check out this article from the March issue of Linux Journal. It explains many different ways of finding out what exactly is slowing down your system. It shows you how to examine the CPU use, RAM/swap issues and I/O.


4

This was what I was looking for, and have been using it for some time now (slightly altered). Lately, I've put a bug in my work but need to keep the app (game server) running. I had quoted out the part where topmost PID is killed, as it was killing the wrong PID. Here's my latest draft of your script, so far, it finds the top-most overload and effectively ...


4

There are several reasons why a process might not use up all of the CPU. A process may have a limitation on how much CPU it uses, such as a loop that sleeps every once in a while in order to avoid using too much CPU or battery. Or a process may be I/O bound; that is, it needs to do I/O frequently (disk I/O, network I/O, or swapping in lots of memory). A ...


4

Nice is intended for batch or background jobs. Jobs are niced (given lower scheduling priority) so they don't use CPU when online users could be using it. The nice and renice programs set the nice priority. Negative nice priorities are bad (real-time). If your have low idle time but a lot of nice time, then you are likely running a background process ...



Only top voted, non community-wiki answers of a minimum length are eligible