Persistent Memory Technology - Introduction and Deployment (Coursera)

Offered by EDUCBA,
Persistent Memory Technology - Introduction and Deployment (Coursera)

Embark on a dynamic learning journey through this course. In the first module, explore the intricacies of Persistent Memory (PMEM), unraveling its fundamental concepts, characteristics, and operating system support. Transition seamlessly into the second module, mastering transactional concepts, optimizing hardware configurations, and discerning between volatile and persistent libraries. In the final module, dive into advanced programming with libpmemobj, overcoming C++ Standard limitations, and applying insights to real-world scenarios like building a phonebook.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

Target Learners:

  1. System architects and designers
  2. Software developers and programmers may learn about programming models
  3. Database administrators (DBAs)
  4. IT managers and decision-makers
  5. Data Scientists and Analysts

By the end of this course,
1) You will wield a comprehensive skill set for navigating PMEM landscapes, optimizing system performance, and crafting resilient applications with advanced programming tools.

Pre-Requisites:

  1. Understanding of basic computer architecture
  2. The Basics of Operating Systems
  3. Storage and Memory Concepts
  4. Programming Skills
  5. Fundamental Algorithms and Data Structures
  6. As the course may explore the performance consequences of employing PMEM, it is important to be aware of performance measures and factors in computer systems.
  7. Linux is a popular platform for working with persistent memory; therefore, being able to use the Linux command line is frequently helpful.

What you'll learn

  • Grasp in-depth knowledge of persistent memory and seamless integration with memory and storage, supported by the operating system.
  • Learn transaction concepts, differentiate volatile and persistent libraries, and master file mapping in the context of Persistent Memory
  • Understand libpmemobj's purpose and memory pool concepts

Syllabus

Introduction & Persistent Memory Architecture
This module provides a comprehensive exploration of persistent memory (PMEM), covering fundamental concepts and functionalities. You will delve into the essential characteristics of PMEM, analyzing platform support and data visibility. The module extends to assessing operating system support for memory and storage, offering insights into persistent memory-aware file systems. By the end, you will possess a nuanced understanding of PMEM, equipping them with the knowledge to navigate its key attributes, assess system compatibility, and comprehend the role of PMEM in contemporary storage solutions.

PMEM Development Kit
This module immerses you in the nuanced realm of transactions, imparting a solid grasp of their concepts. You will showcase proficiency in fine-tuning hardware configurations for optimal performance. Additionally, the module distinguishes between volatile and persistent libraries, elucidating their principles and applications. You will gain insights into separating flush operations for enhanced performance. By the module's conclusion, you will be adept at leveraging transactions, discerning between library types, and optimizing system performance through strategic hardware configurations.

libpmemobj, libpmemobj-cpp and pmemkv
This module provides a comprehensive exploration of advanced programming concepts, delving into the purpose and intricacies of libpmemobj and the implementation of memory pools. You will uncover and overcome limitations imposed by the C++ Standard, gaining the skills to simplify persistence mechanisms in programming. The module culminates with an in-depth analysis of the pmemkv architecture. By the end, you will be well-versed in leveraging powerful programming tools and techniques for efficient and robust application development.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Introducción a la programación en Python I: Aprendiendo a programar con Python (Coursera) Coursera
Pontificia Universidad Católica de Chile

Introducción a la programación en Python I: Aprendiendo a programar con Python (Coursera)

Decía Steve Jobs que “todo el mundo debería aprender a programar un ordenador porque esto te ayuda a pensar”. Hoy en día la programación es una herramienta fundamental para el desarrollo de la tecnología moderna. Este curso te introduce en el mundo de la programación en el lenguaje Python.

Aug 10th 2026
5-12 Weeks
Functional Program Design in Scala (Scala 2 version) (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Functional Program Design in Scala (Scala 2 version) (Coursera)

In this course you will learn how to apply the functional programming style in the design of larger Scala applications. You'll get to know important new functional programming concepts, from lazy evaluation to structuring your libraries using monads. We'll work on larger and more involved examples, from state space exploration to random testing to discrete circuit simulators. You’ll also learn some best practices on how to write good Scala code in the real world. Finally, you will learn how to leverage the ability of the compiler to infer values from types.

Aug 10th 2026
5-12 Weeks
Computer Science: Programming with a Purpose (Coursera) Coursera
Princeton University

Computer Science: Programming with a Purpose (Coursera)

The basis for education in the last millennium was “reading, writing, and arithmetic;” now it is reading, writing, and computing. Learning to program is an essential part of the education of every student, not just in the sciences and engineering, but in the arts, social sciences, and humanities, as well. Beyond direct applications, it is the first step in understanding the nature of computer science’s undeniable impact on the modern world.

Aug 10th 2026
5-12 Weeks
Introduction à la programmation orientée objet (en Java) (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Introduction à la programmation orientée objet (en Java) (Coursera)

Ce cours introduit la programmation orientée objet (encapsulation, abstration, héritage, polymorphisme) en l'illustrant en langage Java. Il présuppose connues les bases de la programmation (variables, types, boucles, fonctions, ...). Il est conçu comme la suite du cours « Initiation à la programmation (en Java) ».

Aug 16th 2026
5-12 Weeks
An Introduction to Interactive Programming in Python (Part 2) (Coursera) Coursera
Rice University

An Introduction to Interactive Programming in Python (Part 2) (Coursera)

This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications. Our language of choice, Python, is an easy-to learn, high-level computer language that is used in many of the computational courses offered on Coursera. To make learning Python easy, we have developed a new browser-based programming environment that makes developing interactive applications in Python simple.

Aug 10th 2026
4 Weeks