HTPC for Plex with Windows Storage Spaces – Part 3

image5_thumb_thumb

HTPC build for Plex three part series:

  1. Hardware build and Storage Spaces
  2. Plex server and clients
  3. Performance

I’ve had a single disk Home Theater PC (HTPC) running Plex for a while now but with my ReadyNas nearing the end of its useful life, I decided to kill two birds with one stone: build an updated HTPC with drive redundancy to also take over the functions of my aging NAS. My HTPC stays on 24/7 anyway so this makes perfect sense. My design goals for this were to build a small, quiet, low power, data redundant and sufficiently performing box that I can stuff into my TV cabinet. The extent of the duties for this HTPC will be video streaming and file sharing/ backup, no gaming. This series details my build, Plex server, Plex clients, Windows Storage Spaces, as well as the performance of the storage subsystem.

Performance

In these performance tests I want to focus on the main activities my HTPC will be undertaking: file read/ write operations and streaming. I tested using both Parity and Mirror Spaces to demonstrate the capabilities of each.

WD Red Baseline (Control)

First to set a baseline for WD Red 3TB HDD, here is the observed write performance with a single 40GB file write operation (from C:\ to Z:\). The copy took around 4.5 minutes and the drive topped out around 145 IOPS. Subsequent read performance tests top out around the same level. Considering these disks have been reported to spin at 5400 RPMs, frankly that’s really not too bad.

image

Windows reported ~142MB/s transfer speed:

image

These drives produce absolutely ZERO audible noise. No clicking, no head seeking noise, no rotational noise…nothing. With the cover off of this box, all that is audible is the 3 spinning fans (case, CPU, PSU). Under the TV cabinet, my build is dead silent.

File copy between Mirror and Parity Space

Test constants:

C:\ = SSD
N:\ = Mirror space
M:\ = Parity space

This test demonstrates the performance capabilities of a Parity Space using the WD Red disks. Disk performance copying multiple files from a mirror space (N:\) to a parity space (M:\) was fairly poor, averaging 33 write IOPS on the parity space. Observed read performance on the source 2-way mirror space was low at 25 IOPS on average, but that’s all it was being asked to do. This is somewhat expected however, as one of the caveats with parity resiliency is reduced write performance.

image

Once again, the Windows file copy dialog tracks very closely to the observed maximum write performance in Perfmon.

image

Power consumption of the system under test varied between 50 to 75 watts. Very good!!

2014-07-20 16.39.46

Write performance of Mirror and Parity Spaces:

Test constants:

C:\ = SSD
D:\ = Mirror space
M:\ = Parity space

Here you can clearly see the write performance disparity between a two-way mirror and parity space. Copying a 4.5GB file from SSD (with very high read performance) to my two-way mirror space yielded very reasonable write performance according to the Windows file copy dialog. The overhead of the mirror operation appears to be costing around 20 IOPS.

image

The write activity of the physical disks participating in the mirror.

image

That same 4.5GB file written from SSD to my parity space (M:\) yielded significantly lower results (almost 3.5x lower):

image

Here is a more detailed view of the write performance against the parity space:

image

Read performance of Mirror and Parity Spaces:

Test constants:

C:\ = SSD
D:\ = Mirror space
M:\ = Parity space

Copying the same 4.5GB file from each space back to the SSD yielded better results overall. The read performance of the parity space during this operation is better but still below what the mirror space or even native drive are capable of:

image

image

Copying the file from the mirror space to the SSD was higher performing than the parity space and on par with native disk read performance, but the gap isn’t as wide here.

image

Plex Streaming Performance: Single File

Test constants:

-Physical disk 1 and 2 comprise a mirror Space
-Plex clients in use: Roku
-Media in use: single file, highly compatible, 1080p

Streaming being a highly sequential mostly read operation, there isn’t a great tax put upon the system resources. Multiple streams and transcoding complicate this a bit. The following chart shows the performance of a single video stream from my HTPC using a mirror Space to my Roku client. Interesting to note that the C:\ drive is busier than both disks in the mirror space, but all reads are sourced from a single disk.

image

Plex Streaming Performance: Single File, skipping around

Test constants:

-Physical disk 1, 2 and 3 comprise a mirror Space
-Plex clients in use: Chromecast
-Media in use: single file, highly compatible, 720p

Trying to force spaces to utilize all disks within a vDisk, I manually skipped around four times within a sample media file. Here you can see that with every color change within the performance chart is where I jumped to a different time within the media file. Almost every time I did this, Spaces offered up a different disk to be read from. The one exception is during the period between 7:40 and 7:43 where I performed a jump but the same disk was used. Otherwise, all three disks in  my mirror Space were used to read the file.

htpc.stream.3.disks

Plex Streaming Performance: Multiple Streams from One File

Test constants:

-Physical disk 1 and 2 comprise a mirror Space
-Plex clients in use: Roku, Chromecast, PS3 (DLNA)
-Media in use: single file, highly compatible, 1080p

To satisfy my curiosity, regardless of how infrequently this situation might actually occur, I wanted to see what the impacts were if I kicked off multiple streams of the the same file. I chose a mostly compatible file so we get the benefits of Direct Play here. Three simultaneous streams requiring transcoding would probably not work so well. There is a CPU spike when the third stream is launched and minor spikes on disk 2 for each stream event. You’ll note here that all reads are coming from disk 2. Looking at each TV screen individually and subjectively, the playback was completely normal.

image

Plex Streaming Performance: Multiple Streams from One File, 3 Disk Mirror

Test constants:

-Physical disk 1, 2 and 3 comprise a mirror Space
-Plex clients in use: Roku, Chromecast, PS3 (DLNA)
-Media in use: single file, highly compatible, 1080p

Just to see if there is any impact to performance, I ran this same test again but with three physical disks in my mirror Space. I would have expected my reads to be coming from at least two disks but as evident here, disk 1 is doing almost all of the work. Interesting to note that overall spikes are much lower now with read performance hovering around 1 IOPS. The takeaway here is that this third disk in my two-way mirror Space doesn’t add much from a performance perspective.

image

Plex Streaming Performance: Multiple Streams from Multiple Files

Test constants:

-Physical disk 1 and 2 comprise a mirror Space
-Plex clients in use: Roku
-Media in use: three files, one incompatible requiring transcoding, 1080p

The following chart shows the effects when additional streams are added using three different media files, one requiring transcoding. You can see that system resource usage is relatively low with the first two streams, things change dramatically with the introduction of the third file. Transcoding means heavy CPU usage as evident here. Disk activity with 3 different files being accessed simultaneously jumps up quite a bit too. 

image

Zooming in here looking at the disk IO, you can see once again that almost all read requests are satisfied from a single disk. Hmm, where’s my striping performance??!

image

Here is the Plex transcoder in action:

image

Network Performance

Network performance of the Plex server with a single HD media stream is very reasonable. There are spikes north of 11Mbps but for most of the duration the  transmitting bandwidth stayed around 2Mbps.

plex.network.stream

Conclusions:

  • The WD Red HDDs are a very quiet, very low power option that yield decent disk performance. Performance is more than acceptable for an HTPC that doubles as a NAS.
  • Two-way mirror Spaces are the highest performing option in Storage Spaces but come with the highest disk cost as well (2x). Read performance is on par to that of a native disk with Spaces adding no discernable overhead, writes cost ~20 IOPS in overhead. If you have HDD capacity to spare, this is the resiliency option you want!
    • While writes clearly hit all disks in a mirror Space, observed read operations from streams are satisfied from a single disk in the Spaces pool. Jumping around within a media file does force reads from all disks in a Space.
    • 3 disks in a Storage Space really doesn’t buy you much other than additional capacity. With a 1-column two-way mirror you still only have two copies of data, on two physical disks. Read and write performance is not increased here.
  • Parity spaces will work fine for Plex and video streaming in general, as video streaming is sequential and read performance is acceptable. Parity spaces suffer massively in reduced write performance so copying files to or moving files around on your HTPC will be much slower. The trade off for poorer write performance in a parity space is more overall usable capacity (1.5x consumed in a parity space vs 2x in a mirror space).
  • Plex makes excellent use of system resources and can handle just about anything you can throw at it. The Plex server doesn’t even break a sweat with highly compatible media types, even with multiple streams. Transcoding is CPU intensive and should work fine for a single stream, multiple streams may tax your system and degrade the viewing experience.

This post originated at Exit | the | Fast | Lane – weestro.blogspot.com

HTPC for Plex with Windows Storage Spaces – Part 2

image5_thumb

HTPC build for Plex three part series:

  1. Hardware build and Storage Spaces
  2. Plex server and clients (You are Here)
  3. Performance

I’ve had a single disk Home Theater PC (HTPC) running Plex for a while now but with my ReadyNas nearing the end of its useful life, I decided to kill two birds with one stone: build an updated HTPC with drive redundancy to also take over the functions of my aging NAS. My HTPC stays on 24/7 anyway so this makes perfect sense. My design goals for this were to build a small, quiet, low power, data redundant and sufficiently performing box that I can stuff into my TV cabinet. The extent of the duties for this HTPC will be video streaming and file sharing/ backup, no gaming. This series details my build, Plex server, Plex clients, Windows Storage Spaces, as well as the performance of the storage subsystem.

Plex

So what is Plex and why do we need it? Plex is a very simple, very powerful media center server that can stream videos, music and photos to almost any device…most importantly TVs. Plex can be installed on many NAS devices as well as Windows/Mac/Linux based PCs. Without Plex, DLNA is available to watch supported content from network accessible locations and works fairly well most of the time, but this is simply a list of content. Plex can also talk DLNA but the media server greatly enhances the overall experience by providing art, posters, synopsis, which media has been watched/ which hasn’t, the ability to resume where you left off, remote streaming and transcoding. Plex also supports many file containers (AVI, MKV, MP4, etc), codecs and subtitles. I personally used the DLNA method for years before seeing the light on Plex and no way would I go back. I love Plex and you will too!!

First, create an account on http://plex.tv, you’ll need this later for remote access and it will make management much simpler. Setup is simple: install the Plex media server on the supported platform of your choosing, open the Plex console in a web browser and point Plex at the locations of your media by adding libraries. Media is best categorized by type which will make browsing, searching and updating content much easier. Plex makes this process very easy for you:

image37_thumb

I use the following categories and will add one for photos soon:

image28_thumbPlex will then automatically connect to a variety of online sources, such as Freebase or The Movie Database, to download media information and art.  Once complete all of you media will be organized and accessible in the Plex console with full posters and even background music, if you want it.

image21_thumb

Plex content can be browsed via normal folder structures if you like or you can use the Plex Dashboard where you will find “On Deck” and “Recently Added”. The latter should be self explanatory, On Deck is where you will find movies that you started and stopped or the next episode of a TV show in a series. This is Plex helping to keep your place in your media universe and it is incredibly useful. 

image68_thumb

Plex provides three primary methods for playing content: Direct Play, Direct Stream and Transcoding. Bottom line is that Plex will play your media one way or another, you don’t have to worry about it, but this is how it does it.

  • Direct Play is the best and exists in the ideal scenario. 100% file compatibility with very little resources consumed on the media server itself. The file is sent to the Plex client as-is, easy breezy.
  • Direct Stream is used when a media file is mostly compatible but some element within is not and requires transcoding. The example Plex uses is a media file where compatible audio/video codecs are streamed direct and the non-compatible container is transcoded.
  • Transcoding is used when either the audio or video format isn’t compatible and has to be converted into a compatible format. Audio transcoding is not very CPU intensive but video transcoding is.

Recommended Tweaks

Overall, you could change almost nothing post install and Plex will work fine right out of the box. Here are a few tweaks that I recommend to enhance your experience.

In the server settings, click Connect on the left, make sure to log into Plex (your online account) as this will allow you to connect to and stream media to any device anywhere you are. This is honestly one of the coolest features of Plex and you do not need a Plex Pass to do this! Once signed in on your server, you can now connect to your Plex environment from any smart phone, tablet or PC anywhere you have internet connectivity by using the IOS/ Android Plex app or by logging into Plex.tv. Traveling? As long as you have internet connectivity, you can browse and watch anything from your library. No USB thumb drives required!

image32_thumb

To maximize ease of use when you add content, make sure the following settings are enabled. This will ensure that Plex will automatically scan your library when files are added vs having to run a manual or timed scan. Plex will see that you’ve added a file and will automatically add it to the library for playback and download related art.

image36_thumb

Under the Web settings, click Player on the left, you can control the streaming quality based on where you will be streaming to. 1080p for local streaming and a lower setting for remote streaming, for example. I have found that setting the local quality to 4Mbps/ 720p greatly increases local streaming responsiveness and makes it easier to skip around in a given media file.

image41_thumb

Further customization at this point is highly preferential and you’ll figure it out by clicking through the available options. Plex has made this all VERY easy. In Windows, Plex runs as a process launched by an interactive user so does require that a user account is logged into the desktop. There is no Windows service offering yet but there are ways to work around this. I have an account set to login automatically after a reboot then the screen locks after 1 minute for security. In lieu of a Windows service starting with the OS, this works fine.

Plex Clients

With the HTPC built and Plex installed, let’s talk about client connectivity. There are a number of ways to go here which is another benefit of Plex: extreme flexibility. The methods below are my top 3 in order by preference.

Smart TV app

If you own an internet connected Samsung Smart TV then you already have access to the best free Plex client available. Nothing is required externally, just install the Plex app from the Samsung app store on your TV, launch and it should find your Plex server on the network. Your TV remote will navigate the Plex menus and this will provide the richest experience you can get while navigating Plex on your TV screen. Sadly, if you own a Panasonic TV you will have to use an external client. There is no and will be no native Plex app in the foreseeable future.

Google Chromecast

Chromecast is a very simple and very cheap option that I personally use on my Panasonic plasma. $35 gets you an HDMI-connected dongle that simply casts or displays content on your TV via wifi. This is an important distinction to make when considering the Chromecast. There are no on-screen menus to navigate and there is no integration with your all-in-one remote. Your PC, tablet, or phone is your remote and where you select the content you want to display on your TV. This does require that you purchase the Plex app for IOS/ Android ($5) or if you choose to pay for PlexPass, you’ll get the app for free. Chromecast for Plex works great, the downside is the other services currently supported are a bit limited compared to Roku and the like (if you care). Chromecast is powered via a USB port on your TV or from a wall adapter.

Chromecast setup is very simple and pretty neat in what they do. Initially the Chromecast turns itself into a wifi Access Point (AP) by broadcasting a SSID that you connect to for configuration using the Chromecast app on your device. Once the local wifi network SSID and password are selected, Chromecast will disable its own AP and connect to yours.

Once Chromecast is configured, launch the Plex app on the device of your choosing and navigate to the content you want to watch. Connect Plex to the Chromecast by pushing the “Cast” button in the top right corner and select the Chromecast, this will also automatically change the input on your TV to the correct HDMI slot. Press play on the chosen content. This method is definitely different than the more traditional on-screen navigation approach but having used it for going on a year now, I really like the experience this solution provides. Your more technically challenged family members may not like or fully understand this method without some training.

image73_thumb

Roku Streamstick

Roku is a favorite of many home theater aficionados and provides several client options with varying price points. The Roku Streamstick is the Roku answer to the minimalist HDMI dongle but with the majority of the value that Roku provides. I use this client on my older Samsung plasma that doesn’t have built-in wifi support. Roku Streamstick is powered via a USB port on your TV or from a wall adapter. Setup is simple and handled via the specialized Roku remote included. Connect Roku to your home wifi and you are good to go.

Roku uses the more traditional on-screen navigation approach and has an impressive catalog of connectable services you can use. One of the neat things Roku provides is an impressive search function that gives you multiple options as to where you can find/ buy/ play the content you’re looking for. Roku works using a concept of “channels” which are really apps that you add to your client. Plex, Netflix, Amazon, etc. Plex is one of those channels and costs $5 just like the IOS/ Android version. PlexPass members get this app for free as well. Unlike the Smart TV or Chromecast methods, Plex on Roku is a very minimalist affair that provides a very basic visual experience.

image76_thumb

While Roku does ultimately provide the essentials for Plex, it is my least preferred method and comes with the following caveats:

  • Separate non-IR Roku remote required to control on-screen navigation. No integration into traditional IR all-in-one remotes possible.
  • Very slow boot up compared to Chromecast and takes a very long time to get to a point you can actually use it.
  • $50 vs $35 for the Chromecast
  • Least rich experience of the 3 options with a very basic user interface.

Please also see part one of this series which details the hardware build and part three which discusses performance.

References:

https://plex.tv/

Converting ISO, Video_TS and other disk image formats

HTPC for Plex with Windows Storage Spaces – Part 1

image5

HTPC build for Plex three part series:

  1. Hardware build and Storage Spaces
  2. Plex server and clients
  3. Performance

I’ve had a single disk Home Theater PC (HTPC) running Plex for a while now but with my ReadyNas nearing the end of its useful life, I decided to kill two birds with one stone: build an updated HTPC with drive redundancy to also take over the functions of my aging NAS. My HTPC stays on 24/7 anyway so this makes perfect sense. My design goals for this were to build a small, quiet, low power, data redundant and sufficiently performing box that I can stuff into my TV cabinet. The extent of the duties for this HTPC will be video streaming and file sharing/ backup, no gaming. This post details my build, Plex server, Plex clients, Windows Storage Spaces, as well as the performance of the storage subsystem.

HTPC Build

Trying to keep my costs in line while building in performance where it mattered, I decided to go with an AMD-based mini-ITX (m-ITX) form factor system running Windows 8.1 x64. The motherboard and CPU were sourced a year ago but still provide more than adequate performance for my purposes. I went a little higher on the CPU than I really needed to but since video transcoding is very CPU intensive, more horsepower there is certainly not wasted. All parts were sourced from Amazon, who has officially conquered the PC parts space, New Egg can no longer compete (price or return policy). A decent 2-bay ReadyNas or Synology NAS will set you back at least this much, plus this way I get a full featured box without compromises. 

  • CPU – AMD A4-5300 FM2, dual core, 3.4GHz, 65w, $50
  • MOBO – MSI FM2-A75IA-E53, $100
  • Case – Cooler Master Elite 130, $50
  • RAM – Corsair 8GB DDR3/1333 Memory, $60
  • PSU – Silverstone SFX 450w, $70
  • Disk – 1 x Crucial M500 120GB SSD (OS), $72
            – 3 x WD Red 3TB (spaces),
    $122 each

Total: $768

This A-series 65w AMD APU (Trinity) includes a robust dual-core clocked at 3.6GHz with on-die Radeon HD 7480D for graphics. The RAM isn’t anything special, just trusty Corsair 4GB DIMMs clocked at 1333MHz. The MSI main board provides all the connections I need and pairs nicely with the Cooler Master case. 4 x SATA ports, 2 x DIMM slots, and a PCIe slot should I ever choose to drop in a full length GPU.

image62

I had originally spec’d this build using the WD GP-AV disks which are purpose built for DVRs, security systems and 24/7 streaming operation. This was the disk I used originally a year ago which has served me faithfully and quietly. Online benchmarks show this drive to perform higher than the Green and Red drives from WD. Due to a parts sourcing issue I was forced to look for alternatives and landed on the WD Red disks, which are actually a bit cheaper. Low noise, low power consumption, built for 24/7 NAS duty… these drives are very favorably reviewed. The WD Reds are no where near the highest performing HDDs on the market, with a rotational speed of ~5400 RPM, but for the purposes of an HTPC/ NAS, their performance is perfectly sufficient.

image

Quality SSDs are cheaper than ever now and make a great choice for your OS disk when you separate your data (as you always should).  These disks are capable of thousands of IOPS and make install, boot up and OS operations lightning quick.

image63

For power I once again turned to Silverstone who have a 450w 80 PLUS bronze efficient unit in SFX form factor. Plenty of power with a very minimal foot-print which is ideal when working with m-ITX. This non-modular PSU has only 3 SATA connectors on a single string so I used a Molex to SATA power connector for my 4th drive. This PSU provides plenty of juice for these power sipping components and doesn’t block the CPU fan.

image64

Finding the “perfect” case for whatever project can prove challenging. For this project I wanted a small m-ITX case that can house 3 x 3.5” HDDs + a 2.5” SSD and Cooler Master had the answer. Well ventilated with plenty of working room, support for a full length GPU and full size PSU. You can mount a BD-ROM if you like or use that space for a 3.5” HDD. The finish is matte black inside and out with all rounded corners and edges. My only gripe is the included front case fan which, although extremely quiet, has no protection grill on its backside. You have to be very careful with you wires as there is nothing to stop them from direct contact with the fan blades. With the one-piece cover removed there is loads of working room in this case. With four SATA connections, cabling gets a bit tight on the rear side but it’s completely manageable.

image65

With the Elite 130 case loaded you can see the three WD Red drives, one on the floor, one on the wall and one on the top in the 5.25 bay. The SSD is mounted below the 5.25 bay, you can see the grey-beige rear of its case.

2014-07-20-15.47.034

The SFX PSU sticks out the back of the case a few inches which provides even greater clearance for the CPU fan. With this case it did require using the ATX bracket to fit perfectly. Both the CPU and PSU fans are completely unobstructed with fresh air brought in by the 120mm front fan. This case comes with an 80x15mm fan mounted on the side by the SATA ports. I found this fan to be noisy and in the way, so removed it.

2014-07-17-21.33.154

When all was said and done, power consumption for this build is at 29w idle and up around 75w under load. Awesome!!! See the performance section at the bottom for more details.

Storage Spaces

First debuted in Windows 8/ Server 2012, Storage Spaces provides a new very interesting method for controlling storage. Part of the “software defined” market segment, Spaces supplants traditional software and hardware RAID by providing the same data protection capability with a ton of additional flexibility. The biggest value propositions for Spaces in Windows 8.1 is the ability to thin provision (create drives with more space than you actually have or need), use disparate drive media (create a pool from several different disks, internal and external USB) and choose from a few different resiliency methods to control performance or provide greater redundancy. Server 2012 R2 adds a few additional features to Spaces, namely the ability to provide performance tiering between SSDs and HDDs and post-process deduplication which can have a dramatic reduction on consumed capacity. At the end of this exercise I will have two Spaces called Docs and Media both with 2-way mirror resiliency.

Setting up Spaces in Windows 8.1 is a trivial affair once the drives have been physical added to your build. One of the only restrictions is that the disk where the OS is installed cannot be used in a Spaces pool. First open the Spaces management console by pressing Windows Key + Q and typing spaces.

image79

Click create a new pool and select the unformatted disks you want to include. Additional disks can be easily added later.

image82

Storage Spaces (aka virtual disks) can now be created within the physical disk pool and will be presented back to the OS as logical drives with drive letters. Give the new Space a name (for me I have functionally separated Spaces for Docs and Media), choose a drive letter and select a file system. Resiliency type will open an additional file system option called ReFS for mirrored Spaces which is the recommended file system for these Spaces types. NTFS will be the only option for all others. ReFS builds on NFTS by providing greater data integrity including self healing, prioritized data availability, high scalability and app compatibility.  Here is a quick breakdown of the available resiliency types:

  • Simple (no resiliency) – just like it says, only one copy of your data so offers no protection. This is akin to RAID0 and can be useful if you simply want to thin provisioning a large logical drive with no data protection.
  • Two-way mirror – writes two copies of your data on different physical disks thus protecting from a single disk failure. This requires a minimum of two disks.
  • Three-way mirror – writes three copies of your data on different physical disks thus protecting you from two simultaneous disk failures. This requires a minimum of five disks.
  • Parity – writes your data with additional parity information for recovery, similar to RAID5. This protects from a single disk failure and requires a minimum of three drives. Parity Spaces will give you more available capacity but at the cost of reduced IO performance. See the performance section at the end for more details.

The images below show the capacity impact of resiliency using a two-way mirror vs parity. The two-way mirror mode will consume 2x of the stated capacity for every file stored (50% reduction of available capacity). All spaces can be thin provisioned and adjusted later if need be. As you can see below, a 2TB logical Space requires 4TB of actual storage should it fill completely.

image

Parity will consume 1.5x of the stated capacity for every file stored. Based on the 2TB logical Space shown below, if that volume were to fill completely it would consume 3TB of total available capacity.

image

Once a Space has been created only the size and drive letter can be changed. If you wish to change resiliency type for a space, you’ll have to create a new Space and migrate your data to it.

New drives can be added later to an existing pool very easily and with no down time. Note that adding a drive to an existing Storage Space will destroy any data currently on that drive.

image

Once configured, you will have a view of your logical Spaces, consumption stats as well as the physical disks backing them in the pool. Here you can see my three disk pool and two Spaces, each with a two-way mirror. Notice that the actual data consumed on the physical disks is evenly spread across all three. Having tried both Parity and two-way mirror resiliency, I decided to take the capacity hit and use the mirror method on both since it performs much better than Parity. Once finalized, I moved all of my pictures and videos into the new M drive.

This is reflected in Windows File Explorer with the two new logical drives and their individual space consumption levels.

image

Slabs and Columns

Underneath it all Microsoft has a few interesting concepts, some customizable which can be used to achieve certain results. I’ve linked to many good information sources in my references section at the bottom if you’d like more info on these concepts. Data that is mirrored is done so in 256MB slabs which is what is actually copied to each physical disk in a two-way mirror. Half of each slab is allocated to two separate disks. In the event of a disk failure, Spaces will self heal by identifying all affected slabs that were on the failed disk and reallocate them to any suitable remaining disk in the pool. You can take a peek under the covers if you’re curious by running the optimize-volume –verbose command in PowerShell:

image

Another important concept in Storage Spaces is that of columns which define the number of underlying physical disks across which one stripe of data for a virtual disk is written. This takes a minute to wrap the head around. By default, Spaces creates each virtual disk with one column when there are two disks present. So one column means one stripe on two disks. The interleave value dictates how much data is written to a single column per stripe, by default 256KB. For larger JBODs with dozens of disks the column count can go as high as eight. In my case only having three disks, one column is fine. Two columns makes sense if you have four disks, for example. Generally speaking, more columns means higher performance. The downside of more columns is that this controls how you will scale out later. A two column virtual disk will require you to expand your storage pool by two physical disks at a time. Creating a virtual disk with more columns or a different interleave is done so in PowerShell using the New-VirtualDisk cmdlet.  You can use the get-virtual disk cmdlet to view the lay of the land for your Spaces:

image

In the end I have met all my initial goals around cost, size, noise, performance and power consumption. I’m very pleased with this mix of hardware, especially my alternate WD Red HDD choice. Spaces provides a robust and flexible subsystem which is a great alternative to legacy hardware/ software RAID. For more information about the inner workings of Spaces and additional design considerations please see the references section below. Please see parts two and three of this series for more information on Plex and the performance of this build.

References:

http://social.technet.microsoft.com/wiki/contents/articles/15200.storage-spaces-designing-for-performance.aspx

http://technet.microsoft.com/en-us/library/hh831739.aspx

http://blogs.msdn.com/b/b8/archive/2012/01/05/virtualizing-storage-for-scale-resiliency-and-efficiency.aspx

ReFS

Columns in Storage Spaces

Windows Update Notifications for Windows 8

One of the unfortunate design choices Microsoft made for Windows 8 was suppressing the Windows Update icon and notifications in the system tray on the desktop side of the OS. In Windows 7 this was especially useful for those of us who like to be notified of available updates but prefer to make the decision when to download and install. If you use Windows 8 but live on the desktop side, the only notification you will see will be on the lock screen.

Developer David Warner at quppa.net created a free lightweight tool to remedy this problem called the Windows Update Notification Tool.

This tool replaces the missing icon in the system tray and will provide the familiar notification popup when updates are available as well as when a pending restart is required after an install.

SNAGHTML2562cd

Not a fan of the new Win8 update icon? No problem, this tool will let you change it back to the Win7 style.

image

Simple and functional this tool fixes an ultimately very minor but persistent gripe for desktop users of Windows 8. Well done David, thanks for your efforts!

Download: http://www.quppa.net/wunotify/

Resources:

http://social.technet.microsoft.com/Forums/en-US/6259994a-80e9-4e2c-9fa8-4df6b614d641/no-windows-update-notifications?forum=W8ITProPreRel

Dell DVS Enterprise for Server 2012 RDS (2013 update)

We just published another version of our architecture for Server 2012 RDS originally published a year ago. You can find the full architecture here that includes all configuration and lab test items, but I’ll summarize some of the interesting items.

Increased User Density on Windows 8

Hyper-V 2012 previously posted some impressive numbers when we tested guest VMs running Windows 7. Hyper-V continues to impress as we put Windows 8 through it’s paces. Single host RDVH densities rose to 250 sessions with RDSH coming in at 300 (4 x RDSH VMs). This puts the Dell Windows 2012 RDS solution bundle at 4 servers total now at maximum scale (3 x compute + 1 mgmt) assuming no HA. Hyper-V is quickly leaving vSphere based solutions behind as those can no longer compete when it comes virtualization performance. It’s not even close anymore.

Shared Graphic Acceleration

New in this release is the support of shared GPU acceleration using AMD S7000 and S9000 cards. There is a bug in the nVidia-based enterprise GPU parts which we’ll enable as soon as it makes sense. GPU-enabled compute hosts have a lower CPU spec with a higher power demand. The workload we associate with GPU enablement is for premium+ users assuming a need for higher end compute resources. We net around 70 premium graphics user per GPU-enabled host. These can be added at any scale anywhere in the base RDS solution bundle. 

Dell VRTX for ROBO VDI

Newly launched is the Dell VRTX platform that combines up to 4 M-series server blades, shared DAS and networking all within a 5U chassis.

We have designed around the platform to provide scaled SMB VDI for 250-500 users in a clustered Hyper-V configuration. Check out the RA for a deeper dive!

Server 2012 RDS and Hyper-v continue to prove a formidable solution in the VDI space. There are scaling limits to RDS specifically that we impose due to limited management functionality over a certain user scale. Our recommendation for environments requiring greater than 600-700 pooled VDI users is to consider the Dell DVS Enterprise for vWorkspace solution that I talk about here.

Windows 8.1, finally worth the upgrade!

Windows 8 up to this point has proven to be a controversial albeit undeniably innovative upgrade to the Windows legacy. Despite the numerous improvements, power savings, and upgrades, the user experience on a non-touch enabled device was lacking in many ways. All of this changes in Windows 8.1, currently in Preview, with a few laser focused feature changes that make this OS absolutely worth the upgrade on a PC.

Start

First up, the triumphant return of the start button! There were other ways to mitigate this with 3rd-party add-ons the likes of Classic Shell, I used myself, which can still be used if you desire a purely Win7-esque start menu. With the improvements Win8.1 provides plus a few quick tweaks, I no longer find this necessary.

The start button does indeed simply open the start screen which is now incredibly more useful. One of my personal deal breaker complaints about Windows 8 originally was the crippled Start search that broke results into 3 categories that had to be clicked on individually before revealing what you’re looking for. This was a huge step backward from the fully integrated search of Windows 7. This is what it looked like originally:

 

In Win8.1, integrated search is back, with auto fill, and now the start screen is finally usable to search the PC.

You can optionally reduce the search scope from everywhere to settings or files individually.

Alternatively, you can now use the charms search utility either by using the mouse to reveal the charms or using the Windows Key + Q combination. Previously this just dumped you into the default Start search screen. This option now avoids the start screen completely.

                    

The right-click menu of the Start button is also improved in 8.1 and is much more useful now. The ability to log off is still conspicuously missing but a few useful additional options are now available.

Win8:   Win8.1: 

If your goal is to stay on the desktop side of things, that can now be easily accomplished as well. From the Taskbar properties dialog, you will find a new tab called Navigation. Here there are options to boot Windows directly to the desktop and make the Start screen more desktop oriented.

By selecting the option to change the Start screen to the Apps view then arranging by category, all of the desktop apps will appear first. The Metro apps will appear last with the live tiles disabled. This goes a long way to change this decidedly mobile touch-friendly OS into a more PC friendly experience.

SkyDrive

SkyDrive is now fully (and optionally) integrated into the OS which can be used to sync files, settings, apps, photos etc, between PCs or restored to a single PC should it need to be reset or refreshed.

Originally Skydrive gave users 25GB of free space which was trimmed to 7GB. A year ago there was a small window to preserve the 25GB if you acted, sadly, I did not, and did not know about the limit change. Additional storage can be purchased of course.

Skydrive is also now fully integrated into Windows Explorer creating a very comparable experience to Dropbox but with a much higher overall value.

There are a number of additional interesting and new features centered around mobility and security with an available kiosk mode that locks a standard user to a single app. There is a enough that has changed in 8.1 now that I am completely satisfied with this OS to succeed Windows 7 on my primary PC. All of my initial complaints have been addressed or mitigated. We’ll see what else comes in the finished version but the Preview release has me extremely optimistic. If you’re already running Win8, I highly encourage you to take the free upgrade and check out 8.1!

Malware Proof your Windows Installations

One of the problems that has continued to plague Windows is the ability for users, administrative or not, to execute programs from unsafe temporary file system locations sometimes bypassing security controls. UAC has helped to reduce the attack surface along with the Windows integrity mechanism that monitors and restricts files based on a level of trustworthiness.  Combine that with a good anti-virus product and sometimes the bad stuff can still get through, even when accidentally executed from a dangerous location such as temporary internet files. Internet Explorer contributes to this problem as the only major browser on the market that actually allows execution directly from a download (which can happen accidentally). Chrome and Firefox require a download to be saved to disk first then manually executed after the download is completed. This alone is good enough reason to not use IE for daily casual browsing.

Microsoft’s AppLocker is a free built-in group policy utility that comes with the Enterprise and Ultimate versions of Windows that puts a stranglehold on the execution environment of the OS. Unlike the troublesome software restriction policies of long ago, AppLocker provides an intuitive and highly customizable framework to protect your PC and servers, if desired. AppLocker works for home or corporate PCs and can be configured using group policy. I have configured AppLocker on every Win7 PC I’ve built for friends or family for years and they do not have malware problems. Period.

Best practices for novice or intermediate user PCs:

  • Users should not run as administrators, remove the user account from local admins
  • Enable the local admin account and set a password
  • Run a quality antivirus product
  • Ensure UAC is enabled and set to the default level
  • Configure AppLocker to protect the OS

Accessed from within the local computer security policy (gpedit.msc) or via group policy in a AD domain, AppLocker can be found in the Application Control Policies section below Security Settings.

A number of different rule types can be configured and new for Win8/ Server 2012, AppLocker now supports Packaged apps, which I’ll talk about in the section that follows.

Executable Rules

Executable rules are by far the simplest and most effective means of providing solid protection. First thing to do is to create the default rules: right-click in the white space in the right pane, click “create default rules.” These rules will ensure that executables can only be run from within the trusted program files and windows folders. Administrators will be allowed to execute any file regardless of file system location. Anything that is executed from the desktop or temp folders, for example, will be denied.

For the PC of a non-administrative user, to execute a file outside of the specified safe locations will require both intent and elevation via UAC to run; no accidents will be possible.

Applications that are not installed for “all users” of a PC are typically installed to a space in %userprofile%\AppData. These applications will need to be individually permitted or they will subsequently fail to run. The easiest method providing the best protection is to configure path rules for each application as required.

If this is too troublesome, a publisher rule will suffice which will cast a wider net allowing any application of a given publisher or product to execute. Move the slider to enforce more or less granularity as desired.

Windows installer and script rules can also be used to to provide further restrictions. Use care if you choose to enable these as frustration could ensue when trying to install certain applications afterwards.

Packaged App Rules

For Windows 8 and Server 2012, having the interface formerly known as Metro and apps to go with it, AppLocker provides a new mechanism to comprehend these “packaged apps.” The options are more limited but provide suitable protection and control.

Create a packaged app rule by first choosing a reference file from the Metro apps installed:

Adjust the slider to specify a publisher, package or version rule:

Enforcement

Any configured rules will be enforced by default unless you specify Audit Only in the enforcement properties.

For any configured rules to actually take affect, the Application Identity service must be running. Set the service to Automatic and start it.

Follow these recommendations and you should never have to clean another malware infested PC again. I honestly can’t remember the last time I’ve had to.

References:

Windows System Integrity Mechanism

AppLocker Technical Architecture

New PC Build for 2013

Contrary to popular attempts to convince you otherwise – the PC is not dead. Fewer novice-level users may actually require a PC these days thanks to smart phones and tablets but I’m not quite ready to concede to “app store” style games and pecking out emails with my index fingers pressed on smudgy glass as my only means. I have smart phones, a tablet, several laptops, and yet I still find myself wanting and using a PC more than the others combined. Multi-displays serving rich graphics rendered from a discrete GPU, Chrome with 50 tabs opened at once, a few RDP sessions, streaming audio, RARs unpacked and copied in seconds, Visio, PowerPoint, Premier Pro, the latest DX11 game titles…you get the picture. Some things just work better with a mouse and keyboard and honestly, unless Minority Report ever becomes a reality (via Kinnect perhaps?) this will probably always be the case. My current PC is still humming along just fine with a 4-year old Windows 7 build on what was then, top of the line hardware. Ivy Bridge is here now, parts are more efficient, use less power, and are faster than ever. Time to upgrade.

Parts Selection

 
My motivation for this build was: small and quiet. Being insanely powerful as well should go without saying. With these goals in mind, I set out to build a power house in a Small Form Factor (SFF). I don’t use PCIe slots for anything but my GPU anymore and unless you plan to install a massive RAID array (I don’t), ATX just takes up a lot of desk space. The two predominant choices for SFF are Micro ATX (mATX) and Mini ITX (mITX). The size of the motherboard and its available peripherals defines the difference with mITX only supporting 2 x DIMM slots (16GB max) plus a single PCIe slot (x16) and mATX supporting 4 x DIMM slots (32GB) plus 2 PCIe slots. Being limited to a single GPU for the life of this build was a key concern so if down the road if I wanted to add a card and run SLI I could not. My previous PC had 24GB RAM in 6 x DIMMs (triple channel) and came very close to consuming 16GB fairly regularly. Topping out at 16GB for my next platform is cutting it too close. If mITX supported 32GB RAM, it would have been a tougher decision. It’s really a shame because the mITX cases on the market at the moment are among the most beautiful available. Fractal Design’s Node 304 case, for example, almost had me committed to mITX just to build using this case! Simple, clean, highly functional and superbly constructed. There is nothing quite like this in the mATX space, sadly.

Now that I decided mATX was the way to go, it was time to assemble the Bill of Materials. Case selection was not an easy feat and I usually find myself just ahead of the curve, wanting what’s just about to come out. My last few ATX builds have been using Lian-Li cases which are high quality, aluminum, artful designs that do tend to cost more. Silverstone is another manufacturer of like ilk creating some of the highest reviewed products in this space. Taiwan seems to have the high-end PC case market cornered between these two companies.

I looked at a lot of cases over the course of several days seeking the smallest most functional mATX case I could find. I based my decision between 2 cases: The PC-V355B by Lian-Li and the Sugo SG09 by SilverStone. Lian-Li’s case is the closest thing out there to the Node 304 in looks, trouble is there are fitment limitations and design problems. The biggest restriction is the CPU cooler height at 100mm which rules out any high performance tower style cooler. Some people have reported that the motherboard once installed, does not sit flush to the IO shield in the back.  Another problem is that the PSU perches over the motherboard without even a shelf to support it! TweakTown’s review of this case highlighted that using a larger ATX PSU actually caused the rear of the case to flex. Not good. Shame because she’s pretty.

SilverStone on the other hand, created a case that is not only smaller but has no restrictions on CPU coolers or GPU lengths plus supports ATX sized PSUs in a proper shelf. The SG09 has received high praise from just about every review I read. Space efficient, quality construction, free flowing and small. Exactly what I’m looking for. The largest point of contention with the SG09 are its looks. At first glance I didn’t like it either. That front panel is actually plastic made to look like brushed aluminum. I can honestly say that I’ve stared at this thing so long now that it has really grown on me. SilverStone announced at CES a premature successor to the SG09 called the SG10. It’s essentially the same case with a flatly-styled aluminum front panel. Initially I was holding out for the SG10 which is rumored to ship some time in April 2013. The more I looked at the 2 cases the more I liked the SG09 and less so the SG10. I’m also not afraid to modify this thing if it ever bothers me. Functionally this case is very close to mATX perfection which at the end of the day is what matters most.

I didn’t find building in the SG09 terribly difficult, but I’ve been doing this for a while. Careful part selection is of utmost importance and having patience working in tight spaces is key. There is a big warning right on the box to dissuade novice builders.

For my power supply, considering this SFF build in a tight space, I chose a 140mm modular PSU from Silverstone: ST55F. Gold efficiency, clean power, fully modular, with a max of 600 watts, this PSU should provide everything I need and more. I also purchased the SilverStone PP05 short cable kit which, in hindsight, is still a good idea but I should have gone with a fewer higher quality PP07 cables instead. I used maybe 2 or 3 cables from the PP05 kit leaving the others to waste. Space is at a premium so the less you have to tuck inside of tight spaces the better! The review site JonnyGuru.com does an incredibly detailed job reviewing power supplies so definitely stop there first to check out any PSU contenders.

CPU, RAM and Mobo

I’ve long since abandoned AMD as the economy play in the CPU market for Intel who continues to have very little competition in the high-end CPU space. Ivy Bridge is no exception and is the smallest (22nm) most powerful hyperthreaded quad-core yet, with power consumption under 80 watts. More and more functionality is going on-chip with this “Tick” in Intel’s Tick-Tock cycle, getting a die shrink and enhanced graphics capabilities. I debated my CPU choice considering even the 3570 as clock cycles really don’t matter today as much as they once did. Overclockability, cores, cache, power consumption and instructions are all notable considerations but my decision was ultimately made up for me by price. 4 years ago I got an amazing deal on my 1st gen Core-i7 920 CPU from MicroCenter locally, this time around MicroCenter again did not disappoint. They were selling the high end 3770K CPU (K=unlocked) for $100 less than NewEgg, who are really the last bastion of online PC parts. The lesser chips that I was considering were more expensive than this high performer. This was really a no brainer.

The 3770K provides a ton of performance right out of the box. Pushing this chip further will be an easy albeit potentially unnecessary task.

CPU cooling is an area that has a lot of very good data to help make your selection, if opting to buy into the after-market. The stock Intel coolers are marginally ok, barely. If any overclocking is to be attempted at all, an after-market cooler should be a serious consideration. Noctua is one of my favorite brands of cooler with somewhat expensive but highly effective products including some of the best fans around. The NH-D14 is a MASSIVE cooler that is pretty much top dog right now. It occupies a tremendous amount of real estate so low profile RAM is a must in SFF. It’s also $80. For a fraction of that cost ($35), the Cooler Master Hyper 212 Evo delivers impressive results stacking well against its pricier counterparts and was my choice for this build. It is a somewhat rawer product with a direct contact style sleeve where the CPU rests directly against the flattened copper pipes of the cooler. Some minor prep work was required on the 212 Evo before installation, namely filling the cracks between the pipes with Arctic Silver 5.

I also replaced the cheapy Cooler Master fan with a high quality Noctua for silent operation and high performance. Here it is installed in the SG09. There is plenty of clearance for DIMMs with taller heat spreaders.

For motherboards, I’ve bought into the Asus high end for a very long time and have never been disappointed. Performance, value, stability, and longevity are all traits I’ve come to expect from Asus. ASRock has ramped up as a worthy competitor along with Gigabyte with many good reviews and satisfied customers, but at the $200 price point I felt no need to stray from Asus who has only left me satisfied in the past. The Maximus V Gene is the Asus answer for the high-end mATX z77 chipset market. Overclocking, customization, features, performance… everything I could want is in this board and for less than many of its high-end competitors.

Memory is another area of agony with so many choices on the market. One thing was clear at the outset: I wanted a 32GB 1600Mhz DDR3 kit (4 x 8GB). When building SFF the size of the heat sink on the RAM is a key consideration especially if you plan to run an after market CPU cooler. I wanted a kit with tight timings (CAS 8 or CAS 9), low voltage (1.35v) and a low profile to sit unobstructed in the DIMM channels. The Crucial Ballistix Tactical and Sport VLP products fit this bill perfectly. The Tactical LP DIMMs (CAS8) in yellow would have been my first choice but there was a lack of third-party supply for this build and buying directly from Crucial for much more really negated the value for these modules. I ended up going with the 32GB VLP kit (CAS9) in black and have absolutely no regrets. All head-to-head reviews peg these kits very close in performance with a slight edge going to the Tactical LP for overclocking. The Tactical LPs also have a slightly taller heat spreader and carry a higher price premium. The VLP (Very Low Profile) sit almost flush to the DIMM channels providing zero obstruction for any CPU cooler. These modules are seriously low profile and with Micron chips under the hood, you can absolutely trust their performance and longevity.

 

Both run very tight timings at the stock 1.35v and offer a couple of XMP profiles to boost performance. There are other modules on the market that will clock higher but for me, these are perfect. The VLP modules clock in at 800Mhz out of the box with a very attractive 9-9-9-24 at a 2T command rate.

Data

MLC SSD prices continue to become more attractive with loads of available performance. At a minimum, running an SSD for your OS disk is a worthy investment. For this build I’m running 3 disks: 1 x 128GB SSD for OS, 1 x 64GB SSD for apps/scratch, 1 x 1TB 7.2K SATA for data. I have an external NAS array for backup and greater data capacity. My OS disk is the highly acclaimed Samsung Pro 840 SATA 6Gb/s that boasts random reads up to 97K IOPS and sequential reads/writes up to 530/390 MB/s, respectively. In other words, pretty damn fast.

For scratch and application files I’m reusing my Kingston SSDnow+ drive and for data I got a new Seagate Constellation ES drive. Any drive worth buying will have a warranty of at least 5 years. Those with 2 tend to wear out faster from my experience.

All hard drives are mounted cleverly behind the motherboard in the SG09. Up to 2 x 3.5” drives or 4 x 2.5” drives. Having done away with optical media a very long time ago, this new PC will not be getting a DVD/BR drive which must be slot loader style in this case anyway.

Graphics

Although the Ivy Bridge CPU now includes a more powerful on-chip graphics processor, it’s better suited to mobile devices or applications with less graphical demand. I opted to continue to run a discrete GPU for high performance graphics. The GTX 670 is a very good high/middle-end card that many benchmarks have pegged near the 680. I chose the 670 over the closely-spec’d 660Ti due to its 256-bit memory architecture which is stunted on the 660 at 192-bit and as a result offers less memory bandwidth. Most of the other specs are almost identical. Near term you would probably not notice much in the way of a severe performance difference but long game, the 670 has longer legs and more headroom. If the price is close, the 670 is the way to go.

 

 

Build Summary

As far as sourcing parts goes, it found it interesting that Amazon and NewEgg are really the only reasonable places online to source parts anymore. Sure TigerDirect is out there (compusa) but I found their prices to be generally not competitive. I suppose this does reflect the current state of the custom PC today with fewer builders perhaps but there are still a plethora of available parts. As a long time customer of NewEgg, they appear to be doing quite well and have earned top spot as premier parts destination online. Its return and RMA process still leave something to be desired with restocking fees and customer paid return shipping. If Amazon started stocking more PC parts I‘m pretty sure it could push NewEgg out of the game entirely. The only thing I bought from Amazon for this build was the PSU, consequently. MicroCenter provided the CPU and Pro 840, everything else was cheaper with coupons, shipped free, and tax free from NewEgg.

Motherboard

Asus Maximus V Gene
CPU Intel Core i7-3770K
CPU Cooler Cooler Master Hyper 212 Evo
RAM Crucial Ballistix VLP 32GB
Case SilverStone SG09
PSU SilverStone ST55F (+PP05)
OS SSD Samsung Pro 840 128GB
Scratch/apps SSD Kingston SSDNow 64GB
Data disk Seagate Constellation ES 1TB
GPU eVGA GTX 670
OS Windows 7 Ultimate SP1 x64

 

Windows 8, or…bust?

There’s a lot to like about Windows 8: settings sync between devices, new windows explorer, task manager, file copy/ pause operations, power savings, memory savings, oops reset, and some increased security. There’s a lot not to like about Win8: start screen, devalued search, hot corners, separate UIs to update and manage, a device with no touch negates many of the new improvements. I’ve run every version of Win8 since the first preview release. I’ve had a lot of time to digest it, watch the changes, read the white papers, blogs and get accustomed to the UI(s). I’m sad to say that Win8 will be the first new Windows OS ever that I will not be installing on my new PC. It just doesn’t make sense to me. The majority of the under the hood changes to Win8 deal with optimizing the OS for portability, which is fine, but I’m not overly concerned with less RAM consumption or new sleep modes on my PC. I am sure that Win8 is an amazing product on a proper touch enabled device a la the Surface or Dell XPS 12.

Win8 is a dual-personality OS with 2 distinct UIs each with its own set of applications. Metro apps run sandboxed much like Android or IOS and silently suspend or terminate in the background, much the same way. After a long time forcing myself to adapt, I’ve come to the conclusion that metro just isn’t for me on a desktop PC with a keyboard and mouse. I’m not interested in live tiles or apps from an app store, nor do I want to hover over hotspots or drag windows via mechanisms designed for touch. The new Start screen is essentially an exploded version of the Start menu, but now the search functionality has been handicapped. You can still push the windows key, type cmd and hit enter but if you’re searching for something there are more clicks involved now between the apps, settings, and files sub categories. Windows7 start search is far superior in this regard. Metro (formerly known as) is an interface designed for touch, period. So I resigned myself to “live on the desktop side”, I installed Classic Shell and enabled booting to the desktop which brought back the familiar feel of Win7. Start search is still severely lacking with Classic Shell in place and I’ve had a few application compatibility problems as well. Win8 just doesn’t feel like an upgrade, especially having to make so many concessions to live with it. The user experience overall has gotten worse, not better, in my opinion for non-touch enabled devices. Win8 will likely be the new Vista (which I never had a problem with personally) and Microsoft has some time to watch the market before making their next move. They hedged their bets between tablets and PCs with Win8 and have managed to give each group enough of what they need. If this tablet thing fizzles into a fad, no problem, out comes the full blown desktop, if the PC dies completely metro will be primary. I’ll continue to run Win8 on my laptop, but my new powerhouse desktop will be getting a fresh build of Win7 SP1.

Final Thoughts

Overall I am extremely pleased with my new Ivy Bridge build in the SG09. One of the few aesthetically bothering items is that the ST55-F PSU in the SG09 sits off-center to the left so you can see the PSU logo off behind the case logo. Also the bar of stickers on the right side of the face of the PSU are somewhat distracting. The use of 90-degree sata connectors should be avoided in this case as they can interfere with the closing of the top lid. SATA “6Gb” cables came with the V Gene board but tests show there is no performance difference whatsoever between these and SATA cables from years ago. The 6Gb cables do have locking mechanisms on the ends which are a nice touch.

The OS installation was a marvel all unto its own taking 5 minutes flat from start to finish. Reboots are a literal 10 seconds from click to logon screen. In complete stock form this rig is a beast. I plan to overclock a bit once the TIM has broken in on the CPU but the need to do so is really minimal. It will be for fun more than anything.

From a power consumption perspective, this PC has yet to break 200w of usage, even during peak graphical or CPU intensive operations. For anyone wondering if 550w in a SFX PSU will be enough, yes it will! I have light fixtures that consume more power than this PC! It is also very quiet with all fans operating normally. There is a fan switch in the rear of the case to boost all RPMs to high which does kick up the noise a bit. Between this build and my old rig it’s almost like my office is too quiet now. 🙂

Temperatures are so far better than average from what I’ve read, with the CPU idling ~33-34 Celsius. This will get better as the Artic Silver 5 sets in.

I don’t have any other performance benchmark data at this point (other than my 7.9 Windows user experience score) so I’ll just leave it that this thing is FAST and was well worth the upgrade. Faster, quieter, smaller, less power consumed = mission accomplished.

From:

To:

Resource Sharing in Windows Remote Desktop Services

Resource sharing is at the crux of every virtual environment and is ultimately what makes a shared environment feasible at all. A very common pain point in Remote Desktop Services/ Terminal Services (RDS) environments is the potential for a single user to negatively impact every other user on that RDS host. Server 2008 R2 includes a feature called Dynamic Fair Share Scheduling (DFSS) to balance CPU usage between users. This is a proactive feature so it is enabled by default and levels the CPU playing field at all times depending on how many users are logged in and CPU available. In Server 2012 the fair share features have been expanded to include network and disk as well.
From the Server 2012 RC Whitepaper, the 2012 fair share experience:

  • Network Fair Share. Dynamically distributes available bandwidth across sessions based on the number of active sessions to enable equal bandwidth usage.
  • Disk Fair Share. Prevents sessions from excessive disk usage by equal distribution of disk I/O among sessions.
  • CPU Fair Share. Dynamically distributes processor time across sessions based on the number of active sessions and load on these sessions. This was introduced in Windows Server 2008 R2 and has been improved

Cool! New features are great. Fair sharing has been traditionally an on or off feature, this is where the extent of the configuration ends. From what I can see in the 2012 RC, that doesn’t appear to have changed. Of course if you are running Citrix XenApp, you would want to disable all Windows fair share features and let XA take care of those functions. Fair sharing can be controlled via Group Policy or registry but only the CPU piece is visible in the RC GPOs. 

 

It is also stored all by itself in the registry under \Quota System.

I do see the additional fair share elements in the registry, however, so the missing GPO elements should appear in the RTS version of the product. Obviously, 1 = on, 0 = off. Looks like there is some registry organization work that still needs to happen.

In an environment where 100% of the users run 100% of the same applications with 100% predictable usage patterns, this model works fine. The trouble begins when you need to support an environment the requires some users or applications to be prioritized over others. There is also nothing there to deal with application memory usage. You could make the argument that this is the point at which these special users should be carved off of the shared session host and given VDI sessions. Luckily, WSRM is available to provide tighter controls in a shared session environment.
Windows System Resource Manager (WSRM) is a tool that has been around since Server 2003. It’s purpose is to granularly define resource limits as they pertain to specific users, sessions, applications or IIS app pools. WSRM’s use isn’t limited to RD Session Hosts, it just happens to be very useful in a shared environment. It should be noted that WSRM is a reactive tool, so you have to cross a certain threshold before the limits it imposes kick in. In the case of CPU, the host has to reach 70% utilization first, then any defined WSRM CPU limitation policies would begin to ratchet down the host. Best practices call for the use of targeted CPU limits to restrict resources, not memory limits. Use memory limits only if an application is exhibiting a memory consumption problem.
Here is a quick example of an allocation policy limiting IE to 25% CPU. This policy would need to be set as the managing policy for it to take affect after the host’s total CPU reached or exceeded 70%.


Another simpler option could be to use weighted remote sessions, categorizing users into basic, standard, and premium workloads to appropriately prioritize resources.

In the Server 2012 RC Add Roles and Features wizard, it is clearly called out that WSRM is now deprecated. Server 2012 will have the tool but the next server release in 4 years will not. Hopefully Microsoft has something up their sleeves to replace this tool or bolster the configurability of the fair sharing features.

References:
2012 list of deprecated features: http://technet.microsoft.com/en-us/library/hh831568.aspx
WSRM for Server 2012: http://technet.microsoft.com/library/hh997019
Server 2012 RC whitepaper: http://download.microsoft.com/download/5/D/B/5DB1C7BF-6286-4431-A244-438D4605DB1D/WS%202012%20White%20Paper_Hyper-V.pdf

Windows 8 Consumer Preview

Now that the Win8 CP is out in the wild, I wanted to share some of the things I found different and interesting in my trials with the new OS. Microsoft is again following the very public and very successful methodology it developed for Windows 7 by putting it in industry hands well before launch. The Win8 team is busy blogging about features while taking praise and criticism that can amount to real product change before the OS goes Generally Available. Device makers can develop drivers for their hardware well in advance so when Win8 hits shelves there are zero support gaps. With the new Windows app store, developers can build applications and games that will also be available when the OS reaches consumers. This is a very good strategy that will end with the public ultimately knowing exactly what it’s getting with a very polished product that has already been put through the paces.

Basics

Setup is a mirror image of Windows7 at this point, very clean and simple. What immediately follows is a new personalization wizard that adds many options prior to initial login. Just like on Apple and Android platforms, you now have the option to sign in using an online account for use in the Windows Store and syncing settings across multiple PCs. You can also opt out of this and sign in with a local account.

You can also turn many privacy, troubleshooting and other settings on or off before logging in.

Once the settings are finalized, you log in to be presented with the metro tiled layout to which we are becoming more and more accustomed.

Switching from metro to the traditional desktop can be done either by clicking the “Desktop” tile or clicking the lower left corner. Switching back to metro from the desktop is done by clicking in the lower left corner or using the win key + tab combination which brings up the start bar and cycles amongst running apps.

As seen before the Start button is sadly gone now and the options that previously existed to customize its look and feel are appropriately gone as well.

Metro

It quickly becomes apparent that you are dealing with two completely separate UIs within one OS: metro and the desktop UI. Apps launched in each UI are even managed differently. Metro apps that are running show up only in the new Start bar while traditional desktop apps show only in the desktop taskbar.

Metro apps can be closed by grabbing near the top of the screen (inside the app) and throwing them away at the bottom of the screen or by using the start bar to right-click and close. To make the metro start bar appear you have to slide the mouse from the bottom left corner up the left edge.

Customizing the metro interface is done via the metro settings menu. Hovering in the far right corner reveals a control overlay that provides access to search and devices as well. This overlay is accessible from both metro as well as the desktop UI.

Clicking settings from here reveals some basic controls including power control. The resulting settings menu is a good candidate for further refinement as the only option in the top settings link is to expose administrative tools. You have to click “more PC settings at the bottom right to get to a place where any real customization can occur.

Once in the more PC settings area, the options range from wallpaper to device settings.

One of the more interesting areas is “sync your settings” which controls what system settings to sync up to the cloud for use on your other devices.

Search has also undergone a significant change with the Start button/ Start Search now being defunct. The mechanism that controlled the search index remains the same but metro has taken over. Hovering over the lower right corner again brings up the overlay that contains access to search now. Just like Start Search anything in the PC can be searched for. The new metro interface breaks out the results between Apps, Settings, and Files. The count next to each shows how many matches exist in each category.

Right-clicking in the metro open space reveals a single option in the lower left to reveal all apps.

From there you can see all desktop UI apps.

From here you can pin a desktop app to a metro tile if you choose. This still results in the application executing on the desktop UI side.

The Windows Store is in place and functional. It even had a few updates for some stock metro apps.

Platform app stores seem to be judged by the number of apps available in their respective stores (regardless of quality) so I’m sure we’ll eventually see any current records broken here as well.

Desktop

All the new visual changes in metro aside, there are some interesting changes on the desktop side as well. IE10 shows itself with some security and functionality enhancements while retaining much of the traditional IE interface.

Windows explorer of course finally receives the ribbon treatment and eliminates the need for separate menu item drop downs.

Task manager received a total facelift completely abandoning the classic NT look that has endured for so long. It also was revamped for usability in which it clearly succeeds.

“More details” opens an impressive and data-rich interface where applications are grouped among those run by the user and the OS, each displaying its own consumption of the 4 core hardware metrics.

The performance tab beautifully displays the real-time resource utilization. Resource monitor can be launched from here but its UI was not updated in this go-around.

“Details” is what “Processes” is in Windows7 but with the new categorized processes tab in Win8 I‘m not sure why this was included. The ability to control apps that start with Windows in the Startup tab is a nice touch allowing easy disabling of anything you want shut off.

The users tab further breaks down what is being run by the user but seems redundant based on what is already in the processes tab. I would bet that we’ll see further refinement and consolidation before launch.

Digging through the control panel I see quite a few things that are new or have changed.

Storage Spaces is a high-level software RAID type of solution that pools external storage devices to protect your files while also providing thin provisioning .

File history is another file protection mechanism that can be used to copy important files to external storage or SMB share.

Additional refining options are available in the advanced settings.

Recovery provides the highly anticipated Refresh and Reset options that offer a virtual reset button should things go wrong with your PC.

Credential Manager has been expanded to include a delineated web credentials section for managing accounts saved in IE.

Another highly anticipated feature of Win8 is native Hyper-V. This replaces XP Mode in Win7 and provides a natural alignment with Windows8 Server. This feature requires 4GB RAM and an x64 version of Windows to host desktops.

 

All told the Win8 Consumer Preview is another very solid pre-beta release from Microsoft. Just like it was with Win7, I anticipate that Win8 beta1 will be stable enough to run as a primary OS.