libpmemobj-cpp

C++ bindings & containers for libpmemobj (by pmem)

Libpmemobj-cpp Alternatives

Similar projects and alternatives to libpmemobj-cpp based on common topics and language

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better libpmemobj-cpp alternative or higher similarity.

libpmemobj-cpp reviews and mentions

Posts with mentions or reviews of libpmemobj-cpp. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-07-17.
  • UltraRAM: 'Universal Memory' That Brings RAM-Like Speed to Non-Volatile Storage
    1 project | news.ycombinator.com | 12 Jan 2022
    Another comment already mentions this, but I guess a functional data structure would be easiest to maintain, even though there's stuff like this for PMEM such that any data structure would work essentially: https://pmem.io/

    This[1] Open Source data store I'm maintaining is storing a huge tree of tries eventually on durable storage, but it's essentially a huge persistent index stored in an append-only file. The last layer of "indirect index pages" stores list of pointers to page fragments, which store the actual records (the list however is bound to a predefinded size). A single read-write trx per resource syncs the new page fragments, which mainly only include the updated or new records plus the paths to the root page to a durable device during a postorder traversal of the in-memory log. The last thing is an atomic update, which sets a new offset to point to the new UberPage, the root of the storage. All pages are only word aligned except for RevisionRootPages, which are aligned to a multiple of 256 bytes. All pages are compressed and might in the future optionally be encrypted.

    I guess these byte addressable persistent memory devices are an ideal fit for small sized parallel random reads of potentially tiny page fragments to reconstruct a full page in-memory.

    However, I hope they'll eventually achieve a better price in comparison to DRAM and SSDs than Intel Optane DC PMEM current price range.

    [1] https://github.com/sirixdb/sirix

  • ELI5: what is pmem?
    1 project | /r/explainlikeimfive | 14 Nov 2021
    Yes it is persistent memory programming. https://pmem.io/
  • Languages experimented with distributed heap support?
    2 projects | /r/ProgrammingLanguages | 17 Jul 2021
    Predating Intel's persistent memory a.k.a. NVDIMM, I see a research product "Hotpot" on its practical application as distributed shared memory ( paper and source code ), despite the hardware adoption issue and its apparent research nature (stuck with customized 3.x Linux kernel), I find the core idea not so bound to such a whole new technology stack, covering from low level device driver to application programming toolkit, even depending on sth like 40Gbps RDMA with InfiniBand SAN connection.
  • Can't figure out how to link C++ library installed with apt-get
    1 project | /r/AskProgramming | 23 Dec 2020
    It's more work but it looks like you can get the C++ bindings off their github and use them directly. You may have to experiment with different releases to find one compatible with whatever version of the base library you have installed.
  • A note from our sponsor - SaaSHub
    www.saashub.com | 10 May 2024
    SaaSHub helps you find the best software and product alternatives Learn more →

Stats

Basic libpmemobj-cpp repo stats
4
107
4.9
about 1 year ago

pmem/libpmemobj-cpp is an open source project licensed under GNU General Public License v3.0 or later which is an OSI approved license.

The primary programming language of libpmemobj-cpp is C++.


Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com