usenix conference policies
Tiled Virtual Memory for UNIX
James Franklin, Kodak Electronic Printing Systems
Many computer applications require the manipulation of large data arrays. These applications can behave badly under a paged virtual memory (vM) system, due to poor memory access patterns. One solution to this problem is tiling, a technique in which the arrays are partitioned into sub-arrays that map one-to-one with VM pages. Software implementations of tiling have been described in the literature, but none provide the speed and application transparency of a hardware solution.
We have implemented a hardware based, tiled VM within a version of the UNIX operating system. Based on a novel memory management unit and supporting kernel software, this tiled VM has proven to be an efficient environment for manipulating 2-dimensional arrays of data.
In this paper we discuss the kernel changes required to implement our tiled VM. We then compare tiled and paged versions of our VM system, and show that tiling results in a 50-fold reduction in working set size for a common class of image processing algorithms.
author = {James Franklin},
title = {Tiled Virtual Memory for {UNIX}},
booktitle = {USENIX Summer 1992 Technical Conference (USENIX Summer 1992 Technical Conference)},
year = {1992},
address = {San Antonio, TX},
url = {https://www.usenix.org/conference/usenix-summer-1992-technical-conference/tiled-virtual-memory-unix},
publisher = {USENIX Association},
month = jun
}
connect with us