To evaluate the performance of our remote memory pager, and compare it to traditional disk paging, we conducted a series of performance measurements using a number of representative applications that require a large amount of memory. Our applications include GAUSS, a gaussian elimination, QSORT, a quicksort program, FFT, a Fast-Fourier Transform, MVEC, a matrix-vector multiplication, FILTER, a two pass separable image sharpening filter described in [20] and CC, a kernel build after modifying the code of our device driver. All applications were executed on the DEC-Alpha 3000 model 300, and were compiled with the standard C compiler with the optimization enabled. All workstations that contributed their main memory for paging purposes were DEC-Alpha 3000 model 300, connected via a standard 10Mbits/sec Ethernet. In all experiments the amount of idle memory was larger than the amount of memory needed for paging and was equally distributed among all workstations. The local disk that was used for paging is a DEC RZ55, providing 10Mbits/sec bandwidth, and average seek time of 16 msec.
Figure 2: Performance of applications using either the disk, or the
remote memory as paging device. We see that
for all applications,
the use of remote memory results in significantly faster execution.
All applications were run on a DEC-Alpha 3000 model 300 workstation.
The input sizes for QSORT was 3000 records, for GAUSS, a
1700 1700 matrix, for MVEC, a 2100 2100 matrix, for
FFT an array with 700 K elements, for FILTER a 12 MB
image, and the whole DEC OSF/1 V3.2 kernel for CC.