• Testing Methodology
  • Windows 2000 Disk io performance Leonard Chung




    Download 1.33 Mb.
    bet10/47
    Sana30.03.2021
    Hajmi1.33 Mb.
    #13789
    1   ...   6   7   8   9   10   11   12   13   ...   47
    DMA

    PIO




    64KB unbuffered read throughput

    19 MBps

    4.3 MBps

    Average CPU utilization

    3% of two 733Mhz processors

    ~ 2 cpu clocks per byte



    50% of two 733Mhz processors

    ~ 170 cpu clocks per byte





    Table 7– DMA vs. PIO – 64KB unbuffered reads. DMA delivers greater throughput with less CPU utilization. DMA needs to be enabled for good performance. Since IDE RAID cards masquerade as SCSI controllers, they don’t require the user to specify DMA or PIO.



    1. Testing Methodology

    This section examines how these measurements were done along with issues we encountered.



      1. Throughput measurement



    SQLIO served as the primary test program for our measurements. SQLIO is a workload generation and measurement tool that allows the user to specify for how long a file should be read or written and various parameters about how the IO should be done. Along with measuring throughputs, SQLIO outputs system and kernel timing information. SQLIO is used by Microsoft’s NT Performance Group for their tests. sqlio2 is a complete rewrite of SQLIO. Among its features are the ability to plug in IO “personalities” which are modules specifying different ways of doing disk IO, a cleaner code base, and more flexible test parameter specification and result output.
    In order to ensure the uniformity of results, each disk was first formatted before test files were copied to the disk in the same order. This made certain that our tests were always run from the same outer tracks on each disk, reducing the problem of media banding and maximizing test results.
    We also scrubbed the file system cache between buffered runs in order to ensure our requests were going to disk instead of cache. Unless otherwise noted, SQLIO was used to generate all of the results in this paper except for buffered tests. SQLIO was found to underreport the throughput of buffered reads during testing so cacheflush was used for all buffered measurements. SQLIO was modified to generate a trace file that is easily imported to an Excel spreadsheet or relational database. The format of the trace file is a comma-separated list where each line has the format:







    Download 1.33 Mb.
    1   ...   6   7   8   9   10   11   12   13   ...   47




    Download 1.33 Mb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Windows 2000 Disk io performance Leonard Chung

    Download 1.33 Mb.