VOGONS


First post, by feipoa

User metadata
Rank l33t++
Rank
l33t++

I decided to benchmark the SCSI disk performance of my 386 system using an SD card, a CF card, and a hard disk drive. The test system is a 486SXL-40 on an AMI Mark V Baby Screamer motherboard. The SCSI host controller is an Adaptec 1540CP with a 10 MB/s limit. The SD card is a 16 GB SanDisk Extreme 90 MB/s class 10; the CF Card is 16 GB Voigon (brand) rated for 200x; the hard disk drive is a 2 GB Seagate ST32171N. The SD card is connected to a SCSI2SD v6 device; the CF card is connected to an IDE-to-CF interface, which is connected to an ACARD 7720U IDE-to-SCSI bridge adapter. Each drive is setup to 2 GB using FAT16 and is running MS-DOS 6 / Win 3.11. The benchmark program is Ziff-Davis Winbench 96.

According to the Disk WinMark score, the SD card performs 25% better than the Seagate hard disk drive, while the CF card performs 16% better than the Seagate HDD. The most glaring speed differnece from the chart is with how much faster the SD and CF cards are at random reads, both small (200 bytes) and large (4096 bytes) block sizes. When it came to random writes, the SD card stepped out ahead of the CF card, particularly for large (4 KB) block sizes. Apparently, a class 10 SD card is needed for these faster writes. For sequential reads and write, the HDD, CF, and SD cards were all very similar in performance, with the HDD taking a minute lead.

Performing the benchmark on a faster system might increase speed differences. Also, using different speed SD and CF cards may have some impact. According to Sandisk, the SanDisk Extreme SD card is rated for 90 MB/s, while the 200x CF card is rated for 30 MB/s. The SCSI host controller is limited to 10 MB/s, as is the SCSI2SD adapter. The ACARD 7720U is limited to 20 MB/s.

It would be nice to also have results for version 5.x of SCSI2SD to compare, as well as using faster/slower SD/CF cards, and a faster computer with faster SCSI host adapter. However, my only system left with a working 50-pin SCSI drive was my 386, so this is the system I decided to test. I bought the SCSI2SD device after experiencing occasional stalls on the old 2 GB Seagate hard drive.

I didn't time the boot-up, but it feels faster with the SCSI2SD device. It is certainly a lot quieter. If you are going to buy one of these units from inertialcomputing, do not buy it with the SD card bundled. This seller claims he ships the unit with class 10 SD cards, but in fact shipped mine with a class 4 SD card. Inertialcomputing said they would send the correct class 10 SD card, but it never arrived and he ceased replying to emails.

A photo of the SCSI2SD v6 can be found here, https://store.inertialcomputing.com/SCSI2SD-v … 2sd-v6-revf.htm
A photo of the ACARD 7720U can be found here, http://pinharddrive.com/2018/11/21/acard-aec- … dddvdcd-50-pin/

SCSI_SD_CF_HDD_comparison_chart.png
Filename
SCSI_SD_CF_HDD_comparison_chart.png
File size
9.7 KiB
Views
4427 views
File license
Fair use/fair dealing exception

Anyone with a SCSI2SD v5.x and v6 feel like benchmarking them against each other?

The raw data is shown below.

SD card
Disk WinMark 96 = 711

Disk/Read, Random, 200 bytes = 61.8 thousands of bytes/sec
Disk/Read, Random, 512 bytes = 161
Disk/Read, Random, 2048 bytes = 591
Disk/Read, Random, 4096 bytes = 1060

Disk/Read, Sequential, 200 bytes = 389
Disk/Read, Sequential, 512 bytes = 787
Disk/Read, Sequential, 2048 bytes = 1210
Disk/Read, Sequential, 4096 bytes = 1130

Disk/Write, Random, 200 bytes = 32.7
Disk/Write, Random, 512 bytes = 185
Disk/Write, Random, 2048 bytes = 790
Disk/Write, Random, 4096 bytes = 1350

Disk/Write, Sequential, 200 bytes = 273
Disk/Write, Sequential, 512 bytes = 757
Disk/Write, Sequential, 2048 bytes = 1630
Disk/Write, Sequential, 4096 bytes = 2010

CF card
Disk WinMark 96 = 662

Disk/Read, Random, 200 bytes = 54.9 thousands of bytes/sec
Disk/Read, Random, 512 bytes = 143
Disk/Read, Random, 2048 bytes = 530
Disk/Read, Random, 4096 bytes = 971

Disk/Read, Sequential, 200 bytes = 388
Disk/Read, Sequential, 512 bytes = 764
Disk/Read, Sequential, 2048 bytes = 1040
Disk/Read, Sequential, 4096 bytes = 979

Disk/Write, Random, 200 bytes = 13.7
Disk/Write, Random, 512 bytes = 97.8
Disk/Write, Random, 2048 bytes = 403
Disk/Write, Random, 4096 bytes = 712

Disk/Write, Sequential, 200 bytes = 292
Disk/Write, Sequential, 512 bytes = 758
Disk/Write, Sequential, 2048 bytes = 1640
Disk/Write, Sequential, 4096 bytes = 2000

SCSI HDD - ST32171N
Disk WinMark 96 = 571

Disk/Read, Random, 200 bytes = 21.6 thousands of bytes/sec
Disk/Read, Random, 512 bytes = 57.5
Disk/Read, Random, 2048 bytes = 217
Disk/Read, Random, 4096 bytes = 360

Disk/Read, Sequential, 200 bytes = 385
Disk/Read, Sequential, 512 bytes = 778
Disk/Read, Sequential, 2048 bytes = 1290
Disk/Read, Sequential, 4096 bytes = 1190

Disk/Write, Random, 200 bytes = 12.4
Disk/Write, Random, 512 bytes = 77.9
Disk/Write, Random, 2048 bytes = 362
Disk/Write, Random, 4096 bytes = 755

Disk/Write, Sequential, 200 bytes = 284
Disk/Write, Sequential, 512 bytes = 754
Disk/Write, Sequential, 2048 bytes = 1640
Disk/Write, Sequential, 4096 bytes = 2020

Plan your life wisely, you'll be dead before you know it.

Reply 1 of 64, by retardware

User metadata
Rank Oldbie
Rank
Oldbie

Yesterday I exchanged the slow and noisy SATA WD 740GD attached via Promise Raid controller in my retro 586 DOS/Win98 machine for a quiet and fast Fujitsu MAU3073NC, attached with an ASC-19160 at U160 speed.
The most obvious change is that the 5170 case now does no longer feel like a working kitchen mixer. The Fujitsu drive is so quiet that I cannot even feel it spinning (making me ask myself at first "does it actually work" when I first turned the rig on).

Obviously I am curious about the actual (measurable) performance .
Could you please post links to the downloads for the benchmark programs you use, to make sure that lazy people like me actually download exactly the same versions you used?

Reply 2 of 64, by Deunan

User metadata
Rank Oldbie
Rank
Oldbie
feipoa wrote:

IPerforming the benchmark on a faster system might increase speed differences. Also, using different speed SD and CF cards may have some impact. According to Sandisk, the SanDisk Extreme SD card is rated for 90 MB/s, while the 200x CF card is rated for 30 MB/s. The SCSI host controller is limited to 10 MB/s, as is the SCSI2SD adapter. The ACARD 7720U is limited to 20 MB/s.

While I do have a ver 5 SCSI2SD, it's in FM Towns machine and PITA to remove, plus I don't have any ISA-based SCSI cards anyway. But I wanted to chip in on the SD card speeds since I deal a lot with those.

First, the important thing is what protocol is used to access the SD card. SPI or native SD interface. SPI is limited to 8-bit serial transmission at max. 25MHz. Which gives you a theoretical limit of 3MB/s (usually 2.5 is doable with good code and card). Native interface can be 4-bit so with 25MHz clock it's 4 times faster, up to 12MB/s (usually tops around 10-11) and some SDHC and newer cards can do 50MHz (High Speed). Then there are the UHS modes but rarely any "small" device like SCSI2SD will support those. So in the end if the device can only do SPI mode then there is little point in having cards faster than class 4 or so, you wont see a difference.
And V5 hardware is limited by SPI, by the way: http://www.codesrc.com/mediawiki/index.php/SCSI2SD

Worse yet, modern high-speed SD cards are optimized for stream access and write speeds. That's nice for digital cameras (which have megabytes of RAM to buffer data) and such but the cards often trade random-access latency for that speed. So a "fast" class 10 card can actually be very poor perfomer in a SCSI2SD or similar device due to horrible latency.

And even worse yet, you can't really tell what the latency of the card is until you try it. It's not something the manufacturer will tell you and some cards can be very unpredictable in that regard - for example Transcend Class 10 cards can be fast for some time and then, randomly, will start some Flash housekeeping process in the background and slow down to a crawl (50ms+ access times!). Then it will return to normal operating speeds. Sometimes formatting or re-writing the card can stop that process but it will come back. In fact if it happens when you hook up the card to a PC you will notice the sluggish performance while copying/deleting many small files.

TL;DR: Sometimes SD card type matters more than the device it is in, and unless you need 10MB+ write speeds it's often better (and cheaper!) to stick to Class 4 cards which are more predictable and don't trade latency for speed.

Reply 3 of 64, by feipoa

User metadata
Rank l33t++
Rank
l33t++

Deunan, you have certainly sparked my curiosity. I have a few varieties of SD cards I can test out. Does anyone know of a freeware program for WinXP which will create an image of a SD card (connected through a USB card reader) and write the image to another SD card (on the USB card reader)? I tried using whatever WinImage version I have installed on XP, but it can only create an *.IMA image, not write it, that is, unless it is writing to a floppy drive.

Plan your life wisely, you'll be dead before you know it.

Reply 4 of 64, by Jo22

User metadata
Rank l33t++
Rank
l33t++

Hi, you can try Win32DiskImager. For testing acces speeds on CF cards, I used to use HD Tune.
In either case, I recommend using a modern card reader (USB 3.x) if possible.
They can handle modern SDHC/SDXC cards and give more preicse results in benchmarks (generally speaking).
As a backup device, it also comes in handy to have got some older USB 1.x/2.0 card readers for troublesome flash cards. 😀

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 5 of 64, by krcroft

User metadata
Rank Oldbie
Rank
Oldbie

Deunan,

Indeed, the speed rating on SD cards (C10, U1, U3, V60, V90, etc..) only guarantees sequential large-block throughput with zero regard for random small-block IO performance. For the latter, you want the new 'Application Performance Class' rating, which appears as "A1" and "A2" on cards. The Application Performance spec was added a couple years ago, starting with A1.

img_application.jpg
Filename
img_application.jpg
File size
71.67 KiB
Views
4337 views
File license
Fair use/fair dealing exception

https://www.sdcard.org/developers/overview/ap … tion/index.html

I was previously using a 128GB Samsung EVO U3 and an 128GB SanDisk Extreme U3 (yes, legit cards) in my Raspberry Pi, however random small block write latency could kill performance such as during a long running compilation or extracting an archive with 10s or even 100s of thousands of files into a fragmented partition. When the A1 spec came out, I jumped on it and bought a SanDisk Ultra A1 and started using it in my Pi. OS performance has been excellent since. It behaves like an SSD or HD, without any latency explosions.

For anyone using SD cards as their OS drive (RetroPC, Pi, or SBC), I would only ever consider using an A1 or A2-rated card. Currently, SanDisk is the only vendor making cards capable of sustaining A2-rated small-block IOPS; Samsung doesn't even have an A1 rated card (and aren't allowed to rate them as such). My Samsung cards are collecting dust...

Here's a link to SanDisk's A2-rated Extreme Pro - https://www.amazon.com/dp/B07G3H5RBT/ Yes, you will find many more "Extreme Pros" that cost less, but they won't be A2 rated!

Reply 6 of 64, by infiniteclouds

User metadata
Rank Oldbie
Rank
Oldbie

I've been looking for an SCSI CF solution for a long time now, for my XT -- external to be specific. The SCSI2SDs on Ebay are over $200 -- and I don't even see any SCSI to CF external readers ANYWHERE except for some companies that only sell to military, aviation, semiconductors/telecom.

I really wish there was a vogons project producing some.

Reply 8 of 64, by feipoa

User metadata
Rank l33t++
Rank
l33t++
Jo22 wrote:
Hi, you can try Win32DiskImager. For testing acces speeds on CF cards, I used to use HD Tune. In either case, I recommend using […]
Show full quote

Hi, you can try Win32DiskImager. For testing acces speeds on CF cards, I used to use HD Tune.
In either case, I recommend using a modern card reader (USB 3.x) if possible.
They can handle modern SDHC/SDXC cards and give more preicse results in benchmarks (generally speaking).
As a backup device, it also comes in handy to have got some older USB 1.x/2.0 card readers for troublesome flash cards. 😀

Unfortunately v1.0 of this software doesn't work on XP, but 0.95 works. The issue I'm having with it is that when Win32 Disk Image creates an image of the USB-SD card, it creates a full image of the SD card, meaning, a 16 GB image, even though only 1.5 GB is in use on the SD card. When Norton Ghost, for example, creates an image of HDD's, it doesn't take up space for the unused section of the drive, so the image size would only be 1.5 GB rather than 16 GB. Although I'm not in dire need of the HDD space the image consumes on the drive, I was wanting to test out multiple SD cards, some of which are 2 GB, 4 GB, and 8 GB. Norton Ghost would have no trouble imaging onto these smaller drives, but Win32 Disk Imager cannot do it.

EDIT: So I tried to use Ghost 2003 on my XP system, which as 4 primary partitions. I tried to setup Ghost to use the USB-SD card reader as the source drive and create an image file onto my HDD - well, guess what, Ghost spits out an error saying that there isn't space in the MBR table or something to have effect and won't reboot into PC DOS to do the job. Endless frusturation. I'm trying to avoid taking apart my whole 386 system again to make a simple clone, which would involve me removing the SD card reader, the CF card reader, opening up another system with a PCI SCSI card and making the clone.

Plan your life wisely, you'll be dead before you know it.

Reply 10 of 64, by Deunan

User metadata
Rank Oldbie
Rank
Oldbie
krcroft wrote:

Indeed, the speed rating on SD cards (C10, U1, U3, V60, V90, etc..) only guarantees sequential large-block throughput with zero regard for random small-block IO performance. For the latter, you want the new 'Application Performance Class' rating, which appears as "A1" and "A2" on cards. The Application Performance spec was added a couple years ago, starting with A1.

Well finally, after what - only a decade, someone figured that digital cameras are not the only devices using these fast cards. But it seems, as you've pointed out, not that many manufacturers use these ratings yet (or even have capable cards) and those that do will charge more. So, again, if you don't care for 10MB+ write speeds then Class 4 cards will usually do fine and actually may be better than more expensive ones. I think that applies to DOS machines with CPUs up to a fast Pentium or so.

infiniteclouds wrote:

Exactly -- to the external port of my 8-bit SCSI card.

The 5.1 version of SCSI2SD PCB has room for a DB25 connector (that you need to get and solder in yourself), precisely to be used with common external SCSI cables. Depending on what kind of connector your card actually has you might need to hunt down a matching cable but that isn't usually much of a problem. DB25 doesn't have all the ground pins of a typical SCSI ribbon so the transfer speeds will be lower than SCSI-2 maximum, but then again v5 SCSI2SD isn't that fast in the first place.

That's a bare PCB with some holes for support pegs in the corners though, if you want a nice case you either have to 3D print it yourself or buy an old external HDD case and reuse that. Two things to note: SCSI ID setting is done via PC software when configuring SCSI2SD and the card, so you can't re-use the nice mechanical switch that the HDD box will likely have on the back. But on the bright side SCSI2SD can usually run on the terminator power supplied via the SCSI cable alone (if it's not too long) so any case will do, doesn't have to be one with a PSU in it.

I've recently got an SHD-FMX240 external HDD enclosure from ebay, in great shape, for some 50 Euros plus shipping. And the best thing is the drive in it (240MB) still works. Opportunities like these are rare but do happen.

Reply 11 of 64, by feipoa

User metadata
Rank l33t++
Rank
l33t++

I ended up taken my 386 apart, pulling the SCSI2SD, putting it into a 6x86 machine and did the cloning with Norton Ghost 2003. I'm not sure why Norton Ghost hangs up when I try to run the bootable PC DOS Ghost disk on my 486SXL machine. Attached is an image of the SD, microSD, CF, and CF-to-microSD cards I intend to test to see if there is any negative or positive impact on the performance shown earlier.

For some reason, the PNY 2 GB SD card wouldn't work with the SCSI2SD device. The orange LED light kept going bizerk when I put this card in. Perhaps non-SDHC cards don't work? But the 2 GB microSD card in the SD adapter worked, so...

SD_CF_lineup.jpg
Filename
SD_CF_lineup.jpg
File size
292.63 KiB
Views
4261 views
File license
Fair use/fair dealing exception

EDIT:
I added Disk Mark results for the cards shown above, minus the PNY and minus the CF-to-microSD adapter card (returned errors in Winbench).

Various_SD_Cards.png
Filename
Various_SD_Cards.png
File size
8.31 KiB
Views
4150 views
File license
Fair use/fair dealing exception
Filename
SCSI2SD_Data_Vogons.xls
File size
15 KiB
Downloads
64 downloads
File license
Fair use/fair dealing exception
Last edited by feipoa on 2019-02-28, 07:07. Edited 2 times in total.

Plan your life wisely, you'll be dead before you know it.

Reply 12 of 64, by Deunan

User metadata
Rank Oldbie
Rank
Oldbie

There are standards, and there are implementations. You'd be surprised how many mutually incompatible implementations there can be if the standard is lacking and has areas open to interpretation... And then there are bugs. Point here is: When it comes to SD cards (especially in SPI mode), no matter how much you test your code, there will be ones that just don't work due to their own quirks. I have an older 8GB BASF card that works well in my own devices but not in RPi for example. So don't throw that PNY away, chances are it might work in another device when some other cards won't.

Reply 13 of 64, by feipoa

User metadata
Rank l33t++
Rank
l33t++

The PNY works fine in my old non-SDHC digital camera. It works works fine in my gold Garmin GPS (it contains N. America Topo and street maps).

Plan your life wisely, you'll be dead before you know it.

Reply 14 of 64, by aries-mu

User metadata
Rank Oldbie
Rank
Oldbie

Wow Feipoa, thanks so much!
That's exactly that kind of posts that is very interesting, intriguing, and we're looking for!

A question: everything in your tests is rated to achieve 10 MB/sec. Then why did the tests achieve 2 MB/sec at the highest in real life?
Are all those "10 MB/sec" specs just a great bluff?

If so, who is bluffing? Is it the SCSI controller? the SD Card? or is it the SCSItoSD converter?

Thanks

They said therefore to him: Who are you?
Jesus said to them: The beginning, who also speak unto you

Reply 15 of 64, by feipoa

User metadata
Rank l33t++
Rank
l33t++

Perhaps CPU-limited? I don't know. SCSI2SD lists worst case transfer rate at ~5.5 MB/s. Clearly I'll have to run the results on a faster system using, both, the same Adaptec 1540CP and a PCI Adaptec SCSI card. So much for my neat little comparison on a 386.

Plan your life wisely, you'll be dead before you know it.

Reply 16 of 64, by aries-mu

User metadata
Rank Oldbie
Rank
Oldbie
feipoa wrote:

Perhaps CPU-limited? I don't know. SCSI2SD lists worst case transfer rate at ~5.5 MB/s. Clearly I'll have to run the results on a faster system using, both, the same Adaptec 1540CP and a PCI Adaptec SCSI card. So much for my neat little comparison on a 386.

Right!!! Used as I am with 486s and above, I took the CPU speed per granted.

Sure, if you'll run any more test, please let us know if you have time.

This thread is fantastic!

They said therefore to him: Who are you?
Jesus said to them: The beginning, who also speak unto you

Reply 17 of 64, by feipoa

User metadata
Rank l33t++
Rank
l33t++

Haha, I don't technically have time for any of this, but I do it anyway and sacrifice my health (sleep). What computer do you think is sufficient to make full use of the 10 MB/s? Cyrix MII-433? That case is easy to access and has ample space.

Plan your life wisely, you'll be dead before you know it.

Reply 18 of 64, by aries-mu

User metadata
Rank Oldbie
Rank
Oldbie
feipoa wrote:

Haha, I don't technically have time for any of this, but I do it anyway and sacrifice my health (sleep). What computer do you think is sufficient to make full use of the 10 MB/s? Cyrix MII-433? That case is easy to access and has ample space.

Yeah! We gotta spin the wheel and if we wanna do anything else besides spinning the wheel, where does it end up? Always taking time from bed time!
Don't do that, it's too important for health and performance.

About your question, I have no idea bro! I always assumed that even a 486 DX2-66 would crunch data at way more than 10 MB/sec, like even 50 MB/sec.
Like, if an ISA slot, 16 bit 16 MHz, has a bandwidth of 16 MB/sec, a 32 bit 66 MHz CPU should be able to produce at least 8 times that. That was my kind of subconscious thinking. But maybe I'm completely wrong.

They said therefore to him: Who are you?
Jesus said to them: The beginning, who also speak unto you

Reply 19 of 64, by Anonymous Coward

User metadata
Rank l33t
Rank
l33t

I was always under the impression that a 16-bit ISA slot at 8MHz topped out at 5MB/sec for non-DMA file transfers. (DMA transfers should be slower).

"Will the highways on the internets become more few?" -Gee Dubya
V'Ger XT|Upgraded AT|Ultimate 386|Super VL/EISA 486|SMP VL/EISA Pentium