Karl (supersat) wrote in supersat_tech,

Network Memory Paging

My old laptop slowed to a crawl. I was sitting here, frustrated, listening to the hard drive thrash around, trying to page memory in and out. I was thinking, "there's gotta be a better way to do virtual memory." Then, it hit me: page memory over the network. Simply put, instead of paging memory out to the local hard drive, page it out to the RAM in another system on the network.

Gigabit Ethernet (in theory) is at least as fast as most IDE interfaces, and paging out to another system's RAM virtually eliminates seek times, so it seems like using a network paging system would dramatically improve performance. A quick look through Google shows that this idea has been toyed with before, but I haven't found a solid implementation on either Linux or Windows.

A person on IRC asked why you wouldn't just move memory from one system to another. In several cases, it's impractical to do so. For example, my old system has a LOT of RAM, but I rarely use it. My laptop, while it also has a lot of RAM, could always use more. However, it can't accept standard DIMMs. You also run into cases where you can't mix memory types/speeds. Finally, the other system may occasionally need the RAM. If the RAM on the remote system is not needed, it can be used to page out memory from another system. If it is, memory can be paged out to the disk as usual.

Does anyone have any experience with network paging? Do you think it's a good idea or not?
  • Post a new comment


    default userpic