Implementing Sqlhdtst

Sqlhdtst can be run either by clicking on its icon or from the command prompt. This version of Sqlhdtst accepts command-prompt arguments, making it easier to run the utility from command files that fire off several simultaneous instances of Sqlhdtst.

Usage

When you run Sqlhdtst from the command prompt, it accepts the following options:

sqlhdtst [/Dtestfile] [/Ssize] [/Iiterations] [/Wnmbrwrites] [/Tthreads] [/Mmaxasync] [/Qthreadasync] [/Ooutfile] [/Bboost] [/Rreadaheadthreads] [/Ereadaheadextents]

where:

/Dtestfile

Is the full path to the file that Sqlhdtst will create for testing.

/Ssize

Is the size of the test file, specified in 2K pages.

/Iiterations

Is the number of test iterations to run.

/Wnmbrwrites

Is the number of writes to make in each iteration.

/Tthreads

Is the number of threads to use.

/Mmaxasync

Is the maximum number of asynchronous I/Os to have outstanding at any time.

/Qthreadasync

Is the maximum number of asynchronous I/Os any individual thread can have outstanding at any time.

/Ooutfile

Is the name of a file to hold an output report.

/Bboost

Indicates whether or not Sqlhdtst should run with boost priority on (1) or off (0). The default is off (0).

/Rreadaheadthreads

Is the number of readahead threads Sqlhdtst should use.

/Ereadaheadextents

Is the number of readahead extents each readahead thread should use.

When you run Sqlhdtst from an icon, you use a dialog box to fill in the above parameters. The dialog box appears when you click DiskTest/Run Test.

Remarks

If an error is detected, contact your system support provider.

If Sqlhdtst runs without reporting any errors, this does not mean the system is free of problems. It simply means Sqlhdtst did not encounter a problem. Problems could still exist that were not triggered by Sqlhdtst.

For meaningful results, run Sqlhdtst as follows:

\\servername\c$\ftest.fil

where servername is the name of a network file server to which the Windows NT box being tested has access.

start /low sqlhdtst

The test is also usually run without boost priority enabled.

Samples

To run a single test on a small server:

start /LOW sqlhdtst /Dc:\sqlhdtst\testfile.dat /S512 /I20 /W20 /T5 /M20 /Q4 /R3 /E3

To run a single test on a medium server:

start /LOW sqlhdtst /Dc:\sqlhdtst\testfile.dat /S51200 /I100 /W500 /T25 /M20 /Q4 /R6 /E6

To run a single test on a large server:

start /LOW sqlhdtst /Dc:\sqlhdtst\testfile.dat /S512000 /I2000 /W10000 /T100 /M20 /Q4 /R12 /E12

To seriously stress test a large server that has c:, d:, e:, and f: physical disk drives:

start /LOW sqlhdtst /Dc:\testfil1.dat /S512000 /I2000 /W10000 /T100 /M20 /Q4 /R12 /E12
start /LOW sqlhdtst /Dd:\testfil2.dat /S512000 /I2000 /W10000 /T100 /M20 /Q4 /R12 /E12
start /LOW sqlhdtst /De:\testfil3.dat /S512000 /I2000 /W10000 /T100 /M20 /Q4 /R12 /E12
start /LOW sqlhdtst /Df:\testfil4.dat /S512000 /I2000 /W10000 /T100 /M20 /Q4 /R12 /E12
start /LOW sqlhdtst /D\\FileSrvr1\sharenm\testfil5.dat /S512000 /I2000 /W10000 /T100 /M20 /Q4 /R12 /E12
start /LOW sqlhdtst /D\\FileSrvr2\sharenm\testfil5.dat /S512000 /I2000 /W10000 /T100 /M20 /Q4 /R12 /E12