Global memory management in a workstation cluster

take-away

  • Global memory
  • Global LRU (probabilistic algo)

Overview

architecture

  • global memory management in a cluster of machines connected by a high-speed LAN
  • GMS (global memory service)

    • local and global page
    • algorithm
    • how to determine what to replace
      • global information
      • epoch (timeout and M pages to replace)
        • flush TLB
        • assign probabilities (lottery scheduling)
  • compared to today’s system
    • In contrast, each operating system in today’s clusters acts as an autonomous agent, exporting services to other nodes, but not acting in a coordinated way.
  • For example, global memory management allows the operating system to use cluster-wide memory to avoid many disk accesses

Goal

  • minimize average data reference time

    • go to remote memory instead of disks
  • Why can global memory management benefit application?

    • many nodes in LAN are often idle
    • use those idle resources on behalf of nodes with active application
    • GMS: use idle memory resources

Algorithm

  • Model:
    • local pages and global pages
    • global pages are pages stroed on behalf of other nodes
    • global pages together constitute “global memory”
    • global memory adds another level of memory hierarchy

Implementation

  • Three main aspects to implementation
    • maintaining page ages
    • finding pages in cluster
    • making replacement and eviction (逐出) decisions

Page Ages

  • global page ages?
    • As times goes on
  • local page ages?
    • File pages easy
    • Need to track accesses to mapped pages
  • Use similar trick as in Ozalp’s paper

Global LRU

  • There is too much overhead to maintain a global age. Instead, a probabilistic algorithm is used to decide which one to page out.

Making Replacement Decisions

  • Common case is replacing oldest page in global memory
  • the algorithm in paper?

How to design your experiments?

  • The objective: Convince others and yourself about the idea and the system
  • Question you should ask yourself
    • Given your idea and your system, what kind of would others have about the idea and the system?
    • Pick the Grapevine system as an example to design experimental evaluation for them

results matching ""

    No results matching ""