Windows Server 2008 Rant

Programming, General No Comments »

[Warning: rant follows!]

Now that the behemoth is released, I have a Windows Server 2008 trial version going again on my home NAT + File server. I had quite the trouble with Beta3 of Windows Server 2008, but expected the final product to be free of any such problems as I was encountering. Boy was I wrong.

The server is an AMD Athlon 3500+ with 2 GB of RAM (Corsair TwinX), four SATA drives (all WD - 1x 200 GB boot plus 3x 500 GB in a soft RAID 5) and a low-power passively cooled Asus GeForce 8300 card on an Asus NForce 4 mainboard.

I have to let off this rant because I’m so incredibly frustrated with this toy operating system. I’m not a linux guy and wouldn’t even remotely consider using it on my workstation for everyday work, but I’m seriously considering to go through the effort of configuring a complete linux environment just to get my home server running for good.

What the hell am I doing wrong? If what I’m experiencing is the state of things with Windows Server 2008, I can’t imaging anyone seriously using such a system professionally.

Here’s a list of the first 20 days of my Windows Server 2008 trial:

Suicide by Disk Cache

If someone downloads larger amounts of data from this server (> 2 GB), the server seems to start paging out vital parts of the operating system. It gets so bad that I cannot connect via Remote Desktop anymore.

Maybe it’s supposed to be okay paging out everything that’s not actively in use to make space for the disk cache. After all, Windows just has to store useless copies of huge, sequentially read files that aren’t going to be accessed again. That’s worth any sacrifice.

Suicide by Memory Fragmentation

Most BitTorrent clients experience strange freezes and are unresponsive about 90% of their time (literally!). Azureus works and so does Halite (the only x64 BitTorrent client I know of). Having some quite large downloads going (I’m currently downloading all of the MythBusters episodes :p), I leave my BitTorrent client running for days at a time.

Last Monday, I noticed the server wasn’t issuing my workstation a DHCP IP anymore. Attempting to log in to the server was impossible, it took several minutes to go from the password prompt to the welcome screen. I finally hard-resetted the thing (which I don’t like to do since it means a full RAID array resync)

Tuesday, the server was unresponsive again. I had to hard-reset.

Wednesday, the server had the same problem yet again. I had to hard-reset.

Thursday, unsurprisingly, was no change. Another hard-reset.

Friday and over the weekend, I resorted to rebooting the server every morning, noon and evening. That kept it working, but it’s not enough time for the RAID array to fully resync (which means after rebooting, it starts the resync all over again).

What happens is that windows’ memory usage slowly climbs all the time while my BitTorrent client is running. The process itself doesn’t eat up any more memory (assuming the windows task manager would at least show if Halite and Azureus leaked memory).

RAID Array Mess-Up

Today while I was tagging some FLACs I had just encoded (I’m in the process of re-ripping my entire audio collection using EAC), suddenly, the server’s X: partition disappeared (that’s the RAID-5 parition I store my music collection, DVD backups, virtual machines and stuff on).

The whole RAID array was just gone. Windows showed “missing” on 2 out of the 3 drives. I checked their cables tried to reactivate, but only got errors that the device was unavailable.

After rebooting, the BIOS screen showed all drives. Back in windows, a “foreign” RAID array was shown (that’s Windows slang for “inactive RAID array”). I imported it. Whenever I tried to assign a drive letter to the RAID parition, Windows reported that the “function is not supported”.

Another reboot later, my RAID array was running and had its old drive letter assigned again. But it’s resyncing. I don’t know if it’s still resyncing from last week’s happenings or resyncing due to the import. After leaving the disk management console open for 6 hours, there was still no progress indication (normally, after a few minutes, I remember a percentage being shown behind the ‘resyncing’ status).

DNS Failures

I don’t know if my NAT, routing table and DNS server have some configuration error or what else it might be, but sometimes, specific domains don’t resolve anymore through DNS.

The funny part is that, sometimes, they can be resolved on the server, but not on NAT clients. And sometimes, even stranger, they cannot be resolved on the server, but by NAT clients using the very same server.

Flushing the DNS cache on both client and server doesn’t change a thing in this situation.

Virtual Server Outage

On Beta3, I had installed Microsoft Virtual Server to run some build agents for my continuous integration server (TeamCity, now free, I can wholeheartedly recommend!).

After several hours of work getting Virtual Server installed and setting up the build agents, the whole thing was finally running.

For about 3 days. Then the network adapter of Virtual Server broke out of the blue and even reinstalling didn’t change a thing. I discovered several others with this problem and the only solution was to reinstall the whole server.

I’m not going to even try Hyper-V or Virtual Server on Windows Server 2008. I’m so sick of putting hours into this nonsense just to know that all my work will be destroyed again sooner or later.

Pioneer DVR-215D

General, Music No Comments »

It all started when my old Plextor PX-712 SA burned DVDs that a friend of mine was unable to read. Several months later, it would not even read plain DVDs anymore (normal pressed DVDs). It was still good for CD ripping, so whenever I wanted to watch a movie, I just ripped it on my other computer, moved the ripped files to a network share and watched it via ethernet.

Wednesday, I decided to restore my drive image because my Vista installation is acting strange. I burned my imaging boot CD to an old CD-R and tried to boot from it. It failed, again and again.

The Plextor drive was really good, but with only 2 years in service, its life expectancy seems quite low. Today, I replaced it with a Pioneer DVR-215D in the hope that Pioneer’s drives might be better (I chose the exact model referencing the AccurateRip Drive Database to find one that would be able to do perfect CD audio rips just like my Plextor drive.

- I cannot set the ripping speed to anything else than 40.0x. Although I know that it’s supposed to be a myth that drives work more accurate at lower speeds, at least for the Plextor drive, that myth held true.

- The drive’s C2 error detection seems to work well. All my CDs are as good as new (since I never use them, I rip them once and put them away), so this may be a moot point.

- Enabling EAC’s “overread into Lead-In and Lead-Out” seems to be a very bad idea for this drive. Whenever I enable that option, I get sync errors and suspicious sectors for the final track of a CD. Changing virtually any setting leads to a different checksum.

- The EAC offset test CD calculates a read offset of +8 (tested 5 times, always the same), but the AccurateRip Drive Database indicates that the read offset is +48. I’m baffled as to what’s going on here.

All in all, the drive seems to be capable of doing accurate CD audio rips and, although I’m wishing that I had bought a Plextor drive again, I think I’ll keep it.

Windows Vista SP1

General No Comments »

I’m just in the process of installing Windows Vista SP1. I had been using Vista SP1 before, but I had to install it as an upgrade after several other programs were already there and I feel it’s cleaner to start with a Vista SP1 installation medium from scratch.

Microsoft has finally fixed the KB929777 issue. Windows no longer shows a BSOD during boot if you have hardware that causes the storport.sys driver to be loaded on a 4GB+ RAM system. This was a real killer since I previously couldn’t get any further than the second stage of setup without physically removing half of my RAM.

1. Attempt

Installed fine, renamed my Windows XP partition from D: to H: by changing the drive letter in HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices. I do it this way because Vista doesn’t allow me to change the drive letter of that partition otherwise.

After a reboot, I went to the Disk Management Console and tried to change the drive letters of the other partitions. Took quite long, so tried to do other stuff in the mean time, like giving my C: partition a name. That attempt hung the explorer window in which the rename was to take place. After 3 or 4 minutes with nothing happening, I pressed reset and started the installation from scratch.

2. Attempt

Did the same as in the 1. attempt, but with some more reboots. This time the drive letter changes completed quickly and I continued with installing the latest updates, activating my system and installing the newest Daemon Tools Pro Advanced which I also activated online.

At this point I made a backup (so I don’t plaster the activation server of Disc-Soft (Daemon Tools) and Microsoft (Vista) with activation requests). Then I downloaded the .NET Framework 3.5 installer from Microsoft. It downloaded 29 MB of stuff and then proclaimed “setup.exe has encountered an error and needs to close”. This installation is now “unpure” (it has seen an error message ;)), so I restored my backup.

3. Attempt

I tried to use the .NET Framework 3.5 installer from the VCSExpress directory of my Visual Studio 2008 Express DVD. I know from experience that the one in the VCExpress directory has the same bug, but the one in VCSExpress worked for me, so far.

After I copied the entire dotNetFramework onto my desktop, it proceeded to download components from Microsoft (shouldn’t do, they’re all there in the subdirectories). Then the usual “setup.exe has encountered an error and needs to close” message (behind the error message, the .NET Framework 3.5 proudly announces “.NET Framework 3.5 has been installed successfully”, which is untrue. Restoring my backup now…

4. Attempt

My server (Windows Server 2008) shut down one of the RAID drives after I had mounted the Visual Studio 2008 Express ISO. One explorer window stoically incremented its progress bar, the other did nothing and attempts to browse the server took way to long.

I finally pressed reset and restored my backup once more.

5. Attempt

I tried starting the .NET Framework 3.5 installer directly from the Visual Studio 2008 Express DVD (after making sure all drives were spinned up) with administrative rights.

Failed again. Two problem reports were generated. The first problem was that “.NET Framework 3.5 was installed successfully”. The second problem was that an installer named blabla-DEU.exe failed. I have an english Vista SP1 DVD but set my regional settings to german.

6. Attempt

Got it! After switching everything in the Regional Settings to English, the .NET Framework 3.5 installer worked flawlessly. Continued with installing 7-Zip, WinAmp, VLC, EAC and SciTE, then created another backup.

Continued with NAnt, NUnit, Visual C++ 2008 Express and the Windows SDK for Windows Server 2008 and .NET Framework 3.5. Then pulled another backup.

A new clean windows image in only 6 hours! I’m getting good at this! :-]

Halite BitTorrent Client

Web, General No Comments »

I’ve been using BitTorrent for several years now. Where else, for example, to obtain the latest Top Gear episode?

The first client I tried was Azureus. Azureus worked fine for some time, but when Azureus Vuze came, which tries to transform Azureus from a functional torrent client into a platform for searching, viewing and publishing files on the BitTorrent network, I decided to go looking for an alternative.

I then used uTorrent for some time. It was more responsive than Azureus and got the job done, but after I upgraded to Windows Server 2008 (Beta3), it regularly started hanging. Worse even, it took a “break” (>5 minutes of unresponsiveness) whenever I tried to add a new torrent to the list. So I checked out some other BitTorrent clients, but eventually came back to…

Azureus. As I found out, you can disable the fancy new GUI in Azureus. Azureus worked, but after leaving it running on my home server for a day, the whole RAM was taken.Not by Azureus, but something about Azureus allocation behavior caused the Windows Memory Manager to fragment its memory or whatever, so that after a day, 99% of memory were filled with …nothing and everything that could be paged out had been moved to the page file. So with my latest home server reinstall, I went hunting for another BitTorrent client.

That’s when I discovered Halite. Halite is written in C++ and uses the Boost (www.boost.org) library, so it’s completely built on technology I know and respect. For those who don’t know, Boost is a collection of pretty advanced C++ libraries that attract a certain mindset of programmers — using Boost is already a bold indication that no whacky hobby coder is at work here). There even is an x64 build of Halite. So for the first time ever, I’m running a 64-bit BitTorrent client. And it is working extremely well. It’s fast, responsive and uses very little memory.

MSVC 2008 Quality

Programming, General 1 Comment »

When I was working on an absolutely clean install of my Windows Vista development system so that I could create an image for later use, one of the many things that caused me to start all over again was Visual C++ 2008:

The .NET Framework 3.5 installer in the VC folder of the Visual Studio 2008 Express DVD is broken. It will take forever and then proclaim that setup failed. I had to manually install the .NET Framework 3.5 using the installer in the VC# folder before I could successfully run the VC 2008 setup.

Today I’ve downloaded the Windows SDK 2008. Any installation attempt fails because vcredist_x64.msi is broken. Attempts to manually run vcredist_x64.msi will result in a message box telling me that the installation package is broken.

Taking a look at all the trouble I’ve been having recently, I am very worried about Microsoft’s quality control.

Not too long ago I had the issue of Windows Vista crashing with a BSOD that’s 100% reproducible if you have 4 GB of RAM and your mainboard is equipped with a device that causes storport.sys to be loaded.

Windows Vista Pricing

General No Comments »

I was browsing through the Windows Vista homepage today, looking for informations what SP1 will actually do to my system. Of course I didn’t find what I was looking for, but I discovered this:

USA: Windows Vista Ultimate Full — $ 399.95

Now the same Windows Vista in a german shop:

Germany: Windows Vista Ultimate Full — € 499.- (= $ 727.- !)

Looks like I could save a whole lot of money by booking a flight to the USA, walking to the next retail store, buying Windows Vista Ultimate and enjoying a good meal before taking the plane back to germany.

2008: Windows Vista vs Windows XP

General No Comments »

One month ago, I published some personal benchmarks of my AMD system comparing the performance of Windows Vista with that of Windows XP. Back then, I had only run PCMark (where Vista was slightly behind XP, even thought the 3D desktop composition gave it such a high score in GDI alpha blending that Vista’s final score was actually higher).

Now I’m going to run 3DMark 2003 and 3DMark 2006. My gaming rig has changed slightly, the details now are:

  • Asus Crosshair (NForce 590 SLI)
  • 4GB OCZ DDR2 RAM (EB + EPP, 4-4-3-15, 2T)
  • AMD Athlon64 X2 6000+ EE
  • Asus EN8800 GTS TOP 512MB (NVidia G92, Factory-OCed)
  • Soundblaster Audigy 2 Platinum
  • Western Digital 400 GB SATA drive

XP means Windows XP Professional, x86 version, fresh install with the latest drivers as of January 2008. Vista means Windows Vista Ultimate, x64 version, fresh install with latest drivers as of January 2008, except for the NForce drivers (which cause 40-60 second IDE bus hangs, freezing the system for some time).

Here are the results:

3DMark03

Test Windows XP Windows Vista
Score 39390 38345
GT1 541.2 530.0
GT2 340.4 330.0
GT3 268.7 264.2
GT4 263.3 250.9
CPU 1720 1833
CPU Test 1 191.4 173.4
CPU Test 2 30.6 37.7
Fill Rate (Single-Texturing) 5806.5 5767.4
Fill Rate (Multi-Texturing) 37996.6 36934.7
Vertex Shader 168.3 166.0
Pixel Shader 2.0 528.9 485.8
Ragtroll 172.2 170.9
No Sounds 106.2
24 Sounds 96.6
60 Sounds 87.3

3DMark06

Test Windows XP Windows Vista
Score 11238 10870
SM 2.0 5138 5038
GT1 42.390 42.107
GT2 43.240 41.864
HDR/SM 3.0 5623 5519
HDR1 59.123 57.094
HDR2 53.345 53.293
CPU 2326 2175
CPU1 0.731 0.679
CPU2 1.184 1.114

As you can see,  the performance loss due to Windows Vista is negligible.

However, it has cost me a huge amount of my precious spare time just to do a clean install of my development system. Even using imaging software (Acronis TrueImage), it took me 3 reinstalls and about 15 backup restores (each taking 30+ minutes) until I had a rock-solid clean install of everything.

For example, originally the first thing I did was to install NVidia’s NForce (mainboard chipset) drivers. Once you do that, you system will freeze for 40-60 seconds once in a while. The .NET Framework 3.5 on the Visual Studio 2008 Express DVD would not install without error. My sound card would cause BSODs when I combined the wrong mainboard drivers with my sound card drivers. I have to use inofficial sound card drivers because Creative Labs is hell-bent on providing support for their X-Fi line of sound cards only.

So if you want to do productive work, personally, I’ll sadly have to recommend Windows XP. If you want to have a trouble-free gaming experience and you can do without DirectX 10, Windows XP it is.

Vista/VS2008 on NForce 590 SLI

General No Comments »

This is how I am installing Windows Vista x64 with Visual C++ Express 2008 on an NForce 590 SLI board.

1. Open PC case, remove 2 GB of RAM. Otherwise Setup will bluescreen in the final stage because some ’storport.sys’ driver can’t cope with 4 GB of RAM.

2. Install Windows Vista

3. Download and apply KB929777. When KB929777 wants to reboot, do it - but turn off the PC at the BIOS screen.

4. Reinstall the removed 2 GB of RAM and close the case again

5. Let Windows Vista download all available updates. Take care not to install any drivers, especially not the NVidia nForce drivers and very especially not the MediaShield storage driver. Otherwise Windows will hang for 20-30 seconds every so often and the Event Log would show a bus reset event due to a timeout.

6. Start regedit and go to HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices\ and rename ‘D:’ to ‘H:’ - I don’t want my XP partition to be drive D: and windows doesn’t allow me to perform this simple change even though my Windows XP partition is clearly not a locked system partition while I’m running Windows Vista.

6. Install Daemon Tools, mount the Visual Studio 2008 Express Editions ISO, but don’t install Visual C++ 2008 Express first. Otherwise, it would install for 30 minutes and than crash setup.exe (”setup.exe has stopped working and needs to be closed. blablabla”), failing the install.

7. Browse to the .NET Framework 3.5 installer in the Visual C# 2008 Express folder on the VS2008 EE DVD and run it manually. The one in the Visual C++ 2008 Express folder is broken and the reason for the crash in step 6.

8. Reboot and install Visual C++ 2008 Express Edition. This time it will work.

9. Make an image of the Vista partition using Acronis True Image Home. Make sure you don’t have any dynamic disks in your setup because they would be silently deleted by the time you see the Acronis startup screen.

10a. If I’m feeling lucky, try installing sound card drivers for my Audigy 2. The built-in drivers only generate a very low volume and sound like crap. The official Creative Labs drivers sound like louder crap and come with the Creative Audio Console, which allows you to make sound even worse by selecting the ‘Headphones’ option. To obtain recent drivers, google for “No More Goat Soup” and download those drivers. They have been built from the X-Fi drivers in a frankensteinian way. They will completely fix the volume issue and sound great, but cause a bluescreen every other hour

10b. If I’m feeling masochistic, install Microsoft Virtual PC 2007. Upon the next reboot, any any kind of networking will be gone for good. No internet, no home network, nothing. Attempting to fix this once it occurred will freeze the system. This happens on all variants of the NForce4 and NForce5 chipset.

10c. For good fun, install the .NET Framework 3.5 from the VCExpress folder on the Visual Studio 2008 Express DVD. It is broken. Either install another Visual Studio Language first, or manually follow the steps in paragraph 7 using the VCSExpress folder.

Time taken to do a clean install of Windows Vista: 1 Week, 2 Days+.

Logitech G9

General, Games No Comments »

I just bought myself the Logitech G9 Laser Gaming Mouse:

Logitech G9

This mouse has all the features I could ever wish for:

  • 3200 DPI (For gaming, I usually turn the DPI setting all the way up and reduce the mouse sensitivity in the game itself. This results in superior aiming because even the tiniest movements don’t get filtered out by the mouse but reach the game and are just scaled down.)
  • Adjustable Weights
  • Tiltable scroll wheel for horizontal scrolling
  • Big teflon feet that cover the whole width of the mouse (my MX-518 has already lost 3 of its 5 tiny teflon cushions)
  • Scroll wheel can be toggled between smooth or stepped scrolling

All in all, this mouse unites everything I ever wanted from a mouse.

But it utterly fails in the ergonomics department:

  • The cord is rough and feels like it is made out of nylon. I don’t like it one bit. This gives me a really ugly feeling, especially when the cord runs over the edge of my table.
  • The thumb pit is too small for my thumb
    • I can’t easily reposition the mouse because I don’t get a good grip on it.
    • My thumb is permanently pressed against the edges of the forward/backward buttons, up to the point that it hurts.
    • The alternate cover allows me to grip the mouse, but it’s rough and its thumb pit has the same problem.

This could truly have been the holy grail of mice. Everything about the functionality of the G9 is totally over the top. And that just makes it all the more painful to admit that its ergonomics utterly destroy the G9.

I’ve tried several mice over the last two years, but each time, I quickly returned to my good old Logitech MX-518. Among the candidates were a Razer Diamondback and the Microsoft Habu. Now the Logitech G9 has to line up in this list of expensive mistakes. *sob*

Vista Benchmarks December 07

General 1 Comment »

Since it seems like Vista is finally running stable on my new system, I decided to do some benchmarks. My older system kept crashing all the time with Vista due to incompatibilities between my Creative Labs Audigy 2 soundcard and the NVidia NForce 4 chipset. Somehow the XP driver could live with those incompatibilities but the Vista one goes mad and causes BSODs.

The test system is an Athlon64 X2 6000+ with an Asus Crosshair (NForce 590 SLI) board, running 4 GB in 2 OCZ ReaperX EPP EB DIMMs. The graphics card is a PowerColor Radeon X1950 Pro 512 MB and the sound card is a Creative Labs Audigy 2 Platinum.

My benchmark will compare Windows Vista Ultimate x64 and Windows XP Professional x86. For the benchmarking, I used PCMark 05, which is a 32 bit application and needs Vista’s 32-bit-on-64-bit emulation layer, referred by Microsoft as WoW (Windows-on-Windows), so the comparison isn’t even strictly fair.

Both systems were fresh installs with the latest updates and drivers. Additionally, Windows Vista had Visual C# 2005 Express, Visual C++ 2008 Express, NAnt, Subversion and various development tools installed, whilst Windows XP had Need for Speed: Pro Street and Supreme Commander: Forged Alliance installed. None of the systems had been defragmented before.

Test Vista (x64) XP (x86)
Boot 36 s 22 s
PCMark 05 6618 PCMarks 6602 PCMarks

This may look like Windows Vista is holding its own in PCMark 05, but actually, it isn’t. Check out the detailed results to see that the graphics card literally won the battle for Vista. Whereas XP does alpha blending in software, Vista uses Direct3D for transparency, resulting in a mad number of transparent windows being rendered.

Test Vista (x64) XP (x86)
HDD - XP Startup 9.15 MB/s 10.15 MB/s
Physics and 3D 183.0 FPS 226.1 FPS
Transparent Windows 5296.28 Windows/s 898.65 Windows/s
3D - Pixel Shader 316.44 FPS 330.54 FPS
Web Page Rendering 2.67 Pages/s 3.25 Pages/s
File Decryption 52.09 MB/s 52.45 MB/s
Graphics Memory - 64 Lines 1007.04 FPS 1843.43 FPS
HDD - General Usage 7.33 MB/s 7.42 MB/s
Multithreaded Test 1 / Audio Compression 2689.71 KB/s 2955.91 KB/s
Multithreaded Test 1 / Video Encoding 443.5 KB/s 434.99 KB/s
Multithreaded Test 2 / Text Edit 138.69 Pages/s 173.68 Pages/s
Multithreaded Test 2 / Image Decompression 33.99 MPixels/s 34.35 MPixels/s
Multithreaded Test 3 / File Compression 5.5 MB/s 6.21 MB/s
Multithreaded Test 3 / File Encyption 27.96 MB/s 30.75 MB/s
Multithreaded Test 3 / HDD - Virus Scan 38.86 MB/s 43.25 MB/s
Multithreaded Test 3 / Memory Latency 12.98 MAccesses/s 12.02 MAccesses/s

So, the overall result is that Windows Vista Ultimate x64 is marginally slower than Windows XP Professional x86 for me. Boot time was measured from pressing the return key in my boot menu up to when windows was fully loaded (for Vista, that meant the side bar was completely running and for XP, that meant the desktop and all icons had appeared). Vista had the sidebar with various gadgets, including the CPU meter gadget, running during the whole benchmark.

On my old system, I had been running Windows Vista Ultimate x86. I didn’t run any benchmarks besides measuring the booting time. Interestingly, Vista booted faster than XP back then while now it doesn’t. Therefore, I’d really like to add Windows Vista Ultimate x86 to the chart, but I don’t have the nerve to reinstall my Vista partition from scratch again.

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Login