Take a look at our
ThinkPads.com HOME PAGE
For those who might want to contribute to the blog, start here: Editors Alley Topic
Then contact Bill with a Private Message

Flush-mount Laptop Adapters Part 5: USB 3.0 Revisited

Performance, hardware, software, general buying and gaming discussion..
Post Reply
Message
Author
dr_st
Moderator
Moderator
Posts: 7641
Joined: Sat Oct 29, 2005 6:20 am
Location: Israel

Flush-mount Laptop Adapters Part 5: USB 3.0 Revisited

#1 Post by dr_st » Thu Jul 31, 2014 2:09 pm

This thread is a multi-part review.

Part 1 (CardBus-USB2) can be found here.
Part 2 (ExpressCard-USB3) can be found here. You may want to read this one for some background, as the current thread is a direct continuation of that review.
Part 3 (SD/SDHC/SDXC) can be found here.
Part 4 (CompactFlash) can be found here.

In this section I get around to running some of the tests that I did not manage to include in the earlier review dealing with ExpressCard to USB3.0 adapters. Although no new adapters are covered that were not part of the previous roundup, I managed to obtain a few comparative results from onboard USB3.0 controllers from NEC/Renesas and Intel. More interesting results are brought up by comparing performance in Windows 7 versus Windows 8/8.1.

New Players - Onboard USB 3.0 Controllers

The following onboard controllers were added to the roundup:
  • NEC/Renesas uPD720200 – formerly tested in the Vantec Superspeed USB3 ExpressCard – is also the controller used on high-end Sandy Bridge Thinkpads (X220, T420s, W520 series). At that time, USB3.0 was already becoming mainstream, and there was demand for it, but it was still not part of the Intel chipset, so vendors would include third-party controllers on their motherboards, among which the NEC/Renesas was very popular. One such model is the X220 4291-4BG in my possession, which contributed to this roundup.
  • Intel HM76 (Panther Point series) integrated USB3.0 controller – The Panther Point series were the first Intel chipsets to integrate USB3.0. They were shipped with some late Sandy Bridge processors (early ones had the Cougar Point series chipset, without USB 3.0), but more often with the Ivy Bridge generation (Core i3/i5/i7-3XXX models). In this case, the laptop in question was the Lenovo G500s with i3-3110M CPU.
Because it is known that USB performance may be noticeably affected by the CPU speed, I wanted to compare the onboard controllers to the ExpressCard adapters on the same machine. This, unfortunately was not possible in the case of the G500s, since it has no ExpressCard slot. However, it was possible with the X220.

The G500s in this review was running Windows 8 (x64), so that’s the OS that was used. My X220 has a dual-boot of Windows 7 and 8.1 (both 64-bit), so I was able to compare performance of the two operating systems.

The Sandisk Extreme USB3 64GB from previous reviews was again used in all tests.

Windows 7 vs Windows 8.1

The three different ExpressCard controllers were compared in the X220, to the onboard USB 2.0 (Intel) and USB 3.0 (NEC) chips.

Code: Select all

Controller               Win7, Read    Win8.1, Read    Win7, Write    Win8.1, Write    Diff. (R/W)
Intel QM67 (USB2.0)       34.5MB/s        34.5MB/s       30.6MB/s        28.7MB/s       0% / -7%
NEC uPD720200 (Onboard)  184.5MB/s       259.2MB/s      102.7MB/s       141.7MB/s       40% / 38%
Renesas uPD720202        187.0MB/s       257.7MB/s      168.1MB/s       187.6MB/s       38% / 12%
Fresco Logic FL1000      139.7MB/s       140.5MB/s      101.0MB/s        92.4MB/s        1% / -9%
ASMedia ASM1042          186.2MB/s       251.9MB/s      148.8MB/s       187.1MB/s       35% / 26%
The most noticeable thing in this comparison is the huge performance boosts in Win8 compared to Win7 exhibited by three of the controllers (NEC, Renesas and ASMedia). However, the Fresco Logic is unaffected, and if anything, even suffers a bit. A quick reseach reveals the reason for this discrepancy: all the affected controllers use Microsoft’s new USB 3.0 (xHCI) driver for Windows 8, but the FL1000, for whatever reason, does not work with the Microsoft driver, and has to use the vendor-provided driver.

A deeper inspection shows that the Fresco Logic USB controllers were specifically excluded out of the Microsoft driver. This is evident by looking at the %Windows%\Inf\USBXHCI.INF file. The reasons for this decision are unknown to me at this point. Perhaps the Fresco Logic controllers were not 100% compilant to some standard, but that is just a guess.

In any case, it appears that Microsoft’s native drivers offer a noticeable performance boost over manufacturer’s drivers. There are no native Microsoft USB 3.0 drivers before Windows 8, thus this level of performance is not reached under Windows 7.

To verify that the driver is indeed the culprit, I temporarily installed the driver from NEC over the Microsoft one for the uPD720200. Surely enough, the numbers shown were similar to those of Windows 7.

It has been suggested that the performance boost exhibited by the Microsoft driver is not “real”, and is in fact caused by caching. It does seem strange and suspicious that the reported read speed exceeds the manufacturer’s (Sandisk) Own specification for this drive (which is 190 MB/s). I am not certain how to fully check this claim. However, the speeds were consistent, even for files of 4000 MB (the maximum size CrystalDiskMark supports), and I would assume that if caching effects are present, at least some differences would be observed as a function of the file size.

Also we see that the uPD720200 keeps up with the newer uPD720202 in read speeds, but gets trounced in the write speed (which is somewhat consistent with Renesas’s claims).

Finally, The USB 2.0 controller performance is not affected by the operating system (all USB 2.0 controllers have already been using Microsoft’s built-in drivers as early as Windows XP, and perhaps before that).

The natural question is – can the Windows 8 driver be backported to Windows 7? I believe it may eventually be done, but it is not straightforward. When I tried, by pointing Windows 7 to the appropriate .INF and .SYS files, it complained about the driver being unsigned (the signature is probably only valid for the OS it was created for). 64-bit Windows refuses to load unsigned drivers, unless explicitly told so at every boot. However, even after I disabled the driver signature enforcement for the testing purposes, Windows 7 complained that the driver was corrupt in some way and still did not load it. And of course, even if loaded, it is unclear whether the driver would work normally, as it may rely on some kernel APIs that are not available in Windows versions prior to NT 6.2 (Win8).

So for now, the fact seems to be that Windows 8 offers noticeable performance boost to sequential read/write speed of USB 3.0 storage devices. Random read speeds seem mostly unaffected (the numbers are not brought here, as no statistically significant differences were spotted).

Onboard controllers vs ExpressCard

This review is the first time I was able to test a USB 3.0 controller from Intel, integrated in the HM76 chipset, inside the Lenovo G500s laptop. The results indicate it to be on par with the fastest controllers – it surpasses all the others in read speed, and loses just a bit to the uPD720202 and ASM1042 in the write speed. In both cases the differences are marginal.

Code: Select all

USB 3.0 Controller      Interface        OS              Read        Write
Intel HM76            Chipset – G500s  Win 8         262.7 MB/s   183.3 MB/s
NEC uPD720200         Onboard – X220   Win 8.1 Pro   259.2 MB/s   141.7 MB/s
Renesas uPD720202    Expresscard 54mm  Win 8.1 Pro   257.7 MB/s   187.6 MB/s
Fresco Logic FL1000  Expresscard 34mm  Win 8.1 Pro   140.5 MB/s   92.4 MB/s
ASMedia ASM1042      Expresscard 34mm  Win 8.1 Pro   251.9 MB/s   187.1 MB/s
For many years Intel’s USB 2.0 controllers have been ahead of the pack in performance, and in USB 3.0 it does not appear to be the case, at least not yet. Of course, we are talking about the first integrated USB 3.0 from Intel, so situation may improve for them. Also, the i3-3110M in the G500s is somewhat weaker than the i7-2640M in the X220, so on exactly similar hardware, the difference may have been more pronounced towards the Intel controller. But so far, these are all speculations.

The HM76 has a USB 2.0 controller as well, so for the sake of completion, I also compared the USB 2.0 performance of the HM76 to that of the earlier QM67 chipset. Again, there seems to be no statistically significant difference.

Code: Select all

USB 2.0 Controller      Interface        OS              Read        Write
Intel QM67            Chipset – X220   Win7 Ultimate  34.5 MB/s    30.6 MB/s
Intel HM76            Chipset – G500s  Win8           34.6 MB/s    30.9 MB/s
Normal vs Safe Mode

All the aforementioned benchmarks have been obtained with Windows running in safe mode. In this mode, Windows loads only the basic, generic modules, which reduces the software-induced variance between systems and shows the maximum theoretical performance. Experiments have shown the USB performance to be somewhat lower in actual, normal mode work environments. Now let’s see some numbers.

Windows 7:

Code: Select all

Controller            Read, Normal   Write, Normal   Read, Safe   Write, Safe   Diff. (R/W)
Intel QM67 (USB 2.0)    31.6 MB/s      23.0 MB/s      34.5 MB/s     30.6 MB/s    +9% / +33%
NEC uPD720200          181.3 MB/s     114.1 MB/s     184.5 MB/s     102.7 MB/s   +2% / -10%
Renesas uPD720202      183.4 MB/s     142.2 MB/s     187.0 MB/s     168.1 MB/s   +2% / +18%
Fresco Logic FL1000    141.6 MB/s      98.3 MB/s     139.7 MB/s     101.0 MB/s   -1% /+3%
ASMedia ASM1042        182.4 MB/s     148.7 MB/s     186.2 MB/s     148.8 MB/s   +2% / 0%
Windows 8:

Code: Select all

Controller            Read, Normal   Write, Normal   Read, Safe   Write, Safe   Diff. (R/W)
Intel QM67 (USB 2.0)     30.9MB/s       24.6MB/s       34.5MB/s       28.7MB/s  +12% / +17%
Intel HM76              253.0MB/s      164.2MB/s      262.7MB/s      183.3MB/s   +4% / +12%
NEC uPD720200           236.2MB/s      128.6MB/s      259.2MB/s      141.7MB/s  +10% / +10%
Renesas uPD720202       244.6MB/s      176.4MB/s      257.7MB/s      187.6MB/s   +5% / +6%
Fresco Logic FL1000     106.9MB/s       78.3MB/s      140.5MB/s       92.4MB/s  +31% / +18%
ASMedia ASM1042         224.5MB/s      154.9MB/s      251.9MB/s      187.1MB/s  +12% / +21%
We see, that generally, there is a performance loss in normal mode versus the safe mode, and that it is more pronounced in Windows 8. In most cases, it is not big, but every once in a while differences of over 20% can be exhibited. There were also cases of performance drops, but these are likely flukes.

Naturally, in real usage, you are not going to run Windows in safe mode. So, it may be academically interesting to try to figure out which settings may be responsible for the USB performance drop, and try to eliminate them. However, this is a different investigation, and one I don’t care to perform at this point.

Conclusions
  • The Microsoft USB 3.0 (xHCI) generic driver, introduced in Windows 8, offers tangible performance improvements in sequential throughput of USB storage. Random access throughput is unaffected, though. If you routinely transfer large files between internal storage and external USB-attached devices, upgrading to Windows 8/8.1 is something to consider.
  • The first generation of Intel USB 3.0 controllers keeps up well with the pack, and may even be slightly better, but not noticeably so. Definitely not a serious incentive to upgrade, if you still have a Cougar Point (or older) system, with a third-party USB 3.0 controller.
  • One exception to the above may be the popular NEC/Renesas uPD720200, which is often used as a third-party controller in many Cougar Point systems. Its read performance is great, but write performance is lacking compared to Intel or newer chips from Renesas or ASMedia. The latter can always be added via ExpressCard modules, likes the ones surveyed here, but these come with their own potential problems (some of which were discussed in the earlier review).
Thinkpad 25 (20K7), X1 Carbon (20HQ), Yoga 14 (20FY), T430s (IPS FHD + Classic Keyboard), X220 4291-4BG, X61 7673-V2V
T60 2007-QPG, T42 2373-F7G, X32 (IPS Screen), A31p w/ Ultrabay Numpad, A21m 2628-GXU

dr_st
Moderator
Moderator
Posts: 7641
Joined: Sat Oct 29, 2005 6:20 am
Location: Israel

Re: Flush-mount Laptop Adapters Part 5: USB 3.0 Revisited

#2 Post by dr_st » Fri Aug 22, 2014 2:21 am

Small update:

One other thing I did not consider during the review - boot capabilities. The X220 can boot from the USB3 port attached to the uPD720200. But it cannot boot via anything ExpressCard (I have yet to see a laptop that could, though they might exist). So that's one more advantage to an X220-i7 with a native USB3 port. Normally it is not a big deal, since you can always boot from a USB2 port, and for the occasional OS installation it's good enough. Only if you want to use fast external USB storage for booting you may feel the advantage of USB3 boot capabilities, but it is something to consider.
Thinkpad 25 (20K7), X1 Carbon (20HQ), Yoga 14 (20FY), T430s (IPS FHD + Classic Keyboard), X220 4291-4BG, X61 7673-V2V
T60 2007-QPG, T42 2373-F7G, X32 (IPS Screen), A31p w/ Ultrabay Numpad, A21m 2628-GXU

Post Reply
  • Similar Topics
    Replies
    Views
    Last post

Return to “Thinkpad - General HARDWARE/SOFTWARE questions”

Who is online

Users browsing this forum: No registered users and 5 guests