John Garvey <jgarvey@qnx.com> writes:
does anyone know how to improve the flash disk write times under QNX6
on a FlashDisk IDE Drive?
You could try passing the options “lock,noatime” when you mount it
(this will stop it trying to periodically re-verify the removable
media but you’ll have to umount it yourself if you change it, and
won’t try and write back access times for file reading). If you
will be writing many large files you could also try “overalloc”.
Faking the medias as locked/non-removable will also allow a more
aggressive bitmap caching strategy (“rmvbmap” otherwise) and more
relaxed delayed writing (“blk rmvto=”). All these options are
described in the usage message of the relevant *.so libraries.
It is no removable media, though. So I don’t think this helps much…
Under QNX4, I get write times close to the max write speed of the
drive; it copies 10MB on the drive in about 14secs. Under QNX6, on the
same hardware, the same tasks uses about 90 Seconds (!!!)
I’ve never seen writes to a flash device that fast (despite some
claims of around 1MB/sec I typically see half that - SanDisk quote
that DRQ may take 20ms to be asserted in the case of write with no
block reassignments, which is only 25KB/sec worst-case, or if
WRITE_MULTIPLE is supported for 16 blocks, then 400KB/sec), so I suspect
that your QNX4 data is still cached … did you use O_SYNC? That
said, although 14 secs seems “too fast”, 90 secs does seem “too slow”;
the math above would calculate 26 seconds to perform physical access.
Okay, your point. I indeed forgot the O_SYNC. So I get the same times
(90secs) under QNX4. Since it is a SiliconTech Disk (2.5" FlashDisk,
96Mb), is this a slow one?
If you invoke the devb-eide driver in verbose mode (“eide verbose=4”)
what does it claim to be using for transfer mode / max blocks / etc?
Transfer mode is PIO1 (urghs), is autodetected in BIOS. Even if I
change this to DMA1, devb-eide uses PIO1 (dma option is on).
Other parameters are
low 56320 / high 2 (what’s this?)
Multimode Blocks/Interrupt 1
The geometrical parameters are okay…
Thanks for the help, Sven
–
Sven Fischer – DEUTA-Werke GmbH, Abteilung EIT
Dipl.-Phys. Paffrather Str. 140, 51465 Bergisch Gladbach, Germany
Tel.: +49-(0)2202-958-216 Fax.: +49-(0)2202-958-145
Please note the disclaimer: http://www.deutaeit.de/disclaimer.html