Hi,

when checking USB stick benchmarks, I came across
some interesting facts...

- sticks with MLC store up to 3 bits in 1 cell,
  which costs less but is slower (compared to SLC)

- Vista readyboost uses USB sticks as swap space,
  which is useful in particular when things get
  swapped out (in other words: you have not enough
  RAM). Sticks have slow transfer but no seek delay.

- unfortunately the delay for write access is much
  longer than for read access in USB sticks...

- As http://preview.tinyurl.com/5tsx4o shows, in
  particular writes get a lot faster if you write
  in blocks of 32 kBy or more

The image linked via tinyurl is from a thread about
an OCZ stick with dual channel controller and MLC
chips. It seems that SSD and high speed USB sticks
with SLC chips generally have way shorter write
delays but dual channel MLC is still nice if you
use larger files such as audio and images :-).

www.ocztechnologyforum.com/forum/showthread.php?t=34372



So... What does that tell us for DOS usage? Well it
explains why my DOS was so ridiculously slow when I
used Windows 3 from a MLC stick a few years ago...

Two possible reasons: 1. the BIOS USB storage driver
only used slow USB 1.1 and not USB 2.0 and 2. because
DOS has no idea what USB stick means, it will often
do single sector writes, for example to update the
FAT or a directory entry. Could mean 20-100 msec of
delay for each write access...!



You can try to load "lbacache flop" and "tickle /lba"
to "inflate" small (below 2 kB) reads to chunks of 4 kB
if they start at a multiple of 4 kB. All of those setup
parameters can be changed by recompiling but maximum
chunk size is 8 kB (must fit in the 9 kB floppy buffer).
You can also try "tickle /chs".

Let me know if the lbacache flop tickle lba combination
makes your READS faster and if I can send you tickle
versions with other settings for comparison, thanks :-).



Of course what you really want is a cache with pooled
WRITES to make sure that larger blocks are written and
less write delay happens. As far as I can tell, UIDE
does not support that yet, but DR DOS NWCACHE does :-).

Note that NWCACHE calls pooled buffered and supports it
only for DOS-removable drives like diskettes, using the
lookahead buffer? You can still use the NWCACHE delayed
write feature on all disks, though.

Try the options: 16 kB low RAM lookahead 1/3 sec 64 kB delayed:
nwcache 6144 6144 /lend=off /bl=16 /delay=333 /w=64 /flush=off

Thanks for trying :-)

Eric

PS: I do not know whether NWCACHE caches LBA. If it has
no effect on your stick, try using SYS CONFIG to force
the kernel to use CHS.  Be WARNED that you can only use
the first 8 GB of all disks / sticks after disabling
LBA in your kernel with SYS CONFIG though!


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user

Reply via email to