Opened 17 years ago
Closed 16 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)
Change History (8)
comment:1 by , 17 years ago
comment:2 by , 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 , 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 , 17 years ago
| Resolution: | → fixed |
|---|---|
| Status: | new → closed |
Try again with the latest version which supports EHCI (USB 2.0). Reopen if it's still relevant.
by , 16 years ago
follow-up: 6 comment:5 by , 16 years ago
| Resolution: | fixed |
|---|---|
| Status: | closed → reopened |
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 by , 16 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 , 16 years ago
| Resolution: | → fixed |
|---|---|
| Status: | reopened → closed |


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...