Having agreed the project objectives and designed the system, I turned my attention to the Hyper-V host image build. This is a high-level build guide with start-up time and baseline memory consumption benchmarks at key milestones. These benchmark figures were taken from the Windows Server 2008 R2 Release Candidate build and are admittedly a bit imprecise. However, they do provide an overall indication of system performance as things were added to and removed from the installation. Although I do not have precise figures on RTM improvements, I spot-checked a few of these benchmarks when I rebuilt the system on RTM. Start-up times improved slightly at each milestone. In fact, the final benchmarks came in at 100MB less idle memory used in the RTM release. Continue reading “Building a SharePoint 2007/2010 development environment — Part III: Host image build and performance benchmarks”
Category: Performance
Summary of Mark Russinovich’s Inside Windows 7 Redux
This Channel 9 “going deep” interview with Mark Russinovich dives very deep in to kernel changes in Windows 7 and Windows Server 2008 R2. I’ll do my best to summarise. It’s excellent stuff, illuminating:
Hyper-V graphics performance is on the way… if you need a new laptop
Dell announced today that they are releasing Alienware and Studio laptops with Intel Core i7 processors. Why is this worth regurgitating? The Core i7 processors feature the Nehalem processor microarchitecture, which means that Hyper-V V2 (in Windows Server 2008 R2) can take advantage of SLAT (Second Level Address Translation). SLAT is implemented as EPT (Extended Paging Tables) in Intel technology and NPT (Nested Paging Tables) for AMD. Here’s Microsoft’s summary of the new Hyper-V support for SLAT: Continue reading “Hyper-V graphics performance is on the way… if you need a new laptop”
Hardening Windows 7 services
I’m in the process of hardening and optimising a Windows 7 build at present. Did you know it has 150+ services now? Windows is officially big.
If you’re interested in this undertaking, I can recommend the Black Viper resource. There are a considerable number of services that can be disabled for most users. That said, you should not take the advice in this or other hardening links at face value. If the recommendations or documentation on the service is insufficient to make your decision, either leave it be or research it further (or both). This is the best opportunity you’ll get to fill any gaps in your knowledge.
Once you think you’ve got it licked, always test, pilot and refine an image. It’s also worth creating a log of your decisions for each service from the start, both as a knowledge base and for tracking changes and differences from default builds. The process of documenting your choice will force you to think it through and will give the question the gravity it deserves. There’s no question this is a laborious undertaking, but it’s a valuable exercise and should yield a build that you’ll be happy with for some time.
Hyper-V graphics performance and SharePoint 2010 development
I’ve mentioned a couple of times that I’ve built a Windows Server 2008 R2 (with Hyper-V) laptop for SharePoint development but I haven’t mentioned one of the only major gripes that I’ve not been able to solve – namely that graphics-intensive operations bring the system to a halt. This is particularly noticeable when audio is playing and you launch a new program while Hyper-V is exporting (as if you have a sonic performance metric), or (to use the Microsoft example) when pressing CTRL+ALT+DEL.
Until the other day I had always chalked this up to something about this driver (an NVIDIA GeForce 8400 M GS on a Dell XPS M1330) and the Hyper-V role or Server 2008 R2 itself (since we didn’t have this problem with the same driver on Windows 7). However, one of our technical architects got a bit more annoyed by this than me and identified that it’s a known issue for almost every graphics driver on 64-bit-capable laptops. Continue reading “Hyper-V graphics performance and SharePoint 2010 development”
Conflicting guidance on IPv6
I recently noticed that Cable Guy is saying “don’t disable IPv6“. While I broadly agree with the approach and the reasons he suggests not to, I’ve not yet seen any down-side to disabling it, and I know we aren’t using the IPv6 technologies that Cable Guy mentions. But why did I turn it off? SharePoint’s Hyper-V performance and capacity guidance suggests that performance is improved by disabling it.
“Use IPv4 as the network protocol for Hyper-V guests. During the tests, better performance was observed when IPv4 was used exclusively. IPv6 was disabled on each network card for both the Hyper-V host and its guest VMs.”
In this case, I’m going with the SharePoint guys, especially when there’s a quantified test versus a theory, especially when it simplifies troubleshooting and not everyone is IPv6-fluent yet.