Sarah Jelinek has uploaded a new change for review.

  http://gerrit.cloudera.org:8080/2497

Change subject: Add implementation of the block cache on NVM running in 
persistent mode.
......................................................................

Add implementation of the block cache on NVM running in persistent mode.

This commit adds support for a persistent memory cache based on libnvml[1].
The cache is configured using a new flag --nvm_cache_persistent, which is a
boolean flag. The default value is true which means that the NVM cache
is persisted by default.

For testing purposes, the new cache implementation can also be run on
any old other mount point (eg /dev/shm or a normal file system) though
there is not likely to be a performance advantage.

The code changes contained are:
  * introduce the new flag to select allowing the cache to run on NVM in
    persistent mode
  * introduce the new cache implementation which provides retention of cache 
data
    on process reboot. This implementation makes use of the libpmemobj APIs to
    support persistence of the key and value data per cache entry.
  * support for re-populating the block cache with the existing entries
    upon restart of the cache
  * cfile-test now includes another parameter that tests the block
    cache in persistent mode
  * cache-test now includes another parameter that tests the cache in
    persistent mode

    Change-Id: I2dcf474bce9f2375b0ddde38312db7d82a81835c

Change-Id: I685b8f60145a6f820e7d8f0fcc7059f64947af81
---
M CMakeLists.txt
A cmake_modules/FindPmem.cmake
D cmake_modules/FindVmem.cmake
M src/kudu/cfile/block_cache-test.cc
M src/kudu/cfile/block_cache.cc
M src/kudu/cfile/block_cache.h
M src/kudu/cfile/block_handle.h
M src/kudu/cfile/cfile-test.cc
M src/kudu/cfile/cfile_reader.cc
M src/kudu/codegen/code_cache.cc
M src/kudu/util/CMakeLists.txt
M src/kudu/util/cache-test.cc
M src/kudu/util/cache.cc
M src/kudu/util/cache.h
M src/kudu/util/nvm_cache.cc
M src/kudu/util/nvm_cache.h
M thirdparty/build-definitions.sh
17 files changed, 844 insertions(+), 380 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/97/2497/1
-- 
To view, visit http://gerrit.cloudera.org:8080/2497
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I685b8f60145a6f820e7d8f0fcc7059f64947af81
Gerrit-PatchSet: 1
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Sarah Jelinek <[email protected]>

Reply via email to