VirtualBox

Opened 17 years ago

Closed 15 years ago

#464 closed defect (fixed)

USB extremely slow

Reported by: Ben Owned by:
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 (1)

VBox.log (35.6 KB ) - added by Klaus Wendel 15 years ago.

Download all attachments as: .zip

Change History (8)

comment:1 by ghr, 17 years ago

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 by Ben, 17 years ago

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 by ghr, 17 years ago

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 by Sander van Leeuwen, 16 years ago

Resolution: fixed
Status: newclosed

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

by Klaus Wendel, 15 years ago

Attachment: VBox.log added

in reply to:  description ; comment:5 by Klaus Wendel, 15 years ago

Resolution: fixed
Status: closedreopened

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

in reply to:  5 comment:6 by Klaus Wendel, 15 years ago

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

comment:7 by Michael Thayer, 15 years ago

Resolution: fixed
Status: reopenedclosed
Note: See TracTickets for help on using tickets.

© 2023 Oracle
ContactPrivacy policyTerms of Use