Readspeed Command Line Switches

  • SpinRite v6.1 is Released!
    Guest:
    That's right. SpinRite v6.1 is finished and released. For the full story, please see this page in the "Pre-Release Announcements & Feedback" forum.
    /Steve.
  • Be sure to checkout “Tips & Tricks”
    Dear Guest Visitor → Once you register and log-in:

    This forum does not automatically send notices of new content. So if, for example, you would like to be notified by mail when Steve posts an update to his blog (or of any other specific activity anywhere else), you need to tell the system what to “Watch” for you. Please checkout the “Tips & Tricks” page for details about that... and other tips!

    /Steve.
  • Announcing “BootAble” – GRC's New Boot-Testing Freeware
    Please see the BootAble page at GRC for the whole story.
  • BootAble – FreeDOS boot testing freeware

    To obtain direct, low-level access to a system's mass storage drives, SpinRite runs under a GRC-customized version of FreeDOS which has been modified to add compatibility with all file systems. In order to run SpinRite it must first be possible to boot FreeDOS.

    GRC's “BootAble” freeware allows anyone to easily create BIOS-bootable media in order to workout and confirm the details of getting a machine to boot FreeDOS through a BIOS. Once the means of doing that has been determined, the media created by SpinRite can be booted and run in the same way.

    The participants here, who have taken the time to share their knowledge and experience, their successes and some frustrations with booting their computers into FreeDOS, have created a valuable knowledgebase which will benefit everyone who follows.

    You may click on the image to the right to obtain your own copy of BootAble. Then use the knowledge and experience documented here to boot your computer(s) into FreeDOS. And please do not hesitate to ask questions – nowhere else can better answers be found.

    (You may permanently close this reminder with the 'X' in the upper right.)


thenitch

New member
Oct 7, 2020
2
0
I didn't see this info in writing anywhere else and this forum seemed to be the obvious location for this info. Anyway you can run:

rs.exe /?

to see what extra options are available to you when running ReadSpeed. It was mentioned in Steve's video, but like I said, I couldn't find it in writing.
 
ReadSpeed 1.0

Optional command line parameters:

filename.....: overrides the program's default filename RSnnn.TXT for logging.
+..................: appends benchmark results to user provided log filename.
/1../4...........: displays 64, 128, 256 or 512 sub-block transfer details.
/about........: describes the purpose and operation of this program.
/ident.........: displays verbose diagnostic details without benchmarking.
/nolog........: suppress the benchmark's default writing to a log file.
/verbose....: displays complete diagnostic system details with benchmarking.

/?.................: displays this abbreviated reminder help.
/??...............: displays additional diagnostic options.

ESC.............: skips the current drive benchmark.
CTRL-C......: terminates the benchmark at the first opportunity.

Notes: Parameters are case-insensitive and may be shortened for economy.
Spaces and commas are ignored wherever possible.
 
Last edited:
ReadSpeed 1.0

Optional command line parameters:

Thanks so much for providing the above! I'd been wondering about the parameters since their brief mention in the podcast.

So, regarding the /1 to /4 parameters: are the numbers you mentioned, 64 to 512, in MB? Meaning that using

rs.exe /1

would provide measurements in 64MB segments, ie 16 results within each 1GB section of the drive?

Thanks :)
 
regarding the /1 to /4 parameters
No, I don't think so. I think what it means is the number of reports (sub-divisions) of the entire transfer. So if ReadSpeed is transferring 1G five total times, then that 5G would be reported broken down into 64 parts for /1 (so each would represent 5*1024*1024*1024 / 64 = 83M (83,886,080) or so if my math is any good. And the higher numbers would mean each transfer is correspondingly smaller. Now I don't know for a fact (and my reading of the GRC page on ReadSpeed https://www.grc.com/readspeed.htm didn't find how much reading it actually does. @Steve would have to chime it to let us know.
 
It feels like it would be super easy to add a switch to just read the whole disk. e.g. rs.exe /f
and it would read all the bytes of all the disks, and report retries, or slowdowns. This could help evaluating old disks or new big disks.
 
It feels like it would be super easy to add a switch to just read the whole disk. e.g. rs.exe /f
and it would read all the bytes of all the disks, and report retries, or slowdowns. This could help evaluating old disks or new big disks.
I'm not sure that anything is "super easy" when you're writing in assembly language! :)

I expect that the current default of sampling the drive at 5 places is a compromise for speed and efficiency, while still giving a good overall picture of the drive?
 
No, I don't think so. I think what it means is the number of reports (sub-divisions) of the entire transfer. So if ReadSpeed is transffering 1G five total times, then that 5G would be reported broken down into 64 parts...

Hi,

I just ran ReadSpeed with the '/1' switch, and I can confirm that it produced 64 individual results at each of the 5 points in each drive!

I also ran it with '/4', and can confirm that it produced an awfully long list of results which I didn't try to count, but could very feasibly be 512 entries!

Thanks for the input! :)
 
Thanks so much for providing the above! I'd been wondering about the parameters since their brief mention in the podcast.

So, regarding the /1 to /4 parameters: are the numbers you mentioned, 64 to 512, in MB? Meaning that using

rs.exe /1

would provide measurements in 64MB segments, ie 16 results within each 1GB section of the drive?
Here is how Steve has explained it:

/1 shows the timing on the normal 64 x 32,768 sector xfers.
/2 halves the block transfer size and doubles the block count.
/3 does that again and
/4 does that again.

So, /4 is 512 x 4,096 sector transfers.
 
Here is how Steve has explained it:

/1 shows the timing on the normal 64 x 32,768 sector xfers.
/2 halves the block transfer size and doubles the block count.
/3 does that again and
/4 does that again.

So, /4 is 512 x 4,096 sector transfers.
Thanks for the extra detail, much appreciated! :)
 
I'm not sure that anything is "super easy" when you're writing in assembly language! :)

I expect that the current default of sampling the drive at 5 places is a compromise for speed and efficiency, while still giving a good overall picture of the drive?
<
It feels like it would be super easy to add a switch to just read the whole disk. e.g. rs.exe /f
and it would read all the bytes of all the disks, and report retries, or slowdowns. This could help evaluating old disks or new big disks.
What are thoughts on this poor man's version for hammering the drive a lot?
exit the to DOS and create this batch file and let it run:

loop.bat

break on
:top
echo ================= starting set of 4
rs /1 /nolog
rs /2 /nolog
rs /3 /nolog
rs /4 /nolog
echo =============================
goto top

to stop it, hammer on ctrl-c. I don't see any way to have it skip a drive (I have a HDD and a SDD, so it runs on both), but it's readonly so no harm. Let it run overnight...
 
Can ReadSpeed actually read the whole disk from 0% to 100% ? via any switches yet, or ever in the future?
Now? No. In the future? No, not likely.

ReadSpeed is NOT a drive diagnostic or repair utility!

ReadSpeed reads 1 GB of data at each of the 0%, 25%, 50%, 75%, and 100% locations on the drive to benchmark the drive's read speed. That is all that ReadSpeed was designed and intended to do.

SpinRite is the tool to scan, diagnose, fix the entire drive.

ReadSpeed's /1, /2, /3, /4 switches can provide more data/insight into what may be going on with the drive. But, any fixing or improvement of the drive will require SpinRite.
 
Last edited: