Originally posted by: Mem
You obviously don't play online/LAN FPS games. Latency is everything, and most USB input devices have (IMO) horrible latency. The fact that the CPU has to be involved at all in polling an input device is a Bad Thing. I want my frames and I want them yesterday!
I`ve to disagree with you here,USB mouse is classed as a " low speed USB device" let alone full speed USB 1.1(which is 12Mbps) or even USB 2.0(480Mbps) ,as to CPU resources it`s very low,few facts about USB below.
Yes, I know that. I was suggesting that perhap they should make mice that support USB 2.0 instead.
My Via KT400/8235 chips, running USB 1.1-mode controllers, uses PIO mode to poll USB devices, but I think that the USB 2.0 EHCI interface support is DMA-driven. Perhaps this is more a direct limitation of my chipset, but I don't think that I am alone in this. Many systems with non-Intel chipsets have CPU-driven USB. In fact, in comparisons between external USB 2.0 and Firewire400 HDs, the USB ones showed significantly higher CPU usage. That exemplifies what I am talking about, that USB devices tend to be "CPU-heavy", relative to the alternatives.
Originally posted by: Mem
Do note USB mice and keyboards only need around 1.5Mbits/s to function,info on the newer standard( USB 2.0 )
here..
Btw I play online with my mouse and keyboard(USB) and latency is not a problem, only thing I look for online is low ping servers.
But have you ever tried a non-USB (PS/2 port) mouse instead? With the PS/2 port rate clocked up to 100 or 200Hz?
In WinXP, I get a noticable "lag" with my USB mouse, I can be rapidly moving it back and forth at the desktop, with no major CPU-hog programs running, and the mouse lags behind when I stop and move it back in the other direction by a few frames. It's not "instant", like it is with my PS/2 mouse.
The problem isn't so bad in W2K, which is why I prefer to play games in W2K rather than XP, I suspect it is because the system mouse and keyboard are always "emulated" devices under DirectX in XP, rather than directly talking to the device drivers (HAL vs HEL in DirectX-speak) like in W2K.
But in either case, at times of extreme CPU load, or heavy interrupt load, the USB mouse lags and loses movement info, and the PS/2 one doesn't. I attribute this to the fact that the USB ports share IRQs with other things (disk controller), and the USB bus itself shares bandwidth too, among the devices, whereas the PS/2 port has a dedicated, non-shared IRQ, and a seperate microcontroller to process the serial data packets coming off of the wire. Plus, those packets are smaller than in USB (as per your reference, sorry I deleted that part of the quote), so they have slightly less latency/CPU-load as well to read, although that difference is so miniscule it really shouldn't make a difference.