Q&A: How Fast are 2X Floppy Drives in Reality?

This post comes about because of a question from Matson on a very early post of mine about USB Floppy Drives. He wants to know how fast 2x drives are in reality, as there are no hard numbers floating about. He also devised a quick methodology using dd in direct access mode and using the times to determine the actual transfer rate.

Of course, being the person that I am, I was willing to oblige. I knew already from listening to the drive that the disk was being spun at twice the speed, so realistically, the speed should be better than a regular drive. How much better would depend on how well it handled the track-to-track transition – namely whether the controller could handle the incoming sectors in time with the given sector skew of a regular IBM pre-formatted Verbatim DatalifePlus Teflon coated floppy, or whether it would miss and result in needing to wait for another rotation.

The benchmark figure is “about 48 seconds in a typical drive, or 50 seconds with a couple of sector retries”.

Results

The unbranded 2x marked drive was identified as a Mitsumi Smartdisk FDD in lsusb. It was allocated the device node of /dev/sda according to lsscsi.

ID 03ee:6901 Mitsumi SmartDisk FDD
[0:0:0:0]    disk    MITSUMI  USB FDD          1050  /dev/sda

Testing involved first writing a set of random data to the disk sectors just to see the write performance, and then reading that back five times to get an idea of the read performance. A slight difference in times is seen because the drive aggressively spins-down in-between read runs, so some runs will include spin-up time.

# dd bs=1440k count=1 oflag=direct if=/dev/urandom of=/dev/sda
1+0 records in
1+0 records out
1474560 bytes (1.5 MB) copied, 27.1713 s, 54.3 kB/s

# dd bs=1440k count=1 iflag=direct if=/dev/sda of=/dev/null
1+0 records in
1+0 records out
1474560 bytes (1.5 MB) copied, 26.4648 s, 55.7 kB/s
# dd bs=1440k count=1 iflag=direct if=/dev/sda of=/dev/null
1+0 records in
1+0 records out
1474560 bytes (1.5 MB) copied, 26.7886 s, 55.0 kB/s
# dd bs=1440k count=1 iflag=direct if=/dev/sda of=/dev/null
1+0 records in
1+0 records out
1474560 bytes (1.5 MB) copied, 26.084 s, 56.5 kB/s
# dd bs=1440k count=1 iflag=direct if=/dev/sda of=/dev/null
1+0 records in
1+0 records out
1474560 bytes (1.5 MB) copied, 25.9554 s, 56.8 kB/s
# dd bs=1440k count=1 iflag=direct if=/dev/sda of=/dev/null
1+0 records in
1+0 records out
1474560 bytes (1.5 MB) copied, 26.0202 s, 56.7 kB/s

In all, transfer times generally were around 26 seconds, or close to 2x but not quite. Close enough for it not to really matter. Compared to Matson’s supplied 48 second benchmark, this drive is a 1.846x drive.

The other USB floppy drive I have is a HP branded TEAC FD-05PUB.

ID 0644:0000 TEAC Corp. Floppy
[1:0:0:0]    disk    TEAC     FD-05PUB         3000  /dev/sda

The same tests was run, with the write taking longer than the reads seemingly because readback seemed to work well with the sector skew resulting in some sequences of tracks being read quickly with no lost rotations. Maybe the controller is more advanced than the hardware controllers in regular IBM PCs so it was able to crank out a better time.

# dd bs=1440k count=1 oflag=direct if=/dev/urandom of=/dev/sda
1+0 records in
1+0 records out
1474560 bytes (1.5 MB) copied, 52.2297 s, 28.2 kB/s

# dd bs=1440k count=1 iflag=direct if=/dev/sda of=/dev/null
1+0 records in
1+0 records out
1474560 bytes (1.5 MB) copied, 45.5415 s, 32.4 kB/s
# dd bs=1440k count=1 iflag=direct if=/dev/sda of=/dev/null
1+0 records in
1+0 records out
1474560 bytes (1.5 MB) copied, 44.8374 s, 32.9 kB/s
# dd bs=1440k count=1 iflag=direct if=/dev/sda of=/dev/null
1+0 records in
1+0 records out
1474560 bytes (1.5 MB) copied, 45.5737 s, 32.4 kB/s
# dd bs=1440k count=1 iflag=direct if=/dev/sda of=/dev/null
1+0 records in
1+0 records out
1474560 bytes (1.5 MB) copied, 45.1254 s, 32.7 kB/s
# dd bs=1440k count=1 iflag=direct if=/dev/sda of=/dev/null
1+0 records in
1+0 records out
1474560 bytes (1.5 MB) copied, 44.9337 s, 32.8 kB/s

Compared to Matson’s supplied benchmark of 48 to 50 seconds, this drive was able to make it mostly in the 44 to 45 second region making it around 1.079x.

Conclusion

The 2x drive is named as it spins the disk twice as fast. The transfer rate is close to twice as fast, but not quite and this is likely because the readback is more sensitive to errors when being read at higher speeds leading to more likelihood of retries, and possibly because of sector skew and controller timing. The single speed “regular” USB drive actually turned out a number slightly faster than expected, possibly as its controller is more advanced than a regular IBM PC integrated hardware controller and may have some internal memory buffering partially read tracks.

At least we now have an answer to this seemingly interesting question.

About lui_gough

I'm a bit of a nut for electronics, computing, photography, radio, satellite and other technical hobbies. Click for more about me!
This entry was posted in Computing and tagged , , , . Bookmark the permalink.

One Response to Q&A: How Fast are 2X Floppy Drives in Reality?

  1. matson says:

    So ‘2×’ is not just a marketing lie, but a meaningful number. This is good to know! LS-120 drives are said to be faster with HD diskettes (at least 49 ko/s read) than plain HD floppy drives, but the USB LS-120 models were not bus-powered.

Error: Comment is Missing!