Skip to content

LutzCle/RUMA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

Purpose

This repository is an independent reimplementation of the experiments presented in Schuhknecht et al. "RUMA Has It: Rewired User-space Memory Access is Possible!" VLDB 2016.

Instructions

Setup huge pages using Redhat's tuning guide. Ensure that you have about 1000 free huge pages (i.e., 2GB).

Create in-memory filesystems as backing storage, for small and huge pages:

sudo mkdir -p /mnt/mmfs/small
sudo mkdir -p /mnt/mmfs/huge

sudo mount -t tmpfs -o gid=100,mode=0770 nodev /mnt/mmfs/small
sudo mount -t hugetlbfs -o gid=100,mode=0770 nodev /mnt/mmfs/huge

Compile and run with script:

chmod +x ruma.sh
./ruma.sh

Results

Lenovo T450s laptop with a Intel Core i7-5600U CPU @ 2.60GHz:

=== Small pages ===
First pass  (cycles): 917584709
Second pass (cycles): 14770811
Third pass  (cycles): 15004068
Hard page fault (cycles / page): 3500
Hard page fault (cycles / KiB):  875
Test remap | initial:  0 1
Test remap | remapped: 1 1
Test append: 1
=== Huge pages ===
First pass  (cycles): 273679993
Second pass (cycles): 139374
Third pass  (cycles): 139204
Hard page fault (cycles / page): 534531
Hard page fault (cycles / KiB):  261
Test remap | initial:  0 1
Test remap | remapped: 1 1
Test append: 1

About

Rewired User-space Memory Access

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published