Swapping between nodes in a cluster of workstations to improve system performance has been discussed by several research papers in the recent past [2] [3]. Studies of workstation usage patterns show that most of the resources in a cluster of workstation are free most of the time even at peak workloads [1]. As a result, there will almost always be idle remote memory for an overloaded node to use as swap space. In addition, faster networks and slowly increasing disk speeds make swapping to remote memory an increasingly attractive option. We present a network swapping system called “nswap” implemented as a loadable kernel module for for the Linux kernel. nswap features a rapid response time even in the case of out of date information about remote hosts, a load balancing scheme through page migrations, and smooth fail-over to disk in case network swap space becomes scarce. The nswap module, conceptually divided into a pseudo-device driver client and a memory server, achieves these goal using a set of protocols described in the poster.
Read full abstract