Presentation is loading. Please wait.

Presentation is loading. Please wait.

Presented by: Matthew Hester IT Pro Evangelist Microsoft Corporation My Boss Martin.

Similar presentations


Presentation on theme: "Presented by: Matthew Hester IT Pro Evangelist Microsoft Corporation My Boss Martin."— Presentation transcript:

1

2

3 Presented by: Matthew Hester IT Pro Evangelist Microsoft Corporation mhester@microsoft.com@matthewhesterhttp://blogs.technet.com/matthewms My Boss Martin Schray martin.schray@microsoft.com Microsoft Windows Server 2008 R2 Administration Instant Reference

4 1. 32-bit technology is aging technology – we have long been approaching its limits 1989: 486 DX, first 32-bit Intel-Chip 1993: Windows NT 3.1, first 32-bit OS from Microsoft 2. 64-bit technology has been available for other Operating Systems for years. Some examples: 1992: DEC ALPHA processor - Windows NT (even Windows 2000 in the Beta phase) 1992: IBM PowerPC processor 1995: SUN UltraSPARC processor 1996: HP updated PA-RISC processor to 64-bit 3. Microsoft is betting all its horses on 64-bit Technology 4. Superb 64-bit hardware now available to support most workloads on Windows! b/w = 32-bit SW colored = 64-bit SW DEC ALPHA

5 Virtual memory - This is a method of extending the available physical memory on a computer. In a virtual memory system, the operating system creates a page file, or swap file, and divides memory into units called pages. The total amount of memory that is available to programs is the amount of physical memory in the computer in addition to the size of the page file. Paging File - This is a disk file that the computer uses to increase the amount of physical storage for virtual memory Paged Pool - This is a region of virtual memory in system space that can be paged in and out of the working set of the system process. Used by Kernel-mode components to allocate system memory. Non-paged Pool - This is a memory pool that consists of ranges of system virtual addresses that are guaranteed to be resident in physical memory at all times and thus can be accessed from any address space without incurring paging input/output (I/O). System cache - These are pages that are used to map open files in the system cache System PTEs (Page Table Entries) - A pool of system Page Table Entries (PTEs) that is used to map system pages such as I/O space, Kernel stacks, and memory descriptor lists.

6 When we talk about 32-bit or 64-bit processors, we talk about the number of bits that a processor's registers can store All computed data is eventually stored in a register before it is processed 64-bit processor = register width is 64 bits (twice as much data per register compared to a 32-bit processor) CPUs have different registers, e.g. GPR and FPR Two main data types stored in the GPRs (general purpose registers) Integer data(the actual data being computed) Address data(memory pointers) The register width of the memory pointers is one of the key advantages of 64-bit processors 32-bit registers can directly address 2 32 bits = 4 giga-bytes 64-bit registers can directly address 2 64 bits =16 exa- bytes* = 16 billion GB * 16 exa-bytes can technically be addressed using 64-bits, but no HW currently has this capability Execution Unit CPU Registers L1 Instr. Cache L2 Mem. Cache L3 Mem. Cache RAM Memory

7 /3 GB switch Using 32-bit Windows Server, user processes are limited to flat 4 GB virtual address space 64-bit Systems free the Kernel from sharing Windows OS typically occupies the first 2 GB of memory Can be influenced using the /3GB and /UserVA boot.ini switches doesn't really improve performance for most apps Only useful for apps that have been compiled with /LARGEADDRESSAWARE compiler option 32-bit applications running on 64-bit Windows can each be assigned up to 4GB User Memory in the Virtual Address space Does NOT negatively impact Kernel Memory 2 GB Virtual Address Space Kernel Memory User Memory 1 GB 3 GB Kernel Memory User Memory all 32-bit Apps 4 GB 32bit apps on 64bit OS 12 GB 2 GB Kernel Memory User Memory 32-bit App1 4 GB User Memory 32-bit App3 /largeaddressaware User Memory 32-bit App2 2 GB

8 Server App Address Space 4 GB Server App Address Space Physical Memory 12 GB Workarounds do exist for 32-bit Windows Server to leverage more than 4 GB physical memory Physical Addressing Extensions (PAE) and Address Windowing Extensions (AWE) must be used by applications to map to additional memory Downside: translating between virtual and physical memory strongly impacts performance 64-bit Systems eliminate the 4 GB memory barrier Can directly address the physical memory Server App Address Space Physical Memory 4 GB 12 GB AWE Window AWE Memory

9 Memory allocation settings32-bit x8664-bit x64/Itanium Total amount of virtual address space 4 GB16 TB Amount of virtual address space per 32-bit process 2GB (3GB with /Largeadressaware) 2GB (4GB with /Largeadressaware) Amount of virtual address space for the 64-bit processes NA8 TB Amount of paged pool memory 540 MB128 GB Amount of non-paged pool memory 256 MB (128 MB w /3GB) 128 GB Size of system cache 1 GB1 TB

10 Process Address Space 32-bit (2 GB/3GB) 64-bit (8 TB) – both x64 and Itanium

11 Direct (flat) addressing significantly reduces the driver development complexity (no need to deal with above 4GB memory issues) Native 64-bit applications have 8 TB of directly addressable Virtual Address Space 4GT enabled applications can take advantage of the full 4GB address space and do not have to share memory with OS (no boot.ini switches required) Increase in memory space contributes to large I/O caches

12 x64 architecture uses twice as many general-purpose registers, each a full 64bits wide, and doubles the number of 128-bit wide SSE/SSE2 (Streaming Single Instruction-Stream…) registers to 16. Better multiprocessing scalability (support up to 64 processors)

13 Kernel Patch Protection (Patch Guard) - Microsoft Windows Server 2003 SP1 and later versions of Windows for x64-based systems do not allow the kernel to be patched except through authorized Microsoft-originated hotfixes – assists in fighting rootkits. Windows Vista x64 and Windows Server 2008 require driver signing by manufacturers Data Execution Prevention (DEP) is always enabled for 64bit applications even if /noexecute=OptOut policy level is specified

14 Executed in WOW64 environment Native hardware emulation Performance similar to x86 Take advantage of flat memory model and have full access to 4GB VAS. Benefit from increased I/O capabilities of x64 platform PAE enabled applications can take advantage of memory above 4GB without any special boot.ini switches

15 Listed in http://support.microsoft.com/kb/282423 http://support.microsoft.com/kb/282423 No Mixed 64-Bit/32-Bit Processes 64-bit programs cannot load and call 32-bit MDAC. 64-bit Microsoft Internet Explorer cannot load 32-bit ActiveX controls. The 64-bit shell cannot load 32-bit Inproc shell extensions. 32-bit installer programs cannot load and register 64-bit DLLs. No 16-Bit Code No 16-bit code can run, except for recognized InstallShield and Acme installers (these are hard-coded in Wow64 to allow them to work). 16-bit Setup bootstraps are not supported. 16-bit MS-DOS and Microsoft Windows 3.x utilities will not start. No Kernel-Mode 32-Bit Code There is no support for Kernel-mode or 32-bit code such as: 32-bit virus-detection or 32-bit file system filters. 32-bit video adapter or 32-bit network adapter drivers. 32-bit Kernel-mode printer drivers Cccc No OS/2 or Posix Program Support There is no support for OS/2 or Posix programs High bit pointer usage in some older applications – developers never expected full 4GB availability and used higher bits in pointers to store additional information: http://blogs.msdn.com/slavao/archive/2006/03/12/550096.aspx

16 Is generally not recommended for server applications Can present interoperability issues: IIS – documented in http://technet2.microsoft.com/windowsserver/en/lib rary/ee52acd2-84e0-417c-92b3- 80b1cb3848281033.mspx?mfr=true http://technet2.microsoft.com/windowsserver/en/lib rary/ee52acd2-84e0-417c-92b3- 80b1cb3848281033.mspx?mfr=true On 64-bit Windows, 32-bit processes cannot load 64-bit DLLs, and 64-bit processes cannot load 32-bit DLLs Must configure IIS to create 32-bit worker processes. SCOM 2007 64-bit Agents cannot use 32-bit performance counters (SCCM 2007)

17 64-bit Hardware running 32bit vs 64bit Windows Windows Server 2003 Enterprise Edition SP1 Windows Server 2003 Enterprise x64 Edition Mbits/Sec Avg784Mbits/Sec Avg976 Concurrent Connections Avg15,746Concurrent Connections Avg13,600 Get Req/Sec Avg2,000Get Req/Sec Avg3,400 Get Req/Sec Max2,200Get Req/Sec Max6,800 CPU Avg32%CPU Avg60% Application Process (VM Usage)2GBApplication Process (VM Usage)3.2GB HTTP 500 Errors2% HTTP 500 Errors0% – Stress generated by live HTTP traffic from Windows Update Downloads – 32bit bottlenecked by 2GB VM limit vs 4GB capabilities on 64bit – Improved compute times on 64bit increased Req/Sec while lowering Concurrent Connections (Improved HTTP Request Processing Times) 17

18 Test Case: 64-bit Hardware running 64bit Windows Windows Server 2003 Enterprise x64 EditionResults Concurrent Connections Avg11,697 Connection Attempts/Sec Avg430 Connection Attempts/Sec Max577 Get Req/Sec Avg778 Get Req/Sec Max956 CPU Avg96% – Stress generated by live HTTP traffic on www.Microsoft.comwww.Microsoft.com – 32bit bottlenecked by 2GB VM limit vs 4GB capabilities on 64bit – Improved compute times on 64bit increased Req/Sec while lowering Concurrent Connections – (Improved HTTP Request Processing Times) 18

19 Folder redirection ensures separation of 32-bit program and system files Typically a non-issue for 32-bit applications, as completely handled by WOW64 The two different Program Files directories are only meant to keep 32-bit and 64-bit application binaries apart; 32-bit binaries don't have to be stored in the "Program Files (x86)" folder

20 Registry redirection separates the "Software" node of 32-bit apps in the Windows Registry Again, typically a non-issue for 32-bit applications, as completely handled by WOW64 Registry keys for 32-bit and 64-bit versions of same application can co-exist 20

21 64-bit doesn't make everything faster! However, when your app has memory constraints, the performance gains quickly become apparent Example 1:.NET Web-Applications (CachePerf testapp) 1,000  Unique Searches  10,000 with Windows.NET 2.0 Source: http://msdn.microsoft.com/vstudio/java/compare/benchmark64/default.aspxhttp://msdn.microsoft.com/vstudio/java/compare/benchmark64/default.aspx Worker-Process: 32-bit 64-bit 32-bit 64-bit

22 Example 2: AD Performance – need to understand caching limits… AD Caching Limitations: Performance heavily depends on how much of the AD database the LSASS process (AD) can cache in memory… Operating System of DCstandard LSASS cache (max) with /3GB Boot.ini switch Windows 2000 (32-bit)*0.5 GB1 GB Windows 2003/8 (32-bit) 1.5 GB2.6 GB Windows 2003/8 x648 TBN/A * /3GB switch only available in Advanced Server Edition

23 Example 2: LDAP queries against Active Directory DCs running on 32-bit Windows vs. 64-bit Windows with AD DIT at 10 GB (can't be cached on the x86 32-bit DC) x64 System: 2 x 2.2 GHz AMD Opteron, 14 GB RAM x86 System: 2 x 2.4 GHz Xeon, 4 GB RAM Syste m Avg query timeAvg entries touchedAvg entries / sec x6425,422 ms1,039,28141,186 x86 *300,016 ms374,6921,249 x648,224 ms213,33625,941 x8659,951 ms213,3363,560 Query1: touches as many objects as possible (1 Million) Query2: touches approx. 200k objects * Query on x86 32-bit DC exceeded LDAP policy limit for query duration (300 ms)

24 Beware that to leverage the 64-bit benefit you also need to add more physical memory to your server… WS2008 64-bit Server with 4GB physical memory requires more memory for the OS than an equivalent 32-bit Server WS2008 Ent. x64, 4GB WS2008 Ent. x86, 4GB Base OS (no roles or features)

25 General Benefit of 64bit for Virtualization: Larger kernel address space allows better scaling to support more VMs per server, allowing a higher degree of consolidation More virtual address space per VM allows increased performance for VMs themselves

26


Download ppt "Presented by: Matthew Hester IT Pro Evangelist Microsoft Corporation My Boss Martin."

Similar presentations


Ads by Google