Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update Demand Technology Software 1020 Eighth Avenue South, Suite 6, Naples, FL.

Post on 26-Mar-2015

212 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

Transcript

Demand Technology Software, Inc.

Windows 2000 Performance and Tuning:

An UpdateDemand Technology Software

1020 Eighth Avenue South, Suite 6, Naples, FL 34102phone: (941) 261-8945 fax: (941) 261-5456

e-mail: markf@demandtech.comhttp://www.demandtech.com

2Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Windows 2000

No major changes in the way the OS works!

Many minor, incremental improvements: Processor Memory File Cache I/O Networking

3Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Sysmon.OCX MMC snap-in replaces Per fmon

Many Sysmon enhancements, including fonts, and mult iple log data formats

Logical and Physical Disk % Idle Time Counter added.

100% - Idle Time = disk ut ilizat ion; mislabeled % Disk Time Counters are retained.

Per Process I/ O Counts added to Task Manager & Physical Disk Object

Requested by developers of analyt ic and simulat ion modeling packages. Unfortunately, the W in2K Counters t rack logical fi le requests, not necessar ily correlated with Physical Disk act ivity.

New Pr inter Queue measurements

Job Object with resource limits int roduced.

Intended to provide a means for IIS to throt t le runaway CGI scr ipts.

Windows NT evolution: new in Win2K

4Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Windows NT evolution: new in Win2K

W indows Measurement Inter face

Support for the W BEM standard. Provides an infrast ructure for integrated configurat ion, operat ions, and performance report ing tools. A ctually first int roduced in NT 4.0 with Service Pack 4, but not widely deployed.

New kernel Trace facility.

Provides the ability to t race page faults, I/ O requests, TCP requests, and other low level funct ions without hook ing the OS.

_Total instance of the Processor Object supercedes % Total Processor Time Counters in System Object

5Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Windows NT evolution: new in Win2K

Below Normal and Above Normal Pr ior ity Levels

Provides more choice in the dynamic range.

Two choices for the durat ion of the t ime-slice quantum.

Semant ics behind W in32Pr ior itySeparat ion changed again! Choose either Professional’s short t ime slice interval of Servers very long interval.

Queued Spin Locks enhance SMP scalability

Queued spin locks reduce internal processor bus content ion because threads no have to execute a busy wait .

Integrated support for Terminal Server Edit ion (TSE)

W inFrame was developed independent ly by Cit r ix for version 3.51. A fter purchasing the r ights from Cit r ix for version 4.0, TSE was integrated on top of exist ing NT 4.0 service packs. TSE adds two new per formance Objects, Session and User , plus some addit ional system and per process Counters.

6Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Windows NT evolution: new in Win2K

Network Monitor Driver replaces Network Monitor A gent

new Dr iver hooks the NDIS layer ; network monitor ing no longer relies on running the NIC card in promiscuous mode; eliminates overhead concerns, but you can no longer see the whole Network segment (on an unswit ched segment ).

TCP/ IP is now the nat ive network ing protocol in W indows 2000

DNS replaces W INS (st ill required to support NT 4.0 stat ions.

Improved TCP/ IP stack to support Gigabit Ethernet

Support for SA CK opt ion, Large Frames, etc.

7Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Microsoft Management Console

8Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Windows 2000 System Monitor

Most powerful, general-purpose tool bundled into Win2K by Microsoft real-time exceptions log data to a file can monitor

machines remotely

9Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Win2K System Monitor

10Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Win2K System Monitor

New in Windows 2000 Font support Logging of individual Counters by instance

name Graphing options for summary statistics Separate GUI and collector (service) apps Legend is now a grid (sizable column; sort) y-axis can be labeled Some file management Multiple logging formats

11Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Win2K System Monitor

Unchanged in Windows 2000 Summary statistics still miscalculated Process that starts later cannot be selected no x-axis time scale No printer support etc.

12Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Processor performance monitoring

Object Counter Derivation Thread % Processor Time W in2K Scheduler calculates based on

the durat ion of the Running state

Process % Processor Time Thread % Processor Time

Processor n % Processor Time 100% - Idle Thread n % Processor Time

_Total Processor

% Processor Time Processor % Processor Time /

# of processors

System

(NT 3 & 4)

% Total Processor Time Processor % Processor Time /

# of processors

13Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Priority Queuing/Preemptive Scheduling

Win32 API supports six Process Base priority levels (SetPriorityClass): Realtime: Priority Level 24 High: Priority Level 13 Above Normal: Priority Level 10 Normal: Priority Level 8 Below Normal: Priority Level 6 Idle: Priority Level 4

System

Ze

r Page T

hre

ad

W in32BaseP r ior it y

No

rma

l

Be

low

Lo

we

st

Hig

he

st

Ab

ov

e

No

rmal

Be

low

Hig

he

st

Ab

ove

No

rmal

Be

low

Low

est

Ab

ove

No

rma

l

Be

low

Lo

we

st

Hig

he

st

Ab

ov

e

I d le

BelowN or m al

Realt im e

313029282726252423222120191817161514131211109876543210

Dynam ic R ange Realt ime R ange

Re

altime

Tim

e Critica

l

Re

altime

Tim

e Idle

Dy

nam

ic Tim

e C

ritical

Dy

na

mic Id

le

No

rma

l

Be

low

Lo

we

st

Hig

he

st

Ab

ov

e

No

rma

l

Be

low

Low

est

Hig

he

st

Ab

ov

e

N or m al

H igh

A boveN or m al

Lo

we

st/H

igh

est

Ready Queue

Windows 2000

15Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Priority Queuing/Preemptive Scheduling

Win2K Tuning parameter: Choose

between the Workstation and Server default time slice

16Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Priority Queuing/Preemptive Scheduling

Processor Time slice value: the quantum

17Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Win32PrioritySeparation

18Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Intel Multiprocessing

Win2K further re-engineered for multiprocessing Queued spin locks reduce bus contention NT 5.0 scalability may approximate 90% or

better Pentium III features 133 MHz memory bus;

integrated L2 cache 16x and 32x multiprocessors planned

19Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

W indows 2000 SMP Scalability

0

4

8

12

16

0 4 8 12 16

# of Processors

Rela

tiv

e P

erfo

rm

an

ce

NT 4 .0

Ideal

W in2K ?W in2K ??

20Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Intel Architecture (IA-32)

Pentium II,III, and IV remain backward compatible with Pentium Pro

Improved multiprocessing Improved graphics processing

MMX SIMD in Pentium III

21Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Intel 786 IA-64 architecture

Itanium: 800 MHz and higher .013 micron fabrication process EPIC: Explicitly Parallel Instruction

Execution Explicit parallelism Predication Speculation Massive Resources

10 GHz by 2010

22Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Virtual Memory Manager

Windows 2000 - Address Windowing Extensions (AWE) Above 4 GB -

Intel Pentium III, IV requires PSE36 Driver Real addresses only Addresses > 4 GB not

backed on paging files– PTEs remain 32-bit

User

System

0000 0000

bfff ffff16

ffff ffff16

Extended

23Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Win64 Virtual Memory

Architectural component 64 bit 32 bit

Virtual Memory 16TB 4GB

Paging File Size 512TB 16TB

Hyperspace 8GB 4MB

Paged Pool 128GB 470MB

Non-paged Pool 128GB 256GB

System cache 1TB 1GB

System PTE (page table entries) 128GB 660MB

24Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Virtual Memory Manager

Memory allocation Counters Available Bytes Available KBytes Available MBytes

Pool non-paged Bytes, Pool Paged Resident Bytes, System Cache Resident Bytes, System Code Resident Bytes, System Driver Resident Bytes

25Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

1100010011 0000011010 000001101100

Virtual address translation

Page tableSelector

Page tableentry

byte offset

Control Register 3

Page Directory

private

system

10000

7FFEFFFF

C0000000C1000000

E0000000FFFFFFFF

Page tables

System data cache

Paged system pool

(offset of per process Page Table)

Page Tables Physical pages

Paging fi le

(invalid)

Windows 2000 File cache

512 MB file cache, plus a 440 MB overflow area

960 MB total!

26Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Windows 2000 Cache Manager

Sets the value of LargeSystemCache

27Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Win2K Cache Manager

LargeSystemCache sets the System working set size to RAM – 25%

28Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Windows NT I/O Manager

Layered driver model Conceptually, similar

to the stack used in network processing

Installable file systems

supports both synchronous and asynchronous I/O

Disk Driver

Quotas

I/ O Manager

File System Drivers

FAT32 NTFSFAT16 CDFS

Filter Drivers

HSM

Filt er Drivers

Encrypt ion

SCSI minport Driver

Win2K:

29Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Disk performance monitoring

Diskperf – Win2K disk performance statistics Diskperf installed by default for

Physical disk monitoringdiskperf -yd

Still requires a system restart to enable Logical Disk statistics (including % Free Space)

diskperf -yv Instance names shows physical

volumes included in a software RAID stripe set

Disk Driver

NTFS

Ftdisk

SCSI minport Driver

Disk Performance Stat ist ics

Disk Performance Stat ist ics

Diskperf -y

Diskperf -yediskperf -yd

diskperf -yv

30Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Disk performance monitoring

Idle time accumulates in diskperf when there are no outstanding requests!

Disk Driver

NTFS

SCSI minport Driver

Diskper f

IRP

T1

12369T2

12369

T -T =Disk t ime2 2

Queued request

Queued request

Queued request

If no requests outstanding,set Idle Time clock, T2 Idle Time = T1 - T2

31Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Disk performance monitoring

32Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Disk performance monitoring

% Idle time accumulates in diskperf when there are no outstanding requests!

Calculate % Disk busy = 100 - % Idle time

Calculate Disk Service time = % Disk busy / Disk transfers/sec

Calculate Disk Queue time = Avg. Disk secs/transfer - Disk service time

33Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

New Win2K per process I/O Counters

34Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

35Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

NTFS for Win2K

For the first time, MS is developing applications that require NTFS new version of Index Server replaces FindFast new Change Journal use NTFS sparse file format

NTFS for Win2K is not entirely backward-compatible with NT 4.0 Master File Directory entries reduced from 4K

to 1K NT 4.0 SP4 has a new version of ntfs.sys

36Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Diskeeper Lite built into Win2K

37Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Windows 2000 networking

Win2K contains standard TCP/IP protocol stack! NetBT (or NBT)

NetBEUI over TCP/IP NDIS (Network Device Interface Specification)

Standardized NIC driver support across Windows 9x and Windows NT/2000

ProcessorAffinityMask parameter confines interrupts to a single processor on SMPs

NDIS miniport driver supplied by the Network Interface Card (NIC) adpater manufacturer

38Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Windows 2000 networking

TCP UCP

IP

ICMP IGMP IP Filtering

ARP

IP Forwarding

Packet Scheduler

NDIS Wrapper

NDIS miniport NIC device driver

NetBT

Redirector Server

Named Pipes

RPC DCOM Windows Sockets

NDIS

TDI

Kernel Mode

User Mode

Applicat ion Interfaces

NetBIOS

39Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Ethernet measurements

NIC sees all packets Destination address Source address

Normally, only acts on broadcast packets and packets that match its MAC address

Promiscuous mode Interrupts host for all packets

Win2K Network Monitor driver hooks NDIS layer

Connection handshaking (Win2K defaults).

41Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Ethernet performance

Improving Ethernet performance Switched Ethernet

dedicated link capacity 100 Mb Ethernet

Utilize existing wiring Improved throughput

Gigabit Ethernet Emerging technology: e.g., Win2K support for jumbo

frames Good choice for high speed backbones Requires fiber!

42Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

The Impact of Frame Size on Gigabit Ethernet performance

409

602

0

100

200

300

400

500

600

700

1518 9018

Frame Size (bytes)

Mb

ps

0

20

40

60

80

100

Uti

lizati

on

%

Thruput Server CPU

Source: Alteon Computers

43Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Gigabit Ethernet performance

PC architecture PCI 2.1: 66 MHz * 64 bits = 528 MB/sec Servers built with multiple PCI bus

Jumbo frames incompatible with other Ethernets Dedicated backbone Support for VLAN virtual LAN boundaries

44Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Gigabit Ethernet performance

Windows 2000 support PMTU: dynamic path MTU discovery Scalable Window: supports TCP windows

sizes > 64K Selective Acknowledgement (SACK)

NDIS miniport driver support Enable Jumbo Frames Set Jumbo Frame Size Allocate Buffer Queue etc.

45Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Gigabit Ethernet performance Windows 2000 support

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\

<interface-name>

MaximumFrameSize = 9014 /* use jumbo frames NumberOfReceiveBuffers = 100/* use memory if you

need itNumberofTransmitBuffers = 100 /* dittoMaxIRQperSec = 2500 /* interrupt coalescing

/* and moderation

46Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Job Object

Will Job Object controls help in the future? Job Objects enforce various resource limits:

% User time execution limits % static dispatching priorities Range of time-slice values

But you must write a program to CreateJobObject, SetInformationJobObject, AssignProcessToJobObject, and monitor the execution of processes assigned to Jobs

E.g., IIS launching CGI scripts

47Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Win2K Job Object

New APIs to define resource-limited Jobs and assign processes to Jobs. Resource tracking in new performance

Objects. Designed for CGI scripts spawned as

separate processes by IIS Poorly written scripts can loop, have memory

leaks, etc.

Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update 48

Win2K file server performance

improvements.

6

7

8

9

10

11

12

50 MB 100 MB 200 MB 400 MB 800 MB

NT 4 - 128 MB NT 4 - 512 MB

W2K, RC3 - 128 MB W2K, RC3 - 512 MB

MB

Tra

ns

ferr

ed

/ S

ec

on

d

Dataset Size

Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update 49

Win2K file server performance

improvements.

0.00

0.10

0.20

0.30

0.40

0.50

0.60

0.70

50 MB 100 MB 200 MB 400 MB 800 MB

NT 4 - 128 MB NT 4 - 512 MBW2K, RC3 - 128 MB W2K, RC3 - 512 MB

Se

co

nd

s

Dataset Size

50Demand Technology Software, Inc. Windows 2000 Performance and Tuning: An Update

Where to get more information

“Microsoft Windows 2000 Resource Kit

“Inside Windows 2000” by David Solomon and Mark Russinovich

TechNet or the Microsoft Developer Network (MSDN) CD

top related