We may earn an affiliate commission when you visit our partners.
Course image
EDUCBA

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.

Target Learners:

Read more

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.

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.

Enroll now

What's inside

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.
Read more
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.

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Well-suited for system designers, database administrators, and software developers seeking proficiency in persistent memory
Taught by industry experts (EDUCBA) with extensive knowledge in the field
Provides a solid foundation in persistent memory principles, concepts, and techniques
Covers advanced programming aspects with libpmemobj, enabling deeper understanding and practical implementation
Requires foundational knowledge in computer architecture, operating systems, and memory concepts

Save this course

Save Persistent Memory Technology - Introduction and Deployment to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Persistent Memory Technology - Introduction and Deployment with these activities:
Attend Industry Webinars on Persistent Memory
Stay up-to-date with industry trends and advancements in persistent memory technologies.
Show steps
  • Research industry events and webinars focused on persistent memory.
  • Attend webinars to learn from experts and gain insights into real-world applications.
Review Database and Memory Concepts
Revisit the fundamentals of databases and memory management to strengthen your understanding.
Browse courses on Database Concepts
Show steps
  • Review core database concepts such as data models, relationships, and queries.
  • Refresh your knowledge of memory hierarchies, caching, and virtual memory.
Contribute to Open-Source PMEM Projects
Gain hands-on experience and contribute to the broader persistent memory community.
Browse courses on Open Source
Show steps
  • Identify open-source PMEM projects that align with your interests.
  • Review the project's documentation and codebase to understand its functionality.
  • Work on specific issues or enhancements and submit pull requests.
Two other activities
Expand to see all activities and additional details
Show all five activities
Join a Study Group for Collaborative Learning
Connect with peers and engage in discussions to enhance your understanding and retention.
Show steps
  • Identify or form a study group with other students enrolled in the course.
  • Meet regularly to discuss course material, ask questions, and share insights.
Craft a Performance Comparison Report
Showcase your ability to assess performance implications by comparing hardware configurations.
Browse courses on Performance Analysis
Show steps
  • Research different PMEM hardware options and their specifications.
  • Configure and run benchmarks to measure performance metrics.
  • Analyze and interpret results to draw conclusions and identify performance trade-offs.
  • Create a detailed report summarizing your findings and recommendations.

Career center

Learners who complete Persistent Memory Technology - Introduction and Deployment will develop knowledge and skills that may be useful to these careers:
Storage Architect
Storage Architects design and implement storage solutions for organizations. This course provides a comprehensive understanding of persistent memory technology, which is a key emerging technology for storage architects.
Research Scientist
Research Scientists conduct research in various scientific fields. This course provides a detailed understanding of persistent memory technology, which is a key emerging technology for Research Scientists working on data-intensive research projects.
Database Administrator
Database Administrators (DBAs) are responsible for managing and maintaining databases, including their security, performance, and availability. This course provides a detailed understanding of persistent memory technology, which is becoming increasingly important for DBAs as they seek to improve database performance and scalability.
High-Performance Computing Engineer
High-Performance Computing Engineers design and implement high-performance computing systems. This course provides a detailed understanding of persistent memory technology, which is a key emerging technology for High-Performance Computing Engineers as they seek to improve system performance and scalability.
Systems Architect
Systems Architects design and implement complex computer systems. This course provides a detailed understanding of persistent memory technology, which is becoming increasingly important for Systems Architects as they seek to improve system performance and scalability.
Cloud Architect
Cloud Architects design and implement cloud-based solutions for organizations. This course provides a solid foundation in memory management and optimization, which are essential skills for Cloud Architects working on cloud-native applications.
Software Developer
Software Developers design, develop, and maintain software applications. This course provides a solid foundation in memory management and optimization, which are essential skills for Software Developers working on high-performance applications.
IT Manager
IT Managers are responsible for managing and maintaining IT infrastructure for organizations. This course provides a comprehensive understanding of persistent memory technology, which is a key emerging technology for IT Managers as they seek to improve IT infrastructure performance and scalability.
Technical Consultant
Technical Consultants provide technical advice and guidance to organizations. This course provides a comprehensive understanding of persistent memory technology, which is a key emerging technology for Technical Consultants working with organizations on data management and storage solutions.
Technical Lead
Technical Leads lead technical teams in the design and development of software products. This course provides a solid foundation in memory management and optimization, which are essential skills for Technical Leads working on complex software projects.
Enterprise Architect
Enterprise Architects design and implement IT solutions for organizations. This course provides a comprehensive understanding of persistent memory technology, which is a key emerging technology for Enterprise Architects as they seek to improve IT infrastructure performance and scalability.
Technical Sales Engineer
Technical Sales Engineers sell technical products and services to customers. This course provides a comprehensive understanding of persistent memory technology, which is a key emerging technology for Technical Sales Engineers working with customers on data management and storage solutions.
Software Engineer
Software Engineers design, develop, and maintain software systems. This course provides a solid foundation in memory management and optimization, which are essential skills for Software Engineers working on high-performance applications.
Data Architect
Data Architects design and implement data management solutions for organizations. This course provides a solid foundation in memory management and optimization, which are essential skills for Data Architects working on data-intensive applications.
Data Scientist
Data Scientists use their knowledge of statistical methods, data analysis techniques, and programming skills to extract meaningful insights from data. This course provides a foundation in memory management and optimization, which are essential skills for Data Scientists working with large datasets.

Reading list

We've selected five books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Persistent Memory Technology - Introduction and Deployment.
Comprehensive guide to persistent memory programming. It covers the basics of persistent memory, including its architecture, programming models, and performance characteristics. It also provides detailed examples of how to use persistent memory in real-world applications.
This advanced textbook on computer architecture explores emerging technologies and trends, including persistent memory.
Provides a panel discussion on persistent memory.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Persistent Memory Technology - Introduction and Deployment.
Linux Basics: The Command Line Interface
Most relevant
Linux Basics: The Command Line Interface - 6
Most relevant
Linux Systems Programming
Most relevant
Linux System Programming and Introduction to Buildroot
Most relevant
Modern C++ Concurrency in Depth ( C++17/20)
C Programming: Using Linux Tools and Libraries - 7
Introduction to High-Performance and Parallel Computing
Linux Kernel Programming and Introduction to Yocto Project
I sistemi Operativi Moderni
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser