Call now: 252-767-6166  
Oracle Training Oracle Support Development Oracle Apps

 
 Home
 E-mail Us
 Oracle Articles
New Oracle Articles


 Oracle Training
 Oracle Tips

 Oracle Forum
 Class Catalog


 Remote DBA
 Oracle Tuning
 Emergency 911
 RAC Support
 Apps Support
 Analysis
 Design
 Implementation
 Oracle Support


 SQL Tuning
 Security

 Oracle UNIX
 Oracle Linux
 Monitoring
 Remote s
upport
 Remote plans
 Remote
services
 Application Server

 Applications
 Oracle Forms
 Oracle Portal
 App Upgrades
 SQL Server
 Oracle Concepts
 Software Support

 Remote S
upport  
 Development  

 Implementation


 Consulting Staff
 Consulting Prices
 Help Wanted!

 


 Oracle Posters
 Oracle Books

 Oracle Scripts
 Ion
 Excel-DB  

Don Burleson Blog 


 

 

 


 

 

 
 

VMware: Optimizing Windows

Oracle Tips by Burleson Consulting
 

As with Linux, it is safe to assume a virtual server host will have multiple processors and lots of memory, also most likely greater than 4 GB. Thus, you need to go with 64-bit Windows server editions unless you face some hardware driver issue that prevents this choice.

While I like Windows 2000 Server as much as the next guy and feel that it is a great candidate for being my virtual server host operating system, I nonetheless realize it is 7+ years old and getting a wee bit long in the tooth. Actually, the biggest problem is getting drivers for newer hardware on this platform. So Windows 2003 Server is really the only way to go and 64-bit Enterprise Edition Release 2 is the most highly recommended.

To improve I/O for file system based Oracle data files, Windows offers a little known and seldom used option that can yield between 50-150% performance improvements in standard database benchmarks like the TPC-C by simply changing the Windows registry setting as follows:

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\ Control\FileSystem\ NtfsDisableLastAccessUpdate=1

What this does is set the operating system to disable last access update for directories and files on this Windows server, which translates into radically reduced total I/O. Since the Oracle background processes are accessing the data files every 3 seconds and have their own headers with timestamps within them, why spend I/O resources to update time attributes for files or directories?

Some other common Windows registry tweaks for database servers include:

  • Disable 8 dot 3 Name Creation - This setting controls whether MS-DOS compatible 8.3 file names should be generated on NTFS partitions. Disabling this feature can increase the performance on high usage partitions that have large amount of files with long filenames. Setting this option also toggles whether to permit extended characters to be used in 8.3 filenames.

  • Enable a large size file system cache This entry controls whether the system maintains a standard size or a large size file system cache. Enabling a larger cache makes sense for networked database servers with sufficient memory.

  • Disable paging of the kernel code - This entry controls whether the user and kernel mode drivers and the kernel mode core system code itself can be paged. Disabling the paging of kernel code makes sense for database servers with sufficient memory.

  • IO Page Lock Limit - This entry controls the maximum amount of RAM that can be locked for I/O operations. The default minimizes RAM usage. An I/O intensive system could benefit from larger buffer sizes. Caution: setting this parameter too high can result in slower performance. Set it in increments and see how it affects your system

And whose corresponding recommended registry settings are as follows:

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\ Control\FileSystem\NtfsDisable8dot3NameCreation = 1

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\ Control\FileSystem\NtfsAllowExtendedCharacterIn8dot3Name = 0

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\ Control\SessionManager\MemoryManagement\ LargeSystemCache = 1

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\ Control\SessionManager\MemoryManagement\ DisablePagingExecutive=1

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\ Control\SessionManager\MemoryManagement\

  • IoPageLockLimit = N, where N is chosen as follows:

    • if RAM <= 32MB then

    • IoPageLockLimit = 512

    • if RAM > 32MB then

    • IoPageLockLimit = 4K

    • if RAM > 64MB then

    • IoPageLockLimit = 8K

    • if RAM > 128MB then

    • IoPageLockLimit = 16K

    • if RAM > 160MB then

    • IoPageLockLimit = 32K

    • if RAM > 256MB then

    • IoPageLockLimit = 64K

Note that I have included on the books DVD and download website a free Windows to easily set all these parameters on both local and remote database server as shown below in Figure 3.

Figure 3:  Windows Registry Settings

Obviously, installing anti-virus and anti-spyware software on the virtual server host is totally unnecessary because all it is going to do is run the operating system and hypervisor so that it can run clients. There will generally be very little direct use of this machine, except perhaps by the administrator during routine maintenance operations such as OS patches and backups.

Finally, I want to recommend that readers consider the DXtreme for Windows product line from InovaWave (www.inovawave.com). DXtreme augments the host operating system with a predictive optimization engine that can yield truly amazing results and the Lite version for laptops/notebooks is under $200. They claim many benefits, including:

  • Increased number of virtual machines per server

  • Increased performance of virtual machines and applications

  • 5X improvements for streaming reads

  • 7X improvements for streaming writes

  • 25X improvements for random reads/writes

Their web page explains their various product offerings quite nicely via the table copied on the following page (Table 2). Basically, they offer products for machines ranging from laptops/notebooks to very large servers. And in all cases, their product simply makes the streamlined host operating system better at hosting virtual clients, especially those with lots of I/O such as databases. Chapter 8 of this book will include some performance comparisons done using this amazing product.

Quick Reference

Below is a summary of the recommended host optimizations:

BIOS

  • Disable Hyper-Threading

  • Enable Virtualization Support

Linux:

  • Kernel

    • 64-bit

    • SMP Support

    • Compile and link a Monolithic kernel

    • Possibly recompile/re-link C-runtime library

  • Memory

    • Huge Pages

  • I/O      

    • /etc/fstab add ,noatime

  • Remove non-essential software components

  • Disable non-essential background processes/services

Windows:

  • Version

  • 64-bit

  • Windows 2003 Enterprise R2

  • Registry (use my freeware program to update)

  • Disable last access update

  • Disable 8 dot 3 name creation

    • Enable large size file system cache

    • Disable paging of kernel code

    • IO Page Lock Limit >= 16K

    • Remove non-essential software components

    • Disable non-essential background processes/services

    • No anti-virus or anti-spyware programs installed

    • Buy DXtreme virtualized server IO enhancement software

Conclusion

In this chapter, we looked at how to best configure our centralized host and its subsystems in order to maximize database performance. The goal was to hit the center bulls-eye in order to score the most points, which meant to optimize the host first and foremost. All of these techniques should be considered as best practices and liberally implemented across all your host machines for the benefit of all their guest operating systems. The cost to implement each of these concepts is relatively small, but both their individual and cumulative performance impacts are well worth the trouble.

 
This is an excerpt from
Oracle on VMWare: Expert tips for database virtualization by Rampant TechPress.


 

 
��  
 
 
Oracle Training at Sea
 
 
 
 
oracle dba poster
 

 
Follow us on Twitter 
 
Oracle performance tuning software 
 
Oracle Linux poster
 
 
 

 

Burleson is the American Team

Note: This Oracle documentation was created as a support and Oracle training reference for use by our DBA performance tuning consulting professionals.  Feel free to ask questions on our Oracle forum.

Verify experience! Anyone considering using the services of an Oracle support expert should independently investigate their credentials and experience, and not rely on advertisements and self-proclaimed expertise. All legitimate Oracle experts publish their Oracle qualifications.

Errata?  Oracle technology is changing and we strive to update our BC Oracle support information.  If you find an error or have a suggestion for improving our content, we would appreciate your feedback.  Just  e-mail:  

and include the URL for the page.


                    









Burleson Consulting

The Oracle of Database Support

Oracle Performance Tuning

Remote DBA Services


 

Copyright © 1996 -  2020

All rights reserved by Burleson

Oracle ® is the registered trademark of Oracle Corporation.