Abstract

The growing popularity of in-memory computing for bigdata analytics often causes performance bottlenecks to memory subsystem resided in operating systems (OS). This article purposes cooperative memory expansion (COMEX), an OS kernel extension. COMEX establishes a stable pool of memory collectively across nodes in a cluster and enhances OS's memory subsystem for memory aggregation from connected machines by allowing process's page table to track remote memory page frames without programmer effort or modifications to application codes. COMEX employs Remote Direct Memory Access (RDMA) for low-latency data transfer with destination kernel bypassed and does not rely on an old design of the I/O block subsystem usually adopted by all known remote paging. COMEX fits soundly in the emerging system design approach of resource disaggregation which breaks hard walls between server-centric machines into a new design paradigm of separated resource pools. The new architecture facilitates both system scaling-up and scaling-out, also eliminates imbalance resources existing in datacenters. We have implemented COMEX based on Linux kernel 3.10.87 and deployed on our 32 networked servers. Performance evaluation results under ten applications from two benchmark suites reveal the speedup of up to 170 times when application execution footprints are 10 times larger than available system memory.

Highlights

  • PERFORMANCE of a computer system is critically affected by the system’s bottleneck during job execution

  • cooperative memory expansion (COMEX) buffering performance outcomes over ten benchmarks chosen for evaluation with 16-pages prefetching under four buffer sizes are depicted in Fig. 12, where each benchmark is run on a compute node with its DRAM sized to 8 GB and the results of B 1⁄4 1K pages normalized to 1.0

  • COMEX has been developed and implemented by extending the operating systems (OS) kernel memory subsystem to let any machine in a networked computing system expand its memory size on-demand dynamically to hold evicted pages for accelerating execution

Read more

Summary

Introduction

PERFORMANCE of a computer system is critically affected by the system’s bottleneck during job execution. Temporary swap space created on the storage device by OS for staging excessive pages evicted from main memory [4], [5] tends to become an execution performance bottleneck. Solutions have been pursued for addressing the performance bottleneck of bigdata processing due mainly to extensive accesses to slow I/O block device storage. They widely adopt in-memory computing by keeping all data in system main memory (DRAM) for speedy processing

Methods
Results
Conclusion
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call