I just got a new Alienware m15x. Great machine. Very nice design. But I’m running into a couple of problems.
Update: 8 June 2008 9pm– I spoke too soon. The problem is back in spades. See section later in this post regarding use of SysInternals Process Explorer with more data on the problem.
Update: 8 June 2008 – The CPU Busy problem is not occurring for about the past 2 hours. The system was idle – but with the CPU busy for several hours today. There appears to be no reason for this change. It bears watching.
Update: 7 June 2008 – New information added on CPU Busy.
The CPU becomes very busy almost all the time. The CPU is a dual core T9300. Alienware has lots of extra gizmos on this model. I have not yet installed any new drivers on the system. The Task Manager does not show any process on the system that is responsible for the CPU time. The Alienware Stealth Mode, Wireless, Bluetooth enabled or disabled are not effective in reducing the CPU busy state.
In the CPU busy state, one of the processor cores is maxed out and the other looks normal. Whatever is running runs exclusively in the left hand CPU – in task manager display – which tells me that whatever is running has affinity.
Example of CPU Busy
Notice the left CPU panel shows that the CPU has become 100% busy. During this time the Hard Drive is not busy and there are not Processes in the process list that show the required CPU time. Removing the Logitech wireless mouse does not affect the state. No new drivers were installed for the mouse, only the standard Vista drivers are used with the mouse.
CPU Busy State Returned to Normal
After some time the CPU busy state returned to normal.
CPU Returned to Busy
A little while later the CPU returned to Busy. This occurs every few minutes.
Diagnosis Steps Taken
- Disable Alienware functions from the keyboard controls, as mentioned above. These include Blue-Tooth, Wireless, and Stealth Mode.
- Diabled the Intel TurboBoost device to determine whether Vista Ready Boost was causing the problem. This made no change in the CPU activity.
- Uninstalled and re-installed many layered products. Among these Virtual CD 9; Skype 3.5;
- Run QuickSlice – a performanence analysis tool from Microsoft – to determine where CPU time is being spent. More on that later.
- Disable almost every device possible to eliminate device interrupts as a possibility.
None of these steps has changed the problem.
While I don’t have a detailed description of QuickSlice, it appears to be a program which ties into a high priority clock interrupt and then takes data about which processes are active when the clock interrupt occurs. For each process in the system it displays the process name, and a bar of Kernel Mode and User Mode time spent.
This shows QSlice with a busy process with mostly user mode and very little kernel mode using one processor. The bar only goes 1/2 way across the qslice panel which indicates that 1 out of 2 cores are active.
The following shows the CPU when it is not busy: Click for a larger view.
Note that the only active process is “System Process” and it is only running in Kernel Mode. This is the Idle Process. Note that it goes all the way across the panel indicating that both processors are Idle.
The following shows QSlice when the CPU is busy – the pathogical condition I’m trying to fix.
Note in this case, when one of the Cores is maxed out, that the Idle Process is only taking about 1 Core, and that there is another process showing some activity. This is System, so it’s not possible to figure out what is really active. Also note that nothing else is active, and that the total does not add up to 100%, or both Cores fully active. So there is missing time. Now let’s compare these two states in Task Manager.
When System running normally, Task Manager Looks like this:
Note that the bar at the top left shows very little CPU usage.
And here are some examples of the Task Manager when the CPU is very busy:
And here is the Task Manager process list when the CPU is busy, for all processes, sorted by CPU time utilized:
Click for the larger view.
Note the very strange conclusion. The System Idle process shows 74%. So the performance panel is showing that the CPU us busy, but the Process List shows that the CPU is idle. Very strange.
Disabling Devices to Find the Problem
Using Device Manager, almost all the unnecesary devices were disabled to attempt to identify the device driver that was causing interrupts. None of these made any change in the problem:
Note the very small indications on the icons that the devices have been disabled. This did not cause any change in the CPU activity.
I also Disabled the Windows Search service, and this made no difference. This posting in the Microsoft Tech Forum indicated that this has been the source of CPU Busy problems in the past.
Process Explorer from SysInternals – 8 June
Using Process Explorer from SysInternals, it shows that the time is being used in DPC [Deferred Procedure Calls] and Hardware Interrupts. This indicates to me that the problem must be an out of control hardware or hardware device driver. It seems odd that sometimes the interrupts stop for a while, perhaps many hours in the case of this afternoon. Here are some pictures with comparisons with my Area-51 7500 Desktop.
Area-51 7500 Desktop which never shows this problem.
A skype call was active at the time, but notice that the DPCs and HIs were very small percentage of the CPU.
Alienware m15x Notebook that is showing the problem.
Notice that the middle histogram across the top shows the history of CPU usage and that Red shows Kernel mode usage. Also note that the DPC time is 25% of the CPU and Hardware Interrupts are showing 12% of the CPU. Clearly pathological.
Conclusions So Far
At this point I conclude from these tests that:
- The problem is occurring in kernel mode and is not measured by qslice, the Microsoft Tool designed to find these kinds of problems.
- In order to avoid qslice, the problem is likely to be an interrupt or device related problem.
- Disabling all the unnecessary devices has not found the problem, so if the problem is a device, the list of remaining devices is very short.
- Since the problem comes and goes on a minute to minute basis, it’s not a broken piece of hardware, but more likely an unforeseen interaction between hardware and a driver.
- but I’m just guessing. The Process Explorer data rules out a problem with Vista itself. It seems clear that this is something peculiar to the m15x.
While the system can be used with this problem, it needs to be fixed:
- The CPU activity puts more load on the battery, and causes more heat than necessary. This is especially troublesome for a laptop.
- This problem does not occur on an Alienware Area-51 Desktop system running VIsta x64, so there would seem to be no reason to put up with the problem on this Alienware m15x running Vista x86.
COM Surrogate Crashes
I don’t know if this is related or not, but occasionally the COM Surrogate crashes.
Update: This is apparently not related. This is no longer occurring. I don’t know what I was using that contributed to this problem.
The crash details are as follows:
Problem Event Name: APPCRASH
Application Name: DllHost.exe
Application Version: 6.0.6000.16386
Application Timestamp: 4549b14e
Fault Module Name: StackHash_1703
Fault Module Version: 0.0.0.0
Fault Module Timestamp: 00000000
Exception Code: c0000005
Exception Offset: 0153b5ed
OS Version: 6.0.6001.2.1.0.256.1
Locale ID: 1033
Additional Information 1: 1703
Additional Information 2: 2264db07e74365624c50317d7b856ae9
Additional Information 3: 1344
Additional Information 4: 875fa2ef9d2bdca96466e8af55d1ae6e
Read our privacy statement:
- The CPU occasionally gets very busy for no apparent reason.
- The COM Surrogate – whatever that is – occasionally crashes.