DiskSim is an efficient, accurate, highly-configurable disk system simulator developed at the University of Michigan and enhanced at CMU to support research into various aspects of storage subsystem architecture. It is written in C and requires no special system software (just basic POSIX interfaces). DiskSim includes modules for most secondary storage components of interest, including device drivers, buses, controllers, adapters, and disk drives. DiskSim also includes support for a number of externally-provided trace formats and internally-generated synthetic workloads, and includes hooks for inclusion in a larger scale system-level simulator. It has been used in a variety of published studies (and several unpublished studies) to understand modern storage subsystem performance [Ganger93a, Worthington94], to understand how storage performance relates to overall system performance [Ganger93, Ganger95, Ganger95a], and to evaluate new storage subsystem architectures [Worthington95a].
DiskSim has been validated both as part of a more comprehensive system-level model and as a standalone subsystem. In particular, the disk module (which is extremely detailed) has been carefully validated against 10 different disk models from 5 different manufacturers. The accuracy demonstrated exceeds that of any other disk simulator known to the authors (e.g., see Ruemmler and Wilkes' article in the March 1994 issue of IEEE Computer).
Parameters for some disks against which we have validated DiskSim are included with the source code release (see below). For 4 of these disks, the parameters were extracted by a set of semi-automated, on-line algorithms described in [Worthington95, Worthington96]. For another 5 disks, the parameters were extracted automatically by a new disk characterization tool called DIXtrac. Additional DIXtrac-provided parameters are added periodically to our on-line database of disk parameters.
A fairly complete description of what DiskSim can do and how to use it can be found in the Reference Manual below
|
|
|