Skip to content
This repository was archived by the owner on Mar 22, 2023. It is now read-only.

Commit 4e0cbdd

Browse files
Merge pull request #206 from pbalcer/release-prep
common: 0.8 release
2 parents decb48a + f537dc4 commit 4e0cbdd

File tree

4 files changed

+43
-7
lines changed

4 files changed

+43
-7
lines changed

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ cmake_minimum_required(VERSION 3.3)
3333
project(vmemcache C)
3434

3535
set(VERSION_MAJOR 0)
36-
set(VERSION_MINOR 1)
36+
set(VERSION_MINOR 8)
3737
set(VERSION ${VERSION_MAJOR}.${VERSION_MINOR})
3838

3939
set(CMAKE_DISABLE_IN_SOURCE_BUILD ON)

ChangeLog

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
Fri Mar 29 2019 Piotr Balcer <piotr.balcer@intel.com>
2+
3+
* Version 0.8
4+
This is the first official release of libvmemcache. It's an embeddable
5+
and lightweight in-memory caching solution designed to fully take
6+
advantage of large capacity memory, such as Persistent Memory with DAX,
7+
through memory mapping in an efficient and scalable way.
8+
9+
Among other things, it includes:
10+
- Extent-based memory allocator which sidesteps the fragmentation
11+
problem that affects most in-memory databases and allows the cache
12+
to achieve very high space utilization for most workloads.
13+
- Buffered LRU, which combines a traditional LRU doubly-linked
14+
list with a non-blocking ring buffer to deliver high degree
15+
of scalability on modern multi-core CPUs.
16+
- Unique indexing structure, critnib, which delivers
17+
high-performance while being very space efficient.
18+
19+
The reason this release has version 0.8 is because we are still looking
20+
for actual real world feedback before we stabilize the APIs and commit
21+
to maintaining backward compatibility. It does not mean that the library
22+
is unfinished or unstable. On the contrary, the cache is fully
23+
functional and we are confident in its quality.

README.md

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,29 @@ libvmemcache: buffer based LRU cache
44
[![Build Status](https://travis-ci.org/pmem/vmemcache.svg?branch=master)](https://travis-ci.org/pmem/vmemcache)
55
[![Coverage Status](https://codecov.io/github/pmem/vmemcache/coverage.svg?branch=master)](https://codecov.io/gh/pmem/vmemcache/branch/master)
66

7-
### WARNING ###
8-
9-
This library is in a '**Work-In-Progress**' state,
10-
**API is not stable** and it **may change at any time**.
7+
**libvmemcache** is an embeddable and lightweight in-memory caching solution.
8+
It's designed to fully take advantage of large capacity memory, such as
9+
Persistent Memory with DAX, through memory mapping in an efficient
10+
and scalable way.
11+
12+
The things that make it unique are:
13+
- Extent-based memory allocator which sidesteps the fragmentation
14+
problem that affects most in-memory databases and allows the cache
15+
to achieve very high space utilization for most workloads.
16+
- Buffered LRU, which combines a traditional LRU doubly-linked
17+
list with a non-blocking ring buffer to deliver high degree
18+
of scalability on modern multi-core CPUs.
19+
- Unique indexing structure, critnib, which delivers
20+
high-performance while being very space efficient.
21+
22+
The cache is tuned to work optimally with relatively large value sizes. The
23+
smallest possible size is 256 bytes, but libvmemcache works best if the expected
24+
value sizes are above 1 kilobyte.
1125

1226
# Building The Source #
1327

1428
Requirements:
1529
- cmake >= 3.3
16-
- git
1730

1831
Optional:
1932
- valgrind (for tests)

src/libvmemcache.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ extern "C" {
7070
* version of the libvmemcache API as provided by this header file.
7171
*/
7272
#define VMEMCACHE_MAJOR_VERSION 0
73-
#define VMEMCACHE_MINOR_VERSION 1
73+
#define VMEMCACHE_MINOR_VERSION 8
7474

7575
#define VMEMCACHE_MIN_POOL ((size_t)(1024 * 1024)) /* minimum pool size: 1MB */
7676
#define VMEMCACHE_MIN_EXTENT ((size_t)256) /* minimum size of extent: 256B */

0 commit comments

Comments
 (0)