USB 2.0 HD transfer rate

I am using a Maxtor 300GB USB 2.0 drive on an x86 QNX 6.3 system. I
followed the QNX help screens and have managed to get a file system on the
drive and have done some write throughput tests. The results of these
tests are somewhat disappointing (about 3 MB/sec). I am using the ehci
version of the usb driver. The usb printout shows the controller is high
speed and the drive is usb 2.0. Can I expect any better performance from
firewire (if Mindready ever ‘ports’ their support from 6.2 to 6.3.) ?

Doug Owens

How are you testing performance ?

try running the USB driver using the int_thresh option.

io-usb -dehci pindex=0,int_thresh=1


Doug Owens <owens2@llnl.gov> wrote in message
news:cn05kc$3p8$1@inn.qnx.com

I am using a Maxtor 300GB USB 2.0 drive on an x86 QNX 6.3 system. I
followed the QNX help screens and have managed to get a file system on the
drive and have done some write throughput tests. The results of these
tests are somewhat disappointing (about 3 MB/sec). I am using the ehci
version of the usb driver. The usb printout shows the controller is high
speed and the drive is usb 2.0. Can I expect any better performance from
firewire (if Mindready ever ‘ports’ their support from 6.2 to 6.3.) ?

Doug Owens

Thanks, I’ll try that. I’m writing large (33 MB) data sets from a shared
memory buffer and watching the disk activity light and/or waiting for
fsync to complete, since QNX defaults to returning as soon as the data is
buffered.

Doug Owens


Henry VanDyke wrote:

How are you testing performance ?

try running the USB driver using the int_thresh option.

io-usb -dehci pindex=0,int_thresh=1



Doug Owens <> owens2@llnl.gov> > wrote in message
news:cn05kc$3p8$> 1@inn.qnx.com> …
I am using a Maxtor 300GB USB 2.0 drive on an x86 QNX 6.3 system. I
followed the QNX help screens and have managed to get a file system on the
drive and have done some write throughput tests. The results of these
tests are somewhat disappointing (about 3 MB/sec). I am using the ehci
version of the usb driver. The usb printout shows the controller is high
speed and the drive is usb 2.0. Can I expect any better performance from
firewire (if Mindready ever ‘ports’ their support from 6.2 to 6.3.) ?

Doug Owens

Looks quite a bit faster - maybe 10 MB/sec or so. What does int_thresh
do, exactly?

Doug Owens

Doug Owens wrote:

Thanks, I’ll try that. I’m writing large (33 MB) data sets from a shared
memory buffer and watching the disk activity light and/or waiting for
fsync to complete, since QNX defaults to returning as soon as the data is
buffered.

Doug Owens



Henry VanDyke wrote:

How are you testing performance ?

try running the USB driver using the int_thresh option.

io-usb -dehci pindex=0,int_thresh=1



Doug Owens <> owens2@llnl.gov> > wrote in message
news:cn05kc$3p8$> 1@inn.qnx.com> …
I am using a Maxtor 300GB USB 2.0 drive on an x86 QNX 6.3 system. I
followed the QNX help screens and have managed to get a file system on
the
drive and have done some write throughput tests. The results of these
tests are somewhat disappointing (about 3 MB/sec). I am using the ehci
version of the usb driver. The usb printout shows the controller is high
speed and the drive is usb 2.0. Can I expect any better performance from
firewire (if Mindready ever ‘ports’ their support from 6.2 to 6.3.) ?

Doug Owens

This sets the interrupt threshold for the EHCI chip.
The default is 8 which is 1ms interrupt rate. The chip will interrupt
after a 1 ms period (USB frame ) if there are completed transactions.
Setting
it to 1 lets the chip interrupt after 125us(USB microframe) if there
are completed transactions.


Doug Owens <owens2@llnl.gov> wrote in message
news:cn3ctp$jif$1@inn.qnx.com

Looks quite a bit faster - maybe 10 MB/sec or so. What does int_thresh
do, exactly?

Doug Owens

Doug Owens wrote:

Thanks, I’ll try that. I’m writing large (33 MB) data sets from a
shared
memory buffer and watching the disk activity light and/or waiting for
fsync to complete, since QNX defaults to returning as soon as the data
is
buffered.

Doug Owens


Henry VanDyke wrote:

How are you testing performance ?

try running the USB driver using the int_thresh option.

io-usb -dehci pindex=0,int_thresh=1


Doug Owens <> owens2@llnl.gov> > wrote in message
news:cn05kc$3p8$> 1@inn.qnx.com> …
I am using a Maxtor 300GB USB 2.0 drive on an x86 QNX 6.3 system. I
followed the QNX help screens and have managed to get a file system
on
the
drive and have done some write throughput tests. The results of
these
tests are somewhat disappointing (about 3 MB/sec). I am using the
ehci
version of the usb driver. The usb printout shows the controller is
high
speed and the drive is usb 2.0. Can I expect any better performance
from
firewire (if Mindready ever ‘ports’ their support from 6.2 to 6.3.)
?

Doug Owens










\

Henry VanDyke wrote:

This sets the interrupt threshold for the EHCI chip.
The default is 8 which is 1ms interrupt rate. The chip will interrupt
after a 1 ms period (USB frame ) if there are completed transactions.
Setting
it to 1 lets the chip interrupt after 125us(USB microframe) if there
are completed transactions.


Doug Owens <> owens2@llnl.gov> > wrote in message
news:cn3ctp$jif$> 1@inn.qnx.com> …

Looks quite a bit faster - maybe 10 MB/sec or so. What does int_thresh
do, exactly?

Evan Hillas <blarg@blarg.blarg> wrote:

Henry VanDyke wrote:
This sets the interrupt threshold for the EHCI chip.
The default is 8 which is 1ms interrupt rate. The chip will interrupt
after a 1 ms period (USB frame ) if there are completed transactions.
Setting
it to 1 lets the chip interrupt after 125us(USB microframe) if there
are completed transactions.

Elizabeth has added this to the docs. She was amused to see that all
doc requests go to me. Thanks for the suggestion.


Steve Reid stever@qnx.com
TechPubs (Technical Publications)
QNX Software Systems

Steve Reid <stever@sreid.ott.qnx.com> wrote:

Evan Hillas <> blarg@blarg.blarg> > wrote:
Henry VanDyke wrote:
This sets the interrupt threshold for the EHCI chip.
The default is 8 which is 1ms interrupt rate. The chip will interrupt
after a 1 ms period (USB frame ) if there are completed transactions.
Setting
it to 1 lets the chip interrupt after 125us(USB microframe) if there
are completed transactions.

Elizabeth has added this to the docs. She was amused to see that all
doc requests go to me. Thanks for the suggestion.

That’s cause you’re the one who posts in the newsgroups saying,
“I’ll add that to the docs.”

-David

David Gibbs
QNX Training Services
dagibbs@qnx.com

David Gibbs <dagibbs@qnx.com> wrote:

That’s cause you’re the one who posts in the newsgroups saying,
“I’ll add that to the docs.”

“Le documentation, c’est moi.” :slight_smile:


Steve Reid stever@qnx.com
TechPubs (Technical Publications)
QNX Software Systems