SFS Benchmark

After my last updates (checkout and test, please) SFS became stable enough to let it work on a real hardware, on native. As a reminder, I will firstly show the raw performance of my harddrive running through ata.device:

Testing with a 512 byte, MEMF_FAST, LONG-aligned buffer.
Read from SCSI: 6805708 bytes/sec
[…]
Testing with a 262144 byte, MEMF_FAST, LONG-aligned buffer.
Read from SCSI: 57461964 bytes/sec

Now, the SFS partition has been created with 1 sector per logical sector (kind of standard on Amiga) and with all debug turned off. The resulting performance is following:

Testing directory manipulation speed.
File Create: 17744 files/sec
File Open: 26498 files/sec
Directory Scan: 40269 files/sec
File Delete: 10258 files/sec

Seek/Read: 6424 seeks/sec

Please note that the slowness of file operations (create/open/dir scan/delete/seek) is due to enormous amount of context switches. I will probably improve it later, so expect it to be twice as fast soon. Now the real performance:

Testing with a 512 byte, MEMF_FAST, LONG-aligned buffer.
Create file: 11043136 bytes/sec
Write to file: 13080896 bytes/sec
Read from file: 12458496 bytes/sec

Testing with a 4096 byte, MEMF_FAST, LONG-aligned buffer.
Create file: 25875456 bytes/sec
Write to file: 31401984 bytes/sec
Read from file: 16304640 bytes/sec

Testing with a 32768 byte, MEMF_FAST, LONG-aligned buffer.
Create file: 51707904 bytes/sec
Write to file: 62603264 bytes/sec
Read from file: 15536128 bytes/sec

Testing with a 262144 byte, MEMF_FAST, LONG-aligned buffer.
Create file: 53837824 bytes/sec
Write to file: 31686656 bytes/sec
Read from file: 77266944 bytes/sec

It should be noted, that even with 512-byte buffers the performance is pretty good (11MB/s in the worst case) thanks to a nice cache handling and read-ahead of the SFS. The numbers are of course a bit disturbed (noone will belive in 77MB/s transfers :)), but give some nice hint about the speed of the SFS. Hmm, isn’t SFS nice?

PS. I have tried to stress SFS partition a bit, copied many times, benchmarked and such 🙂 No errors have been reported by SFS. Therefore I consider it as a pre-release version (beta was yesterday :)))