VirtualBox

Ticket #464 (closed defect: fixed)

Opened 7 years ago

Last modified 5 years ago

USB extremely slow

Reported by: Ben Owned by:
Priority: major Component: other
Version: VirtualBox 1.4.0 Keywords:
Cc: Guest type: other
Host type: other

Description

Scanning a TomTom device attached via USB on the physical host takes 10 seconds. In the VM, it takes 2-3 minutes.

Attachments

VBox.log Download (35.6 KB) - added by Barpfotenbaer 5 years ago.

Change History

comment:1 Changed 7 years ago by ghr

USB comes in three flavours: USB 1.0: 1.5 Mbit/s (low speed); USB 1.1: 12 Mbit/s (full speed); USB 2.0: 480 Mbit/s (high speed)... Looks like you expect 2.0 and get 1.1. What's the rate VirtualBox offers ? Could not find any limitation in the manual so you might be right in expecting 2.0 performance...

comment:2 Changed 7 years ago by Ben

Well, I "expect" 70-90% of native performance.

What I get is 5 seconds native, 30 seconds in VirtualBox with one device. 10 seconds native, 60 seconds in VirtualBox with another. So 6-10 times(!) slower in VirtualBox.

Linux host OS "lsusb" reports bcdUSB 2.00 bcdDevice 1.00 for both. I can only guess that the ports are USB 2.0 and devices are only USB 1.0? Windows guest has "OpenHCD" (OHCD) USB controller, which I think means USB 1.0 controller?

comment:3 Changed 7 years ago by ghr

FAIK:There are three standards compliant controllers in PC's. In Windows, Go to ControlPanel - System and (look under Hardware or DeviceManager to) examine the listed devices under Universal Serial Bus Controllers to determine the type of USB ports detected: USB 1.x UHCI (Universal Host Controller Interface) Intel, VIA USB 1.x OHCI (Open Host Controller Interface) Compaq, Microsoft and National Semiconductor USB 2.x EHCI (Enhanced Host Controller Interface)

USB 1.x is the initial standard. USB Support started in Windows95B and onwards. USB 1.1 supports a theoretical maximum transfer rate of up to 12 Mbps. USB 2.0 is the current standard and supports a maximum transfer rate of up to 480 Mbps. This one should be common nowadays but exceptions exist, e.g. on (small) portable devices.

Since 2.0 is a superset of 1.1, some devices are marketed as USB 2.0 compatible but cannot operate at full speeds. Moreover, unlike Ethernet where practical speed can be very close to theoretical speed, USB doesn't quite get there as close.

Guess you can still download USB 2.0 spec and make an educated guess....

comment:4 Changed 6 years ago by sandervl73

  • Status changed from new to closed
  • Resolution set to fixed

Try again with the latest version which supports EHCI (USB 2.0). Reopen if it's still relevant.

Changed 5 years ago by Barpfotenbaer

comment:5 in reply to: ↑ description ; follow-up: ↓ 6 Changed 5 years ago by Barpfotenbaer

  • Status changed from closed to reopened
  • Resolution fixed deleted

Accessing a Canon Scanner CanoScan 9950F with USB-2.0 activated is still very slow. The transfer rate is similar to USB-1.
Disabling virtual USB-2.0 controller results in a faster(!) access, but transfer rate is furthermore very slow.

Date: 2009-01-05
Version: VirtualBox 2.1.0
Host OS: Linux Ubuntu intrepid 8.10
Kernel: 2.6.27-11-generic
Guest OS: Windows XP Home Edition, updated to SP3

Have a look at the attached vbox.log[[BR]]

Extract of dmesg - part 1: connecting scanner

[ 6728.248042] usb 2-6: new high speed USB device using ehci_hcd and address 10
[ 6728.384368] usb 2-6: configuration #1 chosen from 1 choice

Extract of dmesg - part 2: starting Guest OS with VirtualBox

[ 6763.708027] usb 2-6: reset high speed USB device using ehci_hcd and address 10

Extract of USB-Hardware at host (lsusb -v):

Bus 002 Device 008: ID 04a9:2219 Canon, Inc. CanoScan 9950F
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass          255 Vendor Specific Class
  bDeviceSubClass       255 Vendor Specific Subclass
  bDeviceProtocol       255 Vendor Specific Protocol
  bMaxPacketSize0        64
  idVendor           0x04a9 Canon, Inc.
  idProduct          0x2219 CanoScan 9950F
  bcdDevice            3.01
  iManufacturer           1 Canon
  iProduct                2 Scanner
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           39
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xc0
      Self Powered
    MaxPower               10mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           3
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0001  1x 1 bytes
        bInterval               8
Device Qualifier (for other device speed):
  bLength                10
  bDescriptorType         6
  bcdUSB               2.00
  bDeviceClass          255 Vendor Specific Class
  bDeviceSubClass       255 Vendor Specific Subclass
  bDeviceProtocol       255 Vendor Specific Protocol
  bMaxPacketSize0        64
  bNumConfigurations      1
Device Status:     0x0001
  Self Powered

comment:6 in reply to: ↑ 5 Changed 5 years ago by Barpfotenbaer

Sorry, I just opened a new ticket #2973 with a more accurate header. This ticket should be marked "solved" again!

comment:7 Changed 5 years ago by michael

  • Status changed from reopened to closed
  • Resolution set to fixed
Note: See TracTickets for help on using tickets.

www.oracle.com
ContactPrivacy policyTerms of Use