Levin provides a highly efficient solution in bulk loading scenario.
A collection of STL-like containers are implemented with high performance and memory efficiency.
Levin containers arrange memory layout SEQUENTIALLY, allocated at share memory region for inter-process reuse.
In which case, we can extend the lifetime of data resources, and prevent unnecessary time-consuming reload.
Loading with levin is fast, let’s get started.
Getting Started
Brief Intro for Levin Container
STD Container
Levin Container
Notes
Suggestion
vector<T>
SharedVector<T>
T is POD type
set<K, Compare>
SharedSet<K, Compare>
K is POD type
use SharedHashSet if no comparison
map<K, V, Compare>
SharedMap<K, V, Compare>
K/V is POD type
use SharedHashMap if no comparison
unordered_set<K, Hash, Pred>
SharedHashSet<K, Hash, Pred>
K is POD type
unordered_map<K, V, Hash, Pred>
SharedHashMap<K, V, Hash>
K/V is POD type
vector<vector<T> >
SharedNestedVector<T, SizeType>
T is POD type; SizeType is unsigned integral type
specified SizeType for memory space efficiency
unordered_map<K, vector<V> >
SharedNestedHashMap<K, V>
K/V is POD type
vector<map<K, V, Compare> >
SharedNestedMap<K, V, Compare, SizeType>
K/V is POD type; SizeType is unsigned integral type
Levin - A Quick Way to Bulk Loading
Description
Levin provides a highly efficient solution in bulk loading scenario. A collection of STL-like containers are implemented with high performance and memory efficiency. Levin containers arrange memory layout SEQUENTIALLY, allocated at share memory region for inter-process reuse. In which case, we can extend the lifetime of data resources, and prevent unnecessary time-consuming reload.
Loading with levin is fast, let’s get started.
Getting Started
Tips: Levin container SHOULD be immutable, NOT suggest to modify or reallocate.
example code of container manager usage
Dependencies
Levin depends on following packages, required deps:
Compile
Documentation
About the details, please see Wiki.
Contributing
Welcome to contribute by creating issues or sending pull requests. See Contributing Guide for guidelines.
Communication
License
Levin is licensed under the Apache License 2.0. See the LICENSE file.