zs@musket.cs.mu.OZ.AU (Zoltan Somogyi) (08/03/90)
I am interested in caching algorithms that can be used by fast disk controllers. To this end, I am looking for traces of the disk accesses made by o/s kernels, preferably under multiuser load. The information I need for each access is basically just a <read/write, disk number, block number> triple, although geometry information and the time interval between consecutive accesses would be nice. I intend to use these traces to simulate and evaluate caching algorithms specialized for this application domain. I expect the best algorithms to be different from those employed by e.g. the Unix buffer cache, because the buffer cache itself will filter the disk accesses seen by the disk controller, and because the disk controller has even less information about likely future access patterns than the kernel. Before you ask: I do intend to capture some traces myself, but I am restricted to one kind of load. I would like to evaluate each cache algorithm under several kinds of load, because the variance of the performance of a cache algorithm can in some cases be as important as the mean. I am also aware that with many operating systems, the best place to put extra memory for a disk cache is in main memory, not in the disk controller, but that cannot always be done, especially if the disk controller is made by a company other than the computer manufacturer. In any case, memory in a disk controller can be cheaper than in main memory; it may be slower, and it may be subject to a smaller markup. Please mail your replies; if necessary, I'll summarize. Zoltan Somogyi zs@cs.mu.OZ.AU Department of Computer Science University of Melbourne Parkville, 3052 Victoria, Australia