|
|
A HARRY POTTER xpERIENCE |
|
||
|
While releasing Windows NT 4.0, Redmond's Hexenmeisters were already dreaming of code convergence with Win9X. But such black magic often goes beyond what apprentice sorcerers can handle. Click for the latest review of open alternative to Windows and Office XP: Suse Pro Office with Evolution and StarOffice. |
||||
by
Jack Fegreus |
|
|
|
|
|
Long, long, long before that upstart Harry Potter, Johann Wolfgang von Goethe wrote Der Zauberlehrling, a poem about a sorcerer’s apprentice. Just over 100 years later, that poem would inspire Paul Dukas to compose his tone poem, the Sorcerer’s Apprentice. And some 50 years after that, Walt Disney, Leopold Stokowski, and Mickey Mouse would forever immortalize the tale of the hapless student of the black arts in Fantasia. It’s a tale now playing out in real life with the release of Windows XP, which for the first time extends the reach of Windows NT technology into the consumer market via the Home Edition. Like all good Gothic tales, this one begins with the protagonist, being driven from his home in swirl of deep and murky politics. As the Hexenmeister of DEC West walked away from the Prism debacle, he turned his attention to the even bigger mess with OS2 at Microsoft. Once again, the wizard worked his magic and there arose an extraordinary modern IT operating system that evolved into the utterly rock-solid Windows 2000. Nonetheless, the success and extraordinary adoption of Windows NT technology by IT is hardly a rounding number compared to the mass consumer market for games and other entertainment. And so the keepers of Windows 9X lusted after the stability of Windows NT just as Goethe’s sorcerer’s apprentice longed for the power of his teacher. |
|
|
|
|
|||||
|
The Linux revolution greatly exacerbated the Windows 9X problem as the master’s thesis project of Linus Torvalds turned first into a cult phenomenon and then a successful commercial OS. Now with Open Source rising up as the business-alliance tsunami of the century, Microsoft for the first time in a very long while faces both fundamental technology and business model challenges. The technical challenges to converge Win9X and WinNT were prodigious. Just consider the polar-opposite fundamental assumptions that underpin both architectures. Win9X was designed for just for a single hardware architecture: Intel. As a result, it was also designed to permit driver developers to tweak the underlying hardware right down to the iron. That’s just what all those makers of video, sound, and game port cards that proliferate in the home computer space did. On the other hand, Windows NT was born in an IT market that was trying to rationalize an explosion in RISC technology that seemed to be racing away from Intel. The problem was not how to get down to the iron, but rather, how to avoid getting near it. The solution was to create a Hardware Abstraction Layer (HAL) that would prevent any software—especially drivers—from directly manipulating physical hardware. In this way, Windows NT could be easily ported to Alpha, MIPS, and PowerPC, as well as Intel. It is, therefore, not without some irony that Windows XP runs on Intel and Intel, while Linux runs on everything from handheld PDAs to classic mainframes. |
|
So the first major technical hurdle was to create a unified driver model. To gauge Microsoft’s success at this part of the challenge, OpenBench Labs set up a pair of identical HP Omnibook 6000 systems, which are representative of typical high-end business laptops. Each system was powered by and Intel Pentium III CPU clocked at 700 MHz. Each was configured with 256MB of PC133 SDRAM and an IBM TravelStar Ultra ATA disk drive. In addition, we further complicated the equation by setting up three hardware configurations for each laptop: standalone, a simple port-replicator dock, and a fully equipped dock with embedded SCSI and ATA adaptors. On one Omnibook 6000, we installed Windows XP Pro, the successor to Windows 2000 Professional for business client computers. On the other Omnibook 6000, we installed SuSE Linux 7.3, which is the latest distribution from SuSE and built on the Linux 2.4.10 kernel and version 2.2.1 of the KDE desktop. We’ll be looking at SuSE 7.3 and RedHat 7.2 in much greater detail in a future review. For now, simply running the various OpenBench Labs benchmark programs on each OS, allowed us to gage how closely Linux and the Open Source business model have evolved into providing OS distributions with equivalent performance at a fraction of the cost. As a side note, SuSE 7.3 installed effortlessly, and more importantly, flawlessly on the Omnibook. No need for an exhausting installfest with the latest version of SuSE—if you have a DVD drive, the installation is downright trivial. A lot of this good news is a direct result of a number of enhancements to YaST2, SuSE’s configuration tool. A number of the noteworthy additions include a Logical Volume Manager for partitioning an active system and ISaX for windows configuration while the X Windows system is active. Microsoft has touted smilar features in Windows NT since the launch of the OS. For IT, there is support for a second journaling file system, JFS, as well as ReiserFS, which has long been a SuSE staple. There is also a new module for software RAID support. Not to slight home users—after all the big seller for Microsoft will be Windows XP Home—SuSE has included a setup for TV cards (see Home Theater Theatrics in this issue of e-Open) and automatic detection and configuration of IDE-based CD burners. |
|
|
||||||
|
|
With both laptop systems configured, we were ready to calibrate the Omnibook’s base CPU, memory, and streaming I/O performance under each OS. We began with our CPU benchmark which executes 34 numerically—both integer and floating point—intensive kernels. The results here were very much in line with OpenBench Labs' first tests of the Linux 2.4 kernel in the beginning of the year. At that time, we found the gap between Linux and Windows 2000 performance to have been closed to about 18% from previous observations, which had been in the range of 20-to-25%. Once again, the difference between the geometric means for the 34 kernels was on the order of 18% with Windows XP Pro clocking in at 240 and SuSE 7.3 clocking in at 203. Nonetheless, within a 95% confidence interval, performance was almost identical. This is a function of more variability in performance among the 34 kernels when run on Linux. This variability is especially prevalent on the high end as a number of kernels execute significantly faster on Linux. A significant number of the kernels execute much faster under Linux than Windows XP. |
|
|
At this point, we should note that for our CPU benchmark suite, compiler optimizations are very important factors in performance. For these tests we used the gnu c compiler (gcc). We are currently testing C and C++ compilers for Linux from Intel that could prove to close the performance gap entirely between the two operating systems. Next we examined the performance of the Omnibook’s memory subsystem. Here Linux and Windows XP performance was a bit closer, with Windows XP holding a distinct edge of about 10-to-12% in throughput performance. For small strides of 4 and 8 bytes, the performance of the Omnibook’s memory subsystem was identical to that of high-quality desktop systems equipped with PC133 SDRAM, which we have consistently found to be in the range of 250-to-300MB per second. For large strides, performance, which is gated by paging performance off of the disk, converged for the two systems. Given that convergence of memory throughput for large strides, we expected to find parity in sequential disk I/O performance between the two systems. We were not disappointed. |
|
|||||
|
On SuSE 7.3 we utilized a logical volume formatted with the Reiser File System (ReiserFS), which is a journaled extent-based file system. In theory, a journaled file system should have an edge in performance when checking the file during boot up and when issuing writes. Reads are supposedly more vulnerable to degradation due to fragmentation of the extents. Nonetheless, for small block transfers Linux now held an advantage over Windows XP Pro. For sequential disk I/O, it was Windows XP Pro that rapidly converged on SuSE 7.3, which delivered throughput on the order of 15MB per second as read sizes grew larger than 8KB. |
|
|||||
|
Our final benchmark characterizes the system’s capabilities for transaction processing database operations. The fundamental goal of the load benchmark is to determine how many I/O requests per second a given disk subsystem can reasonably support. The OpenBench Labs load benchmark suite systematically launches an increasing number of I/O-intensive daemon processes that read data in 8-KB blocks from a physical partition rather than from a file. I/O operations are performed on both hot-spot regions, which simulate database indices, and randomly across the volume, which simulates a large database. When the average access time of all of the processes exceeds 100 milliseconds, the I/O subsystem is deemed saturated and the benchmark terminates with a report to the user. As the graph shows, large volumes of asynchronous I/O requests are a currently a weakness in Linux performance. On our simple ATA drive, Windows XP Pro was able to deliver 70 I/Os per second with a average access time of only 40ms. In comparison, Linux was able to deliver only about 32 I/Os per second. With hardware RAID and storage on a SAN, this performance differential worsens dramatically. |
|
|||||
|
The problem lies squarely within the block I/O layer of the Linux kernel. In the current version—2.4.x—of the Linux kernel, the I/O subsystem works with a single spinlock, called io_request_lock. As a result, in a TP scenario with hundreds of independent I/O requests queuing up, this spinlock serializes operations that have no dependencies and creates a significant bottleneck. This is all being addressed by those now working on the I/O subsystem in the 2.5 kernel now under development. The new block I/O code eliminates the central spinlock and provides each request queue with its own lock. In addition, the new kernel will work more with page structures, which can be particularly advantageous when handling clustered requests from the raw I/O layer. These benchmarks attest to the magic and power of the old wizard from DEC West. But as Goethe’s young apprentice discovered, powerful magic in the hands of a neophyte can be a very dangerous thing. In the tale of the Sorcerer’s Apprentice, our young acolyte enchants a broom and commands it to bring water. The animated broom dutifully complies and brings water over and over again. Unable to stop the relentless broom, the apprentice takes an axe and chops it into pieces. But in a flash of scalability, all of the pieces begin to carry out the original instructions and the poor apprentice is awash in more water than Coleridge’s Ancient Mariner. Our experience actually using Windows XP Pro, however, was not unlike that of Goethe’s hapless student. Our problems all stemmed from Microsoft’s “soft” problem with converging Win9x with WinNT: How do you give naďve home users, an OS as powerful as WinNT and expect them to properly configure and manage the system? The answer from Redmond’s Zauberlehrlingen was to create automatic wizards to take care of all the problems. These wizards should work nicely in a simple SOHO environment; however, in a complex heterogeneous business network, they can be a very dangerous bunch. A prime example of a wizard run amuck is the upgraded Connect-to-the-Internet wizard. Once a very innocuous fellow, this wizard has been put on steroids in Windows XP. The new wizard looks for multiple Ethernet connections, such as the built-in 100-Mbit port and the wireless Ethernet PC Card that are in each OpenBench Labs Omnibook 6000. Once it finds more than one NIC, the fun really starts. Without a moment's hesitation. the wizard assigns one address to all of the NICs and proceeds to bridge the offending LAN segments. Imagine the effects of that cavalier action as the desktop PC tries to build bridging tables for the LAN. On our network which has a number of Macs running AppleTalk in the art and production departments, all of the Macs were instant goners. While dramatic, that is the least of the problems: At least it can be fixed by blowing up the bridge. Not all of the wizardry is so easily reversible. On each laptop, we had installed AT&T WorldNet for dialup Internet connectivity while on the road. All configurations were explicitly set to “Never dial” since most of the time these systems are used in the office with a LAN connection. Unfortunately, Windows XP, quite unlike Windows 2000, treats “Never dial” as merely a suggestion that can be ignored. Whenever a networking application is launched, the OS may—or may not—decide to launch the dialup application. Another annoying gotcha for business users is the dropping of support for Netscape-style plug-in modules in the XP version of Internet Explorer 6.0. Just try to download a PDF file from any site on the web. It’s easy as long as you right-click on the link and chose the option to "Save target as." The alternative is to make Opera your default web browser. Unfortunately there are even more bundled add-ons, such as the home movie maker and the MS Passport Messenger app, that make no sense whatever on a business laptop and that you can’t get rid of no matter how hard you try, Compounding the annoyance factor of these indelible programs is the need to conserve disk space with Windows XP. One of the really useful add-ons for IT is the ability to checkpoint files under Windows XP. Once again, however, there is a problem introducing a sophisticated IT tool to home users. So once again, we’re back to the mystical wizards. Worse yet, the checkpoint wizard, which should be on steroids, is on sedatives. The only parameter that can be set for this important function is the maximum amount of disk space that will be made available for this feature to consume. When the system creates checkpoints and when the system purges checkpoints is pure black magic on Windows XP. For Goethe’s young student, salvation from the golem brooms only came upon the return of the great sorcerer. Only the sorcerer knew how to stop the brooms in their tracks. For Windows XP Pro users, the solution is not quite so simple. To avoid the chaos of having a robust WinNT system that is as quirky as Win9x, your best hope is to exorcise every automated wizard that can be found.
That solution, however, raises an
intriguing issue concerning Total Cost of Ownership (TCO) for Windows vs.
Open Source systems. Up until now, conventional wisdom held that Windows
wizards were a key factor in holding down TCO by countering initial
licensing costs with lower maintenance costs and lower skills requirements
for the maintainers. Our initial foray into the unconventional world of
Windows XP puts that conventional wisdom about TCO into serious question. |