This article is Part 14 in a series of articles on the "Top 31 Favorite Features in Windows Server 2012" with my fellow IT Pro Technical Evangelists. Be sure to follow them on Twitter and check out their blogs this month for the other parts of this series:
How is Task Manager different in Windows Server 2012?
Server, Application and Process Monitoring at your Fingertips!
In Windows Server 2012, the product team has taken the most frequently used features of the former Task Manager, Resource Monitor and Performance Monitor tools, and they've merged them together to make them more easily accessible on busy servers. As a result, the Task Manager tool in Windows Server 2012 ( and Windows 8 ) has been completely redesigned to roll-up key statistics on ...
When you need to analyze current server performance, Task Manager is a great place to start! Task Manager also provides an easy way to jump into the Resource Monitor tool ( yes, the full Resource Monitor and Performance Monitor tools are still there when you need them! ) when more detailed monitoring is necessary on a per-process basis.
In this article, we'll step through the new features in Task Manager in Windows Server 2012 together.
How do I launch the new Task Manager?
You can easily jump into Task Manager from a local or remote console connection in a variety of ways, some of which are common to prior versions of Windows Server:
How can I easily locate the process I'm looking for?
When Task Manager launches, it initially displays a list of foreground applications and background processes with CPU and Memory utilization displayed. I really like the new organizational structure, with applications separated from background processes, because it makes it easier to focus on one or the other depending on the type of scenario you're monitoring. No more sifting through a long list of processes to find what you're looking for on a busy server!
In addition, for each application displayed in Task Manager, the name of the application is displayed first, with a list of open application windows expandable below each application name - great for MDI applications (like MMC consoles, Microsoft Office, etc) that open multiple windows. This approach reduces the number of initial entries in Task Manager by rolling them up into a shorter, easier-to-manage application list.
All columns are also sortable just by clicking on the column heading.
If you're running Remote Desktop Services ( RDS ) on any of your servers, you'll love the Users tab view! It organizes all active applications and processes by interactive user so that you can quickly find the RDS sessions and applications that you'd like to monitor. By right-clicking on a user in this view, you can also "Disconnect" them if needed or "Manage User Accounts" associated with RDS sessions.
How can I see more information about these processes?
In Task Manager, when you right-click on the heading of the CPU or Memory columns in the Processes view, you'll be presented with a list of additional resource values that can be added to the Processes view. I like to add "Process Name" into my Processes view, so that I have both the application name and process executable name visible side-by-side.
Note, that on Windows Server 2012, Disk and Network resource values cannot be added into the Processes view - they've been disabled because of the overhead they could cause on a busy server every time Task Manager is launched. Instead, if you need to monitor Disk and Network load on a per-process basis, use the separate Resource Monitor tool. In contrast, Disk and Network resource values are visible in the Processes view of Task Manager on Windows 8.
In addition, by right-clicking on any process name, you can select "Go to details" from a pop-up menu to jump directly to ...
... the Details tab view with the currently selected process highlighted. On this tab, you can get more detailed statistics on each process and also perform some advanced functions like ending process trees, setting process priority, setting processor affinity and viewing the properties of the main executable file for a process. By right-clicking on any process that is running as a background service, you can also select "Go to service(s)" to jump directly to ...
... the Services tab view with the currently selected process highlighted in the list of services. From this tab, you can "Stop" services, "Restart" services, or select "Open Services" to launch the Services administration tool to configure startup parameters for a service.
Awesome! But ... How do I see overall utilization of my server?
Overall server utilization is where the Performance tab comes in! Click on the "Performance" tab and you'll be presented with a wealth of information on each overall server subsystem.
For CPU Utilization, the Performance tab includes some really useful information, including:
I've found the processor subsystem architecture information really useful when I'm visiting someone else's server for the first time. In an instant, it gives me a picture of the underlying hardware for background information to consider when consolidating workloads on a server. In particular, # of logical processors vs cores is often good information to keep in mind - afterall, hyperthreaded cores are not really "true" cores and shouldn't be treated as such for capacity planning purposes. Hyperthreaded cores usually provide only an additional 12-15% performance benefit on most systems, so I'll usually base my capacity calculations for CPU on the # of true cores and then consider the extra 12-15% that hyperthreading can provide as a "buffer zone" for CPU capacity.
By right-clicking on the CPU graph and selecting "Change graph to -> Logical Processors", you can see a processor utilization breakdown across logical processors to confirm that load is being properly balanced across processors.
In addition, on any of the graphs on the Performance tab, you can right-click and select "Graph Summary View" to see just the graph without all of the other numeric counters - very useful when stress testing or monitoring a particular server subsystem.
Hey! Where's My Disk?!
In the screenshots of the Performance tab above, you'll note that Disk performance is not being listed as a page to display ... by default, Disk performance monitoring is disabled in this view due to possible overhead on busy servers. However, unlike the Processes tab, you can enable Disk performance monitoring on this tab by running the following command from a Command Prompt launched using the "Run as Administrator" option.
After running the diskperf command above, close and re-launch Task Manager to view Disk performance statistics on this tab, as shown below ...
Thanks ... for the Memory (Statistics)!
The Memory page on the Performance tab really has some useful information, too! In addition to overall memory consumption, it shows a summary of the physical memory subsystem, including memory form factor, memory speed and # of memory slots available - really useful when trying to determine how best to upgrade memory for a server. In addition, a Memory Composition graph is provided to show the following breakdown of memory utilization at-a-glance:
You can hover your mouse over each area displayed in the Memory Composition graph for a description of each memory category.
Let's Grab Some Net!
The Performance tab displays a ton of network performance information with separate information pages for each physical NIC, virtual NIC and Teamed NIC. In addition, by right-clicking on any network graph, you can also select "View Network Details" to get a much more detailed real-time breakdown of network traffic.
Other Task Manager "Tricks" ...
Here's some other Task Manager "Tricks" that you may find helpful when monitoring server performance:
This is Cool! How do I get the new Task Manager?
This article described the Task Manager improvements in Windows Server 2012 to provide fingertip access to key server, application and process performance statistics. To explore the new Task Manager for yourself ...
How are you using the new Task Manager?
What new features do you like best? Do you have an interesting use case about how you're planning to leverage the new Task Manager in your environment? Feel free to share your story in the comments below!
Hope this help,
Be sure to check out these additional resources:
Keith Mayer is a Senior Technical Architect at Microsoft, focused on helping ISV partners leverage the Azure cloud platform. Keith has over 20 years of experience as a technical leader of complex IT projects, in diverse roles, such as Network Engineer, IT Manager, Technical Instructor and Consultant. He has consulted and trained thousands of customers and partners worldwide on design of enterprise technology solutions.
Keith is currently certified on several Microsoft technologies, including Azure, Private Cloud, System Center, Hyper-V, Windows, Windows Server, SharePoint, SQL Server and Exchange. He also holds other industry certifications from VMware, IBM, Cisco, Citrix, HP, CheckPoint, CompTIA and Interwoven.
You can contact Keith online at http://aka.ms/AskKeith.