Is processor a bottleneck?

Introduction

When the processor is so busy that it cannot respond to requests in time, we say bottleneck is present in processor.  The situation is partly indicated by high rates of processor activities but mainly by long, sustained queues and poor application responses. 

If the processor doesn’t maintain a long (thread) queue but is very busy doing activities then it shouldn’t be a concern.

Bottleneck Detection Steps

Step 1

Detection of processor bottleneck can be identified by charting following performance counters –

  1. Processor: % Processor Time
  2. System: Processor Queue Length
  3. System: % Total Processor Time
If you see % Processor Time often exceeds 90% for sustained period of time and Processor Queue Length is greater than 2 and in case of multiprocessor system % Total Processor Time is greater than 50% then it is highly likely that the bottleneck is present in processor.

Step 2

Merely identifying processor bottleneck doesn’t guarantee that upgrading the server with powerful processor or additional processor will solve the problem, as the processor bottleneck can be due to –
a.       Bottleneck present in memory.
b.      High network traffic as it can also put pressure on processor by interrupting it frequently.
c.       Network / Disk Adapter Card
d.      A presence of (inefficient) process.

As part of Step 2, it should be ruled out that the bottleneck present in the processor is because of Memory or Network Traffic / Network Card.

  • An 8-bit card uses more processor time than 16-bit / 32-bit cards.  The number of bit is the amount of data moved to memory from adapter on each transfer, so 32-bit cards are most efficient.
  • You might have a processor bottleneck if % Processor Time & Processor Queue Length are high while usage of network adapter and disk I/O remain well below capacity.

Step 3

Determine if a single process is monopolizing the processor or whether the processor is consumed by running many processes.  This can be identified by charting following performance counters –
               
1.  Process: % Processor Time

Include all processes (except ‘Idle’ process and _Total process) that are active on the server.

Once it is determined that the single process is monopolizing the processor then it is time to upgrade the server with either powerful processor or an additional processor.

Conclusion
In this article I have explained a step of performance analysis process i.e. to identify if performance issue is because of less powerful processor.  The server needs to be upgraded with either powerful processor or an additional processor and performance run needs to be conducted again for validating the performance issue.


References:

http://technet.microsoft.com/en-us/library/cc750967.aspx

Comments

Post a Comment

Popular posts from this blog

Performance Test Run Report Template

Understanding Blockchain

Bugs Management in Agile Project