Welcome

You have reached the blog of Keith Elder. Thank you for visiting! Feel free to click the twitter icon to the right and follow me on twitter.

External Drives – Which Technology Should You Use?

Posted by Keith Elder | Posted in Computer Hardware | Posted on 10-04-2009

I’m amazed when I talk to friends who are comfortably happy using external USB drives to store information.  I ask them how their copy speeds are and they normally respond with the usual speed of 10-25MB/s for USB.  They then follow that up with, “I wish it was faster, it takes so long to copy large files.”.  Let’s face it, files are getting bigger and as more and more people go digital with photos and video, we need faster ways to move this data around for backups and other purposes. 

The good news is we’ve got faster transfer methods than USB but for some reason most people don’t know about it.  For some reason my friends don’t believe me when I tell them to throw away their USB cable and install an eSata port (or use the one they already have) if their external drive supports eSata.    A few seconds later I get this blank stare of “what is that?”. 

I’m not sure why eSata hasn’t caught on as much as USB but if you are looking to buy a new machine or notebook, don’t purchase one without an external eSata port.  As a matter of fact, make it two if you can.

Here’s the difference in several available external technologies and their respectful transfer rates:

  • USB 1.1 – 12Mbps
  • USB 2.0 – 400Mbps
  • Firewire 400 – 480Mbps
  • Firewire 800 – 800Mbps
  • eSATA – 1.5Gbps (real speed 150MB/s)
  • eSATA II – 3Gbps (real speed 300MB/s)

While eSata I and eSata II have real speeds of 150/300MB/s respectively that’s a tremendous amount more data flying across the bus as compared to USB or Firewire.  To show you this is real, here is a screen shot copying files from a local drive on my machine to an external eSata drive. 

image

That’s 110MB per second!  If you are copying a lot of information around, doing backups, etc, eSata is the clear winner.  A lot of new external drives come with both USB and eSata.  When you are shopping around you’ll primarily run into USB but most newer drives support both, be sure to get one that does both.  I recently had to purchase a new drive when my external drive failed and I purchased the AcomData PurDrive with 1 TB of data for just a little over $100.00 (this is the F:\ above).  Thus the prices are very reasonable.

Words of Wisdom

What should you do now armed with this new information?  Throw out that old USB drive and start using eSata.  It is here today, it is fast, it is cheap and it works!

Of course, if you have an older machine it may not have eSata.  Don’t worry, you can easily purchase an eSata card as an add-on for your desktop machine. If you have a notebook, obviously the options are a little more limiting but you can purchase a PCMCIA eSata card.

Benchmarks: Core i7 vs Core 2 Duo vs Virtual Machine

Posted by Keith Elder | Posted in Computer Hardware | Posted on 09-04-2009

Let’s get ready to rumble! After my new machine arrived I set out to answer some of my questions.  How much faster is the new machine than the previous laptop I was using to develop on (anyone that has seen me speak in the last two years has seen this laptop).  Is the virtual machine I’ve been developing on for work faster on the new machine? If so is it faster than my old machine?

To get started I downloaded PerformanceTest which gave me a free 30 day trial.  Plenty of time to test and gather benchmarks.  The program is nice because it allows you to easily load up saved tests and do comparisons as you’ll see.  Let’s get started!

The Setup

Updated 4/11/2009 – Several people requested I run some additional benchmarks so this now includes three new benchmarks for the virtual machines.

To try to make things as fair as I could I did a clean boot of each machine and then killed any background processes that were running (utilities, snagit, etc).  I then ran the benchmark twice and took the faster run.  Here’s what each system is running:

  1. DellD820, Dell Lattitude D820 Notebook, Core 2 Duo 2.33GHz, 4GB, 100GB 7200RPM HDD, Windows Vista x32
  2. DellVM2Proc, Dev Virtual Machine, VMWare, 6.5, Two Processors, 1.5GB, Windows Server 2008 x32 (running on D820 Notebook, external eSata drive)
  3. DevVM1Proc4GB, Dev Virtual Machine, VMWare 6.5, Single Processor, 4GB, Windows Server 2008 x32 (running on new PC below)
  4. DevVM2Proc3GB, Dev Virtual Machine, VMWare 6.5, Two Processors, 3GB, Windows Server 2008 x32 (running on new PC below)
  5. DevVM2Proc4GB, Dev Virtual Machine, VMWare 6.5, Two Processors, 4GB, Windows Server 2008 x32 (running on new PC below)
  6. New PC, Core i7 920, 12GB, 300GB 10,000RPM HDD, nVidia 9400GT, Windows Vista x64

CPU

First up is CPU.  Obviously I knew going in the Core i7 was going to take the prize.  What I didn’t expect to see is this wide of a margin.

image

The processor in the Dell is a 2.33GHz Core 2 Duo, so not a bad processor.  Still it gets crushed by the Core i7.  The VMWare virtual machine took last place in this round.  That isn’t too surprising since it is virtualized running only one processor. 

Graphics

This is the biggest surprise of the day.  The little laptop that could came through and crushed the competition.

image

Even the virtual machine almost had the same score as the new PC.  I am completely puzzled over this one.  Maybe some true hardware guru will have some insight, or maybe the benchmark is just broke ?

Since the laptop and the VM don’t have 3D support the only machine that had a score is the new PC, thus no point in showing the benchmark.

Memory

Memory performance starts to give a better idea of how the machine line up in terms of speed.  In this round the laptop takes last place with the VM running on the new PC taking second. 

image

Disk Mark

The disk mark shows the VM taking the prize.  Why?  I have no idea.  For some reason the VM was able to read twice as fast and won in every other category as well.

image

The thing to note in the sequential read mark is the new PC is pushing about 102.8 MB/s throughput.  That’s more than twice as fast as the laptop. 

Summary

So how did the machines stack up in the end? Well, obviously the new PC is going to take the top prize, but the surprising winner when all the numbers were added up is the VMWare virtual machine took second place!  Even more surprising, the VM with 3GB outperformed the 4GB!  There is definitely a difference enabling two processors in VMWare, about 100 points difference between the two. 

What does this mean?  It means that the virtual machine I develop on running on the new PC is faster than the entire laptop I previously used.  To be honest, developing on the laptop wasn’t bad at all.  It performed very well but the new Core i7 system is literally like running two machines in one. 

image

Words of Wisdom

I know a lot of developers are using laptops to develop on today because the performance of them has gotten to be pretty good.  The bottom line though is you will never beat a desktop for speed and performance.  My advice is for you to seriously consider ditching your laptop for serious development and use a desktop.  You just can’t beat the performance.

Specs for New Core i7 Computer

Posted by Keith Elder | Posted in Computer Hardware | Posted on 08-04-2009

How do you describe something that is so fast it responds as fast as you think?  I would describe it as my new Intel based Core i7 machine that arrived on Saturday.  To say this thing is fast is an understatement and it has been a dream to work on the past few days.  I’ve gotten more work done and have cut a tremendous amount of waiting time down.  Before I bring out the benchmarks on the machine I thought it would be nice to just talk about the specs on the machine. 

Specs

image

CPU  / Motherboard

At the heart of the machine is the Intel Core i7 920 processor sitting on top of an EVGA X58 SLI motherboard.  If you’ve been researching this CPU it doesn’t disappoint.  Take my word for it.

The 920 is a great cheap because it is the cheapest in the lineup but can be severely overclocked.  I went with the EVGA X58 SLI motherboard because they offer great support and built this board with overclocking in mind.  There are even reports of the 920 being overclocked to 4.2GHz on air with EVGA boards.  Given the base speed of 2.66GHz that’s a lot of overclocking to say the least.  These CPUs are known to run a tad hot so I opted to go with a water cooled system for the CPU.

For the water cooling system I chose the Asetek water cooler.  I have to admit that it is weird opening the case of the computer and seeing what looks like a car radiator in the back.  I wasn’t able to find an exact version of the model I have but here is the closet picture I could find that shows you what it looks like.

image

This model is supposed to dissipate about 250W of heat from the CPU and is doing a fine job so far.  Currently I’m overclocking the CPU to 3.2GHz as seen here.

image 

Things are staying pretty cool even after I overclocked it.  EVGA provides a great utility for their customers called “eLeet” which is an overclocking utility among other things.  Here’s the current temperature of the machine after a morning’s worth of development, builds, and heavy use.

image

I haven’t tried to push it yet but I know without a doubt I’ll be able to push more out of the system.  Probably the coolest thing about the new processor is looking over at my Sidebar CPU Gadget.

image

“Wait… there’s 8 cores on it? I thought there were 4?”

Well, there are only 4 cores on the CPU but I have HyperThreading enabled.  Basically what that means is I have 8 logical cores and that’s why it shows up in the CPU monitor as 8 CPUs.  I can tell you having HyperThreading enabled is great.  The point of HT is to keep the machine responsive.  Example.  Yesterday I was building documentation for our Framework at work in a Virtual Machine I develop on.  It takes about three minutes to build the documentation.  It is an intensive process.  After I started the build, I minimized the VM and checked email, twitter, glanced at stocks and read some news.  Doing all of that was flawless and instant.  It was as if the machine was idling.  If you aren’t familiar with this technology here’s a real explanation:

Hyper-threading is Intel’s trademarked term for its simultaneous multithreading implementation in their Pentium 4, Atom, and Core i7 CPUs. Hyper-threading (officially termed Hyper-Threading Technology or HTT) is an Intel-proprietary technology used to improve parallelization of computations (doing multiple tasks at once) performed on PC microprocessors. A processor with hyper-threading enabled is treated by the operating system as two processors instead of one. This means that only one processor is physically present but the operating system sees two virtual processors, and shares the workload between them. Hyper-threading requires both operating system and CPU support;

The EVGA board is working out very nice so far.  I’ve already used the CMOS reset button when trying to overclock and with 8 USB ports on the back of the machine as well as 4 on the top of the case I got rid of my USB Hub finally.  The only thing about this board I don’t like is it takes it about 10 seconds just to get to a boot screen when you turn it on.  Not a huge deal, but it does take it awhile to get going.  Once it starts loading the OS though it is only a few seconds away from a login prompt.

Hard Drives / Video

I went with two 300GB 10,000RPM VelociRaptors from Western Digital to store my data.  These drives fly and provide a good balance between storage and performance.  While the EVGA motherboard supports RAID, I am running them individually for now (hey, Rome wasn’t built in a day you know!).  The main reason for running them separately is it is faster to run Virtual Machines on a separate drive.  Thus one drive is for VM’s and other data and one for the OS. 

Having these two drives provide a nice upgrade path as well as I will probably RAID the VMs down the road by purchasing another two drives when prices come down, and then take the 2 300GB drives and RAID them. 

Since these drives are churning at 10,000RPM heat can be a concern thus I’m keeping the drives cooled with the Vigor iSurf II Hard Drive Cooler.

image

The machine has two EVGA 1GB 9400GT video cards in it which allows me to support 4 monitors.  These aren’t the fastest / latest / greatest cards on the market but since I don’t play games on the machine (that’s what Xbox is for!) my main reason for getting them was to get more screen real-estate.  Each card has 1GB of memory and supports as high of a resolution as I need to go to that’s for sure.  In the future I am sure I’ll upgrade them but for now they’ll do just fine. 

That’s about it.  That’s the main parts in the machine.  Hopefully this post will satisfy all my friends who’ve been emailing and IM’ing me wanting to know.  Next up, I’ll show you some interesting benchmarks I did on the machine as well as the Virtual Machines. 

New Computer – Cyberpower iCore7 Unboxing

Posted by Keith Elder | Posted in Computer Hardware | Posted on 07-04-2009

Back last December I posted an article about building a new developer rig.  Fast forward a few months and I was finally able to make it happen.  Well, almost.  I say almost because I didn’t build the *exact* machine I listed earlier.  I skimped on a few parts here and there to pour the foundation for something I can upgrade overtime, yet something that would give me a great bang for the buck based on my needs as a developer.

Like any good developer/geek waiting for a new machine to arrive I took all the precautionary steps to make sure the FedEx driver knew someone was home on Saturday.  On large purchases like this some vendors require a signature and FedEx will typically not leave it unless you sign.  Here’s my pre-delivery routine:

  1. I got up early and took a shower.  The worst thing is hearing the doorbell ring while in the shower and by the time you get out the driver is gone.  If you are waiting on a delivery like this, you should be done no later than 7:45/8:00.  You just never know when they’ll show up.
  2. I opened the front door shades to allow the driver to see into the house.
  3. I turned on lights in the living room and turned the entertainment system on and very loud so the driver could hear someone was home.
  4. I opened the garage about half-way so the driver could see a vehicle was home.
  5. I let the dogs out in the house.  They are great at figuring out when someone pulls up or is outside.  I call them an early warning signal.

With the pre-delivery routine set it was time to wait.  The computer finally arrived about 12:30 PM.  Due to the early warning signal I had in place I was alerted to the drivers presence but I couldn’t find him.  I finally saw him walking back from around the house and he said he had put the computer in the garage.

I finally got the computer into the office ready for the unboxing.  Below are the pictures of the unboxing.

 image

Don’t let the boxes you see below fool you.  The keyboard in the box I didn’t want, but it wasn’t an option to take off the build.  The 650W power supply box had all of my cables in it and the Kingston memory box was completely empty. 

CyberPower is the builder of the machine.  Who is CyberPower?  Well, they have been making custom-built computers for years and they allow hardware enthusiast to build a machine with specific high quality parts.  Since these are custom-built machines, they aren’t packaged like a Dell or Gateway or an Apple.  One mainly buys this product because you can get exactly what you want.  Thus, if you are expecting me to beat them up on their packaging I’m not.  I’ve had friends order from them before and on their custom built machines this is sort of par.  They can do better though, no doubt.  But, I’d rather keep the prices lower than having a pretty package that raises the price another $30-$50 per machine.

image

Moving on we can see the free t-shirt and bag and the box of cables opened. The bag is cheap and t-shirt not much better (at least for a guy).  I gave the shirt to Ellen.

image

Getting through the foam we are finally down to the machine.  Seeing the Cosmos-S Cool Master case at the bottom started to get me excited.

image

The case comes with a cover.  Honestly, I’m not sure why.  

image

But the cover does make a great doggy bed addition.  I placed the cover on the ground and the dogs immediately thought it was a new bed and added it to their bed in the corner.

image

After getting the machine out and inspecting the case (which is awesome by the way), I finally got it plugged up ready to load Vista x64.

image

Surprisingly I thought this machine was going to sound like a 747 taking off when I turned it on.  To my surprise it is extremely quiet (for a PC).  Stay tuned in, next up I’ll share the specs and some benchmarks, you know the REAL FUN STUFF! 

Re-Enabling Features in CodeRush v2009.1.2 After They Are Disabled

Posted by Keith Elder | Posted in Visual Studio | Posted on 06-04-2009

After installing the new Coderush v2009.1.2 release for Visual Studio I broke one of my templates using the new disable feature.  There is a new feature in the release that tells you what CodeRush did after you initiate a command.  For example, let’s say you create an automatic string property by typing: “as <space>” as seen here:

image

As you can see CodeRush pops up a dialogue in Visual Studio telling you what it did.  This is a great feature in case you type something that CodeRush does that you don’t want.  There are a few edge cases I know I have run into where this is going to be a welcomed feature.  However, what I did as I was looking at the menu was accidentally click on “Disable” as you see above.  I spent the next little bit digging around figuring out how to re-enable this CodeRush template.  I finally found it out how to re-enable this, I hope it helps someone.

Open the options window for DevExpress and underneath the Core node, flick Features.  Each time you disable a “feature” it shows up here in the list.  Simply uncheck the template or item you disabled to re-enable it.

image