Monday, April 1, 2013

Thunderbolt vs USB 3.0 ( vs Firewire 800 ) from a user perspective

Today, I am going to blog about consumer I/O technology from an end-user perspective.

I was reading comments today from some mac purists who still extols the virtues of Firewire 800. Well, FW 800 is pretty much dead in my book. In rare circumstances, FW800 beats out USB 3.0 in specific use cases. And those use cases are rare. Generally speaking, USB 3.0 is the cheapest I/O technology that will out perform FW800 in the other 90% use case scenarios.

Thunderbolt vs USB 3.0 is a bit more interesting to debate. I'll happily concede that 80% of the population are perfectly addressed with the cheaper USB 3.0. Yes, it is cheaper. In every use case, it is cheaper than Thunderbolt. However, cheaper does not mean it is better technology. It simply means it is more convenient.

Thunderbolt is still an early adopter technology. The cables themselves are expensive. They used to cost $50 but have been dropping in price to as low as $25 for .5 meter cables. Just getting the extra cables mean this is already a hassle for most users. The only Thunderbolt device I bought that came with cables was my Drobo  5D. For everything else, I had to buy the cables.

So what do I like? Well, I prefer Thunderbolt but in most cases, USB 3.0's cheaper price differential means I play in both camps. I don't hold allegiance to anything so I can't tell you which one is better. Simply, I can share some of my experiences.

First of all, I really like the idea of daisy chaining. As seen below, I have three Thunderbolt devices chained. In the next picture, I have a DVI-D monitor chained to a Seagate STAE129 Thunderbolt desktop adapter.

This is a big selling pitch in theory and in the benefits are tangible in the real world.
My iMac 27" has two Thunderbolt ports and it is pretty clean to chain, chain, and chain devices; including extra monitors. I like this idea so much, I am thinking of splurging on either the new Matrox or Belkin Thunderbolt hubs. Yes, they're pricey. But I definitely see the advantage of having just one cable connected to my Macbook and everything else hidden from view.

Now, I've thought, those Matrox and Belkin Thunderbolt hubs are indeed very pricey. Very pricey. But I started to look at USB 3.0 alternatives. I looked at many of the different USB 3.0 DisplayLink hubs that have integrated DVI and Gigabit. And those are pricey as well.

These USB 3.0 DisplayLink hub usually carries a DisplayLink DL-3000 controller. They are specced to go as high as 2560x1600 but all the ones I've seen on sale usually only supports 1080p or 2048x1152. DisplayLink, despite how convenient it is, is still laggy for me. I recently got a USB 3.0 DisplayLink HDMI adapter and it was slow (even in Windows). They would suck CPU cycles as much as 40%.

Thunderbolt uses my GPU's capabilities to drive external monitors by routing it via Displayport. You won't be suffering CPU hogging spikes as you try to display hi-res video. With Thunderbolt, chaining monitors is simply up to your GPU's capabilities.

So forgot about chaining video with USB 3.0. It is gonna be slow. Still, I need multiple (extra NICs) and storage. I could use a USB 3.0 hub like this one pictured below. But as you can see with just two extra USB 3.0 cables, it is starting to look cluttered. USB 3.0 hubs are cheap and I'll give you that. I can probably hide it in the back and use some sort of tidy cable management.

So this boils back to the idea of a single cable. In reality, I would still have to connect a video cable to my Macbook. I would also probably still need to plug in an ethernet because most USB 3.0 gigabit solutions are not reliable or that great. So even with a USB 3.0 hub, my Macbook will still look like this.

Now lets talk about storage. A good majority of my blog posts revolve around storage. USB 3.0 by a longshot is a cheaper solution for a good majority of the population. And that is the major compelling advantage. It is simply cheaper and I buy USB 3.0 devices for that very reason alone.

USB has two type of Mass Storage implementation. B-O-T (Bulk only Transport) and UAS (USB Attach SCSI Protocal). If you don't know what it is, google it or read it on my blog archives. Very few devices support UAS (also UASP). 99% of the USB 3.0 devices you buy in the store will be B-O-T. You will only get UAS/UASP if you actively look for it. Your device (PC/Laptop) also needs to support it. If you are not running a 2012 and newer MacBook, you most likely don't have it.
UASP enables SCSI like storage transport. It will behave more like a real storage interface than something added with middleman layer that has plagued USB for over 10 years. FW800 smoked USB 2.0 because it was generally more efficient. UAS fixes this. I've seen in some cases, certain UAS devices outperforming certain Thunderbolt devices but that is the exception and not the norm.

In a nutshell, this is how BOT and UASP works. 99% of your USB drives (aka BOT) will wait for a command from your PC. It then replies back in a series of sequence. UASP sends command and receives responses in parallel. Notice in the graphic below, a single transfer takes up a considerable amount of time vis-a-vis in comparison to UASP.

In short form, BOT hard drives wait for a set of instruction from the host computer. Once it gets those instruction, it has to process and reply back to the host. This happens every 64K. So there is a bottleneck right there as USB devices have to wait and queue.  With UASP, newer versions of USB acts more like SCSI.  Hence,the improved performance.

Now, Thunderbolt doesn't have to deal with this. It acts like a native AHCI SATA device. There is basically no translation layer. Thunderbolt behaves like PCIe devices connected to your mobile laptop.

Generally speaking, you won't notice a difference when using regular rotating platter hard drives via Thunderbolt. The HDDs will be the bottleneck and not the connection.

Even with HDD, in most cases, Thunderbolt performs still perform better in a mix-load. Booting OS and transferring small, medium size files. Thunderbolt will act and perform as an internal drive or an eSATA drive. For example, the same 4TB Seagate Hitachi Backup Plus drive will take 1 minute 45 seconds to boot Mountain Lion using USB 3.0. Using Thunderbolt, it takes 40 seconds. Running a full OS and taking it through its paces, you definitely notice how USB will lag here and there. Thunderbolt, it feels like an internal drive.  In addition, copying small, random 4K files will be exponentially faster with Thunderbolt. However, copying large files like DVD rips, both USB 3 and Thunderbolt perform the same.

My general advice is USB 3.0 for standard, cheap HDD external drives. But for RAIDS, high-performance, or SSDs, I recommend Thunderbolt by a large margin.

First of all, a majority of USB 3.0-SATA controllers are still only SATA I/II supporting only 3.0 Gbp/s. Dropping a high performing SSD in to a cheap USB 3.0 enclosure may only give you 200 MB/sec. You will need to research carefully, test various USB 3.0 enclosures to see what perform the best. Then you need to see if those enclosures, devices, and docks support UASP. There are too many variables at play here. Then there is the issue of incompatibility between (host) controller to chipset (device). An example of this is some JMicron chipsets on many of the $200 eSATA/USB 3.0 external multi-bay RAID boxes. What does this incompatibility mean? Intermittent dropped connections and sleep issues that is evident in numerous negative 1 star customer reviews on Amazon or NewEgg.

Thunderbolt, in most cases are seen as SCSI and AHCI SATA devices. They respond to SMART diagnostics and generally act and perform like normal internal hard drives.

You even get SMART access.

And compare to USB 3.0

In terms of RAID, Thunderbolt wins by a large margin. There is simply no shipping USB 3.0 RAIDs that can perform on the level of a Pegasus R4/R6 or LaCie 5big.

USB 3.0 has a theoretical 5.0 Gbp/s limit. In other words, 640MB/sec. Then you have to factor in overhead. The highest you will get in the real world is closer to 500 MB/sec. And this is with a UASP device and a single SSD. Trust me, I've tried to hit the limit on several occasions. I've even gone as far as striped SSDs in RAID 0. Two striped SSDs in USB 3.0 was no match for two striped 7200 rpm drives in RAID 0 using Thunderbolt. Trying and experimenting different USB 3.0 has been costly for me. I'll say it now, most external RAID enclosures supporting USB 3.0 is pretty much bleh. They're unreliable and do not perform as well. I'd rather stick to eSATA.

Thunderbolt has twice the bandwidth and I've seen over 1 Gig/per second using Thunderbolt. So, there will be no high performing USB 3.0 RAID boxes ever that will match the likes a Promise RAID. With Thunderbolt, you can get SAS adapters to connect to large enterprise 20-24 bay RAID enclosures.  Overall, working with Thunderbolt is a pleasure. It works great in theory and in the real world. USB 3.0 will never see these type of benchmarks.

However, I need to end my lengthy article.

USB 3.0 wins in mass adoption and price. There is no denying it. I'll recommend it for most use cases. If you need a large 4 TB drive to store your iTunes music or backup your movie files, go with USB 3.0.

However, if you want reliable, optimal performance with potential, there is no denying Thunderbolt is superior. For example, I would never boot and run a full OS full time with USB 3.0. Sure, I may run a test distro, live disk USB install, or something like ESXi/FreeNAS with USB. But for any major desktop OS, I would prefer Thunderbolt. Likewise, if my backups consisted of synching source code (lots of small 4K files), I would never use USB. Another example would be Lightroom. Thumbnail generation is much, much faster using Thunderbolt than any USB 3.0 device.

Superior technology doesn't necessarily win. Just look at the Betamax vs VHS example. There is also no denying that Thunderbolt is expensive.

1 comment:

  1. i know your post is more then a year old but my research arrived on this and i like your article, i'd like to have your opinion on this

    I have a drobo 5 that has a usb 2.0, esata, firewire, im buying a Mac Pro and would like to know which one would be more stable and of course fast, "firewire 800 to thunderbolt" or "esata to usb3" in theory esata to usb3 should be faster but just wondering what you think about it...thanks a lot !