Skip to content

PMEM-aware Off-heap Persistent Objects for Java

Notifications You must be signed in to change notification settings

jnvm-project/jnvm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JNVM

Note

This repository is currently undergoing structural changes (small refactoring, obselete code removal, proper docs, better tests). All should stabilize in a few days/weeks.

Overview

J-NVM is a framework to efficiently access Non-Volatile Main Memory (NVMM) in Java. J-NVM offers a natural interface to persist plain Java objects using failure-atomic blocks. This interface relies internally on proxy objects that intermediate direct off-heap access to NVMM. The framework also provides a library of persistent data types that resist reboots and power failures.

The experiments page lists evaluations of J-NVM, where it is compared to other available interfaces with NVMM in Java using YCSB and a TPC-B-like application benchmark.

Build

Prerequisites

The framework currently requires a patched Java Development Kit (JDK) version 8. The patches apply onto jdk8u232-b03 changeset c5ca527b0afd.

Steps

mvn clean install

Usage

Add the followings to your application's pom.xml

<dependency>
  <groupId>eu.telecomsudparis.jnvm</groupId>
  <artifactId>jnvm</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

About

PMEM-aware Off-heap Persistent Objects for Java

Resources

Stars

Watchers

Forks

Packages

No packages published