The following WinXP tweaks are provided by Dave Laborde. I reformatted his Word doc into an easier to read and faster to download html page. Dave is one of our customers and he is the author of our Win2K and WinME tweaks pages. He is very active on both the Canopus Storm and Matrox RT2500 user group message boards.
- Gary Bettan, The Videoguy
TWEAKS for Windows XP for Video Editing (v 1.0)
(David LaBorde - 2001)
[This document may be copied and distributed without permission or monetary compensation. It may not be modified or changed with out the author's permission. It may not be sold for personal monetary gain nor included in manufacturer equipment manuals / literature unless otherwise approved by the author. If anyone has comments or suggestions, they should send an email to: mailto:email@example.com]
Preface & Disclaimer
The purpose of this document is to provide a comprehensive guide to understand and optimize a PC based video editing system using the new Windows XP Operating System. The optimization steps are proven techniques and are in agreement with normal optimization practices for Windows based Operating Systems. Hardware and software technology is ever changing and the user should be diligent to understand techniques, interactions, changes and developments that may supercede those outlined in this document. Although technology has made hardware and software integration much easier, simplistic and less prone to human error (at installation); this author cannot be responsible for system / hardware failures and/or program crashes as well as destruction of files. This author cannot cover nor continuously update all combinations of hardware, operating system upgrades, driver upgrades and installation scenarios. It is up to the user to understand techniques utilized and to understand software differences as well as obtain driver upgrades and patches as they become available. Items noted that conflict or contradict manufactures recommendations should not be done without understanding and rather replaced / revised with the manufacture's recommendation.
This document is not designed to eliminate or minimize the need for "turnkey" video editing systems. The guide provides details for each action item but is also written with the assumption that the reader is familiar with terminology and procedures for PC hardware, software and video editing equipment. It is not intended to provide novices with enough information to become turnkey integrators. Many videographers would benefit from "turnkey" systems rather than building and/or optimizing (tweaking) their own systems. Though cost effective and rewarding; building your own system can be very time consuming and tedious. Video editing systems can become complex and users would benefit from experienced system integrators to best utilize their money and time.
Since this document utilizes standard practices and software adjustments; it is rational to understand that certain items may be very similar in grammar and/or content to those found in other documentation. No items were intentionally copied directly from other sites or literature other than references to directives & info published by the OS developer (Microsoft). Readers must understand that there are only so many ways to communicate a particular task, technology and/or system optimization. Any familiarity of content with other documents is by coincidence. Many programming / software adjustments and task identification (steps) must be exact and precise. Therefore, these items would match exactly with those documented by others. All items / steps in this document are written by this author utilizing experiences with the new operating system and notes written over years of practice. References to actual hardware & software products are for explanation, integration and optimization purposes only - names and products are under control of manufactures copyrights, patents and registered trademarks.
TWEAKS for WinXP for Video Editing (v 1.0) (David LaBorde - 2001)
- General Overview of Windows XP
- Test System & TWEAK Methodology
- TWEAKS (21 items)
- Quirks & Observations while testing
- TWEAKS that didn't Work
- Helpful Hints
- Restoring Registry Settings
- Dave Laborde's Windows XP TWEAKS / Optimization for Video Editing Systems – PART II
Section I - General Overview of Windows XP
There have been numerous reports and opinions throughout the PC world about the introduction of Microsoft's new operating system XP. I was intrigued to whether the system was just a new skin on the old Windows 2000 kernel or whether it was something new that may be helpful to the videographer. Windows 2000 has proven to be a very reliable and stable operating system and is utilized in most video capture card systems and editing programs. I approached this with thoughts on opposite ends of the spectrum. One - Why move to something else when I have an operating system already proven to be reliable. Two - Something this new might just make editing more efficient and easier. After a lot of research into the Microsoft knowledge base system and hours of testing XP I have concluded something towards center with a promising future moving solely to number two. Microsoft has made many enhancements to the kernel of the XP Windows operating system. This section will provide an overview of the new features and changes in Windows as I see it impacting video editing. I do not intend to discuss the system in entirety. This first section will be somewhat lengthy but I think there are a number of features that need to be highlighted. Hopefully this will help one make a fair assessment whether to switch. Let's look at the facts not "hear say" or unsubstantiated opinions. The more you understand the differences the more you can utilize it in editing.
The Windows XP Operating System represents a number of new features. First let's just say that XP is a dynamic self-tuning OS. It will even move files around on the disk - based upon use. There is no static list but rather they are built up dynamically as you use your system This is not done too often (every 3 days) and it waits for the system to be idle before it does any idle-time performance work. Another neat feature is "ClearType". This makes a noticeable impact on 2D performance and the view is great. Contrary to some reports it is not designed just for LCD screens. "MSConfig" is also back! Those familiar with Windows 98 remember this GUI that allowed you to make a number of modifications as well as minimize startup TSR (Terminate Stay Resident) programs. Many Win 2000 users will appreciate its return. Alpha blending of icons makes long hours at the CRT much easier on the eyes. Whatever background color, fonts & pictures displayed they'll always look smooth.
XP has a new Start menu scheme but if you are a "die-hard" (like me) you can switch to the "classic" windows scheme. The help system has a wealth of new features. In one-shot you can perform queries against the local database as well as the Microsoft Knowledge Base. It can also return results on basic terms like help of Windows 2K. Since XP is so new; it even defaults to searching for Windows 2000 specific issues. In Windows 2000, you could not make a boot disk. You could create a setup disks, but not a boot floppy. Now you can "right click" on the Floppy drive icon, select format, then place a checkmark in the 'Create an MS-DOS startup disk.' The MSDOS.SYS file contains 'W98EBD' - which appears to be files taken from Windows 98. Much of this won't do you much good if you have an NTFS drive.
Managing file associations is a really great tool : Right-click on a file, locate the updated 'Open With' cascading menu (it now uses a program's default icon), then click 'Choose Program' if you wan to change how the file is opened. If you don't know what program to associate a file with there's a "choose program" point and this brings up a list of recommended programs to use as well as all others installed on the machine.
If you are like me; I notice speed increases (and decreases). As file operations go, this is the fastest version of Windows I have used. In Windows 2000, I could select a few file on the desktop, delete them or open them and then about two seconds later, it would open or it deleted the icons would disappear. When you do the same thing in XP, the results are about as instantaneous as possible.
Kernel improvements are significant because the kernel provides low-level operating system functions, including thread scheduling, interrupt and exception dispatching, multiprocessor synchronization, and a set of routines and basic objects used by the rest of the operating system to implement higher-level constructs. Listed below are some of the primary enhancements. (Note these are not all of them and I give only a brief summary for each. Consult the Microsoft database for additional information).
The registry in XP plays a big role in the configuration and control just like Windows 2000 did. The registry resides on the disk as multiple files known as "hives". One might think that the registry is static data stored on the hard disk but it is also a window into various in-memory structures maintained by the Windows XP executive and kernel. The registry code is redesigned for Windows XP, providing enhanced performance while remaining transparent to applications by using existing registry programming interfaces. Examples of XP registry enhancements are larger registries and faster queries. Those that say XP is the same as Win 2000 do no understand this.
Windows XP supports larger registries than previous versions of the NT kernel. They were effectively limited to about 80 percent of the total size of paged pool. The new implementation is limited only by available system disk space. There was a tendency to use the registry more like a database among registry consumers. Of course this increases the demands on registry size. Originally the design placed all of the registry files in the paged-pool. In the 32-bit kernel it is limited at approximately 160 MB because of the layout of the kernel virtual address space. A problem occurred as larger registry consumers appeared, a large amount of paged-pool was used for the registry alone, potentially leaving too little memory for other kernel-mode components.
Windows XP solves this problem by moving the registry out of paged pool and using the cache manager to do an in-house management of mapped views of the registry files. The mapped views are mapped in 256-KB chunks into system cache space instead of the paged pool.
The thing that impacted registry performance in earlier versions was a location problem. Related cells are spread through the entire registry files. Accessing certain information, such as attributes of a key and these could degenerate into page-faults, which of course lowers performance.
The Windows XP registry uses a new & improved algorithm for allocating new cells. What does it do? It keeps related cells in closer proximity — such as keeping cells on the same page or nearby pages. This solves the locality problem and reduces the page faults incurred when accessing related cells. A new "hive" structure member tracks freed cells instead of relying on linked freed cells. When future cells are allocated, the freed cell list and a vicinity argument are used to ensure the allocation is in the same bin as the hive.
XP improves the way the registry handles large data. In previous versions; if an inefficient application constantly increased a value by a small increment, it created a sparse and wasteful registry file. Windows XP solves this problem with a big cell implementation where cells larger than 16 KB are split into increments of 16-KB chunks. This reduces fragmentation when the data length of a value is increased within a certain threshold.
Numerous product support enhancements have been built in. These include enhancements to the kernel that improve the debugger. This includes Kernel changes for improved debugging, Built-in heap leak detection and new heap performance counters.
Improved Low-Memory Performance
Windows XP can be more resilient during periods of low memory the "must succeed" allocations are no longer permitted. Earlier versions and drivers contained memory allocation requests that had to succeed even when the memory pool was low. These allocations would crash the system if no memory was available. If memory couldn't be allocated, the system would blue screen if these routines were used. For XP, kernel components and drivers are no longer allowed to request "must succeed" allocations; memory allocation routines will not allocate memory if the pool is too low. These changes allow drivers and other components to take appropriate error actions, rather than an extreme approach such as bug checking a machine.
Another improvement for low-memory conditions is I/O throttling. If the system can't allocate memory, it throttles down to process one page at a time, if necessary, using freely allocated resources. This allows the system to continue at a slower pace until more resources are available.
System Restore is a combination of a file system filter driver and user-mode services. It is made to unwind configuration operations and restore a system to an earlier configuration. System Restore is a feature only of Windows XP Personal and the 32-bit version of Windows XP Professional. It is not a feature of the server versions of Windows XP.
System Restore in Windows ME was a way to protect system files, such as important DLLs and VXDs. In XP, it has evolved into a complete system protection mechanism. It literally takes snapshots of your configuration at various key times, such as when you install a new driver. If something goes wrong, you can "roll-back" the changes, and even roll-back specific drivers from Device Manager if they're causing problems. However, for all this protection to work it takes HD space. XP allocates 10% of the partition on your System drive by default. If you have a large drive, you can be losing lots of space.
You can change a variety of options for System Restore. You can Right-click on My Computer, click Properties, and choose the System Restore tab. In this window you can completely disable system restore as well as change settings for specific drives.
Changes in Existing I/O Features
Windows XP includes several changes in existing I/O features, including:
FAT32 on DVD-RAM
DVD-RAM disks can appear as both CD/DVD devices and as re-writeable disks. Windows XP will allow DVD-RAM media in DVD-RAM drives to be formatted and used with the FAT32 file system.
NTFS will now defragment with XP at the cluster boundary for non-compressed files. In Windows 2000, this was limited to the page granularity for non-compressed files. NTFS will also defragment the MFT. This was not allowed in Windows 2000. This is through the regular code path, so there is no limit to how much at once can be moved, and any part of it can be moved. If there is no available space in the MFT to describe the change, then it will be rejected. NTFS will now defragment for cluster sizes greater than 4 KB. NTFS will also defragment re-parse points, bitmaps, and attribute lists.
Memory Management Enhancements
Windows XP has improved memory management. We know the memory manager provides the system services to allocate and free virtual memory, share memory between processes, map files into memory, flush virtual pages to disk, retrieve information about a range of virtual pages, change the protection of virtual pages, and lock the virtual pages into memory. The manager also provides a number of services, such as allocating and de-allocating physical memory and locking pages in physical memory for DMA transfers, to other kernel-mode components inside the executive as well as to device drivers. The improvements are: Logical "prefetcher" for faster boot and application launch, enhanced memory management for better scalability , reduced paged pool usage, increased number of system page table entries and support of giant drivers.
Logical Prefetcher for Faster Boot and Application Launch
When a XP computer is booted, data about all logical disk read operations is saved. On future boots, this information is used to "prefetch" these files in parallel with other boot operations. During boot and application launch, a Windows system demands and pages a sizable amount of data in small chunks (4 KB to 64 KB), seeking between files, directories, and metadata. The Logical Prefetcher, which is new for Windows XP, brings much of this data into the system cache with efficient asynchronous disk I/Os that minimize seeks. During boot, the Logical Prefetcher finishes most of the disk I/Os that need to be done for starting the system in parallel to device initialization delays, providing faster boot and logon performance.
Logical prefetching is done by tracing frequently accessed pages in supported scenarios and efficiently bringing them into memory when the scenario is launched again. When a supported scenario is started, the transition page faults from mapped files are traced; recording which page of a file is accessed. Once the scenario has been completed (either the machine has booted or the application started), the trace is picked up by a user-mode maintenance service, the Task Scheduler. The information in the trace is used to update or create a prefetch-instructions file that specifies which pages from which files should be prefetched at the next launch.
The user-mode service determines which pages to prefetch by looking at how successful prefetching has been for that scenario in the past, and which pages were accessed in the last several launches of the scenario. When the scenario is run again, the kernel opens the prefetch instructions file and asynchronously queues paging I/O for all of the frequently accessed pages. Prefetching is useful only when the required data is not in memory, the applications that are launched frequently are not traced and prefetched each time.
Improved Caching and Backup Due to Dynamic Paged Pool Usage
A major redesign of part of the Memory Manager structure creates substantially less paged pool to be consumed. This allows for greater caching capacity and faster response. Paged pool is now only allocated while a view is active and when it does happen, only for an amount proportional to the actual view size. When a view is unmapped, that pool is then immediately available for reclaiming if the system detects that overall pool usage is high. Paged pool used to be allocated for an amount proportional to the section (file) size, regardless of the actual views that were ever used.
Support of "Giant" Drivers
Windows XP supports "giant" driver mappings. Video drivers are the most obvious benefactors; this also enables other specialized drivers that support large amounts of dedicated RAM. Windows XP supports nearly a gigabyte of virtual continuous space for a driver. This compares to support of about 220 KB for Windows 2000 and about 100 KB for Windows NT 4.0.
Improved Boot and Logon Performance
A feature many users want is a fast system startup, whether from cold boot or when resuming from standby or hibernation. When a Windows XP system is first booted, data is saved about all logical disk read operations. On later boots, this information is used to prefetch these files in parallel with other boot operations. The Windows XP operating system has improved startup times, which provides opportunities for system manufacturers who want to improve boot and resume times for new computers.
Boot Loader Improvements
The loader performance increase is done by optimizing the disk reads. The Windows XP boot loader caches file and directory metadata in large chunks in a most-recently-used manner, which reduces disk seeking. Each system file is now read with a single I/O operation. The resulting improvement in Windows XP is that the boot loader is approximately three to five times faster than in Windows 2000.
Operating System Boot Improvements
Optimizing operating system load in Windows XP is achieved by overlapping device initialization with the required disk I/Os, and by removing or delaying loading all other processes and services from boot that are unnecessary at boot time. Windows XP initializes device drivers in parallel to improve boot time. Instead of waiting for each device sequentially, many can now be brought up in parallel. The slowest device has the greatest effect on boot. Overlapped device initialization and additional tweaking can be done with the Bootvis.exe tool.
Device Driver Rollback
I really like this new feature. When most classes of new device drivers are installed, Windows XP (Professional) will automatically maintain a copy of the previously installed driver. The older version is available for reinstallation if your customer's computer has problems with a newer version of the driver. I have used this a number of times.
Last Known Good Configuration
I have also used this feature a number of times. "The Last Known Good Configuration" feature in Windows XP comes up on the F8 "safe mode" menu. It is a system recovery option used if you have trouble booting the PC after a hardware or software modification. Using XP this it includes the systems working drivers in addition to registry information making the feature an even more capable recovery tool.
System Restore Enhancements
This acts similar to the "undo" command in other programs. The System Restore feature automatically monitors and records key system changes on your computer. This information is available so that if you change a system setting and then discover a problem resulting from the change, you can easily reverse the change.
System File Protection
Windows XP protects core system files from being overwritten by application installs. In the event a file is overwritten, Windows File Protection will replace that file with the correct version.
Differences between Windows XP Home and Windows XP Professional
Before we begin the reader should understand differences between the two versions. I am sure most know by now that Windows XP Professionals has all the features of Windows XP Home Edition. It also has the extra features listed below:
- Remote Desktop - remotely access your Windows XP Professional PC, from another Windows PC, so you can work with all of your data and applications while away from your office.
- Offline Files and Folders - access to files & folders on a network share when disconnected from the server.
- Encrypting File System - protects sensitive data in files that are stored on disk using the NTFS file system.
- Access Control - restrict access to selected files, applications, and other resources.
- Centralized administration - join Windows XP Professional systems to a Windows Server domain to take advantage of the full range of powerful management and security tools.
- Group Policy - simplifies the administration of groups of users or computers.
- Software Installation and Maintenance - automatically install, configure, repair, or remove software applications.
- Roaming User Profiles - access to all your documents and settings no matter where you log on.
- Remote Installation Service (RIS) - support for remote operating system installations where desktops can be installed across the network.
- Multi-lingual User Interface (MUI) add-on - change the user interface language to get localized dialog boxes, menus, help files, dictionaries, and proofing tools etc.
- Scalable processor support - up to two-way multi-processor support. The last item is of interest to many videographers as many video editing systems are scalable for faster performance utilizing two processors.
- Local Group Policy Editor - This is one of the most full featured Windows XP configuration tools available & is hidden so most people don't even know it exists. It's called the Local Group Policy Editor, or gpedit. To invoke this editor, select Start and then Run, then type the following: gpedit.mscAfter you hit ENTER, you'll be greeted with gpedit. It will allow you to modify virtually every feature in Windows XP and many without having to resort to regedit. Look around sometime and have a good time exploring Note - I think "gpedit" is only in the Professional Version.
For the testing of Windows XP the author utilizes a dual processor system. Therefore, the Professional edition was used to allow MP usage. All other differences noted by Microsoft were deemed superficial so I felt no testing was warranted for optimization using the Home (Personal) edition. (Note - Win XP was a fresh install - I am not sure of the success or failures from an upgrade installation)
System Specs are as follows:
Tyan S2460 MOBO utilizing 2 Athlon MP (1.2 ghz) Processors
1 gig of DDRAM (registered and ECC)
Enermax 550W Power Supply
Leadtek WinFast Geforce 3 AGP Card
eVGA Geforce2 PCI Video card (secondary monitor)
Promise Ultra100 UMDA 100 IDE card interface
1 drive bay with swappable trays to utilize separate SYS HD for Win 2000 & Win XP
4 UMDA 100 Hard Drives for A/V
Turtle Beach Santa Cruz Audio Card
Digital Doc5 Hardware Temperature monitoring System
Pioneer A-03 DVD-R (DVD Player & Recorder)
Hewlett Packard 9700 CD-RW
Canopus "STORM" w/mpeg Module & XPLODE-Pro software (check render efficiency.)
Adobe Premiere 6.01 Video Editing Program
At the time of the initial testing the final retail version of Windows XP had been out less than one month. There were already a number of TWEAK guides and TWEAK software programs available on the internet. The author reviewed these but found many to be superficial and/or harmful when integrating with a video capture / editing system. The author had also done extensive TWEAK (optimiz