Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Memstrata camera-ready. Closes #248 #259

Merged
merged 1 commit into from
Jun 4, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions source/_data/SymbioticLab.bib
Original file line number Diff line number Diff line change
Expand Up @@ -1778,3 +1778,19 @@ @Article{andes:arxiv24
}
}

@InProceedings{memstrata:osdi24,
author = {Yuhong Zhong and Daniel S. Berger and Carl Waldspurger and Ryan Wee and Ishwar Agarwal and Rajat Agarwal and Frank Hady and Karthik Kumar and Mark D. Hill and Mosharaf Chowdhury and Asaf Cidon},
booktitle = {OSDI},
title = {Managing Memory Tiers with {CXL} in Virtualized Environments},
year = {2024},
publist_confkey = {OSDI'24},
publist_topic = {Disaggregation},
publist_link = {paper || memstrata-osdi24.pdf},
publist_abstract = {
Cloud providers seek to deploy CXL-based memory to increase aggregate memory capacity, reduce costs, and lower carbon emissions. However, CXL accesses incur higher latency than local DRAM. Existing systems use software to manage data placement across memory tiers at page granularity. Cloud providers are reluctant to deploy software-based tiering due to high overheads in virtualized environments. Hardware-based memory tiering could place data at cacheline granularity, mitigating these drawbacks. However, hardware is oblivious to application-level performance.

We propose combining hardware-managed tiering with software-managed performance isolation to overcome the pitfalls of either approach. We introduce Intel® Flat Memory Mode, the first hardware-managed tiering system for CXL. Our evaluation on a full-system prototype demonstrates that it provides performance close to regular DRAM, with no more than 5% degradation for more than 82% of workloads. Despite such small slowdowns, we identify two challenges that can still degrade performance by up to 34% for “outlier” workloads: (1) memory contention across tenants, and (2) intra-tenant contention due to conflicting access patterns.

To address these challenges, we introduce Memstrata, a lightweight multi-tenant memory allocator. Memstrata employs page coloring to eliminate inter-VM contention. It improves performance for VMs with access patterns that are sensitive to hardware tiering by allocating them more local DRAM using an online slowdown estimator. In multi-VM experiments on prototype hardware, Memstrata is able to identify performance outliers and reduce their degradation from above 30% to below 6%, providing consistent performance across a wide range of workloads.
}
}
Binary file not shown.
5 changes: 5 additions & 0 deletions source/publications/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -205,6 +205,11 @@ venues:
OSDI:
category: Conferences
occurrences:
- key: OSDI'24
name: The 18th USENIX Symposium on Operating Systems Design and Implementation
date: 2024-07-10
url: https://www.usenix.org/conference/osdi24
acceptance: 15.6%
- key: OSDI'23
name: The 17th USENIX Symposium on Operating Systems Design and Implementation
date: 2023-07-10
Expand Down
Loading