Dockers usage in PMDK

Dockers usage in PMDK

In this blog post, I’ll describe why we believe dockers are easy to use, time-saving, and valuable for day-to-day programming and debugging. If you have never heard of dockers (or containers in general), please read, for example, this overview. We use dockers in almost all of the repositories …

Read More
Update on PMDK and our long term support strategy

Update on PMDK and our long term support strategy

Following Intel’s Q2 earnings call announcing the wind-down of Intel’s Optane business, Intel will also be winding down its investment in new feature development on Persistent Memory Development Kit (PMDK) libraries and adjusting long-term support and maintenance plans accordingly. The PMDK …

Read More
Introduction to libpmem2 (part 1)

Introduction to libpmem2 (part 1)

A new beginning This blog post will be about the recently created library libpmem2, which is a part of PMDK repository. Before we go into details it’s worth having a short look at the history. About seven years ago, the first persistent memory library known as libpmem was started. The concept …

Read More
Memory Tiering (part 1)

Memory Tiering (part 1)

Extending memory capacity with PMEM Databases such as Redis (an in-memory key-value open-source database) consume a lot of memory. Since fast access is essential for them, they use DRAM to store their data. DRAM is quite expensive and has limited capacity, so a solution we propose in this blog post …

Read More
Basic asynchronous hashmap with Miniasync library

Basic asynchronous hashmap with Miniasync library

Miniasync library provides a framework for the composition and execution of asynchronous tasks in C. To accommodate different user-defined tasks and various types of data that they take in, libminiasync makes use of macros. Using libminiasync for the first time can be challenging. There are multiple …

Read More