Programming Persistent Memory : A Comprehensive Guide for Developers /: A Comprehensive Guide for Developers. (2020)
- Record Type:
- Book
- Title:
- Programming Persistent Memory : A Comprehensive Guide for Developers /: A Comprehensive Guide for Developers. (2020)
- Main Title:
- Programming Persistent Memory : A Comprehensive Guide for Developers
- Further Information:
- Note: Steve Scargall.
- Authors:
- Scargall, Steve
- Contents:
- Chapter 1: Introduction to Persistent Memory This introduces the reader to the Persistent Memory technology. What is it, What does it do, and Why the industry needs it. 1. Introduction 2. Describe current dominant architecture designs using DRAM and Storage 3. Definition of Persistent Memory a. Type N NV-DIMM as first instantiation of Persistent Memory (PM) b. 3DXP as first NVDIMM-P technology 4. Brief introduction of new capability enabled with Persistent Memory 5. Describe why persistent memory is required and what benefits it brings Chapter 2: Operating System Support for Persistent Memory This chapter describes the requirements to use Persistent Memory hardware. 1. Recap of traditional File-based programming model for I/O-based storage 2. ACPI extensions – how OS recognizes PM 3. Using as fast storage via driver 4. DAX and the Programming Model. Mmap today with buffer cache vs. DAX 5. Windows vs. Linux considerations. 6. Emulating Persistent Memory Chapter 3: Fundamental Concepts of Persistent Memory Programming This chapter introduces the fundamentals of persistent memory programming. Why it's different to current programming methods, and what developers need to keep in mind when programming for persistence. 1. Cover variety of basic concepts: Relative pointers, consistency/atomicity across power fails, re-do logs 2. Cache hierarchy and need for flushing 3. Powerfail safe domain and different architectures Chapter 4: Persistent Memory Programming APIs Walk through theChapter 1: Introduction to Persistent Memory This introduces the reader to the Persistent Memory technology. What is it, What does it do, and Why the industry needs it. 1. Introduction 2. Describe current dominant architecture designs using DRAM and Storage 3. Definition of Persistent Memory a. Type N NV-DIMM as first instantiation of Persistent Memory (PM) b. 3DXP as first NVDIMM-P technology 4. Brief introduction of new capability enabled with Persistent Memory 5. Describe why persistent memory is required and what benefits it brings Chapter 2: Operating System Support for Persistent Memory This chapter describes the requirements to use Persistent Memory hardware. 1. Recap of traditional File-based programming model for I/O-based storage 2. ACPI extensions – how OS recognizes PM 3. Using as fast storage via driver 4. DAX and the Programming Model. Mmap today with buffer cache vs. DAX 5. Windows vs. Linux considerations. 6. Emulating Persistent Memory Chapter 3: Fundamental Concepts of Persistent Memory Programming This chapter introduces the fundamentals of persistent memory programming. Why it's different to current programming methods, and what developers need to keep in mind when programming for persistence. 1. Cover variety of basic concepts: Relative pointers, consistency/atomicity across power fails, re-do logs 2. Cache hierarchy and need for flushing 3. Powerfail safe domain and different architectures Chapter 4: Persistent Memory Programming APIs Walk through the PMDK (Persistent Memory Developer Kit) and describe the intent behind each one. Examples will use C and C++ (low-level programming). Chapter 5: Java, Python and other high level languages This chapter will describe how to use the high level language bindings delivered by PMDK using Java and Python examples. Chapter 6: Creating an in-memory database storage engine This chapter describes how to write an in-memory database storage engine from scratch using the PMDK. It will describe the new thinking model required for application developers and describe how the new programming paradigm should be used. By the end of the chapter, the reader will have implemented a working storage engine for a popular open source in-memory database. Chapter 7: Tools for Profiling and Debug Walk through the tools available for persistent memory programming, application performance profiling, and debugging issues. … (more)
- Publisher Details:
- Berkeley, CA : Apress
- Publication Date:
- 2020
- Copyright Date:
- 2020
- Extent:
- 1 online resource (438 pages)
- Subjects:
- Computer science
Computer communication systems
Big data
Computers -- Database Management -- General
Databases
Computers -- Hardware -- Network Hardware
Network hardware - Languages:
- English
- ISBNs:
- 9781484249321
- Related ISBNs:
- 9781484249314
- Access Rights:
- Legal Deposit; Only available on premises controlled by the deposit library and to one user at any one time; The Legal Deposit Libraries (Non-Print Works) Regulations (UK).
- Access Usage:
- Restricted: Printing from this resource is governed by The Legal Deposit Libraries (Non-Print Works) Regulations (UK) and UK copyright law currently in force.
- View Content:
- Available online (eLD content is only available in our Reading Rooms) ↗
- Physical Locations:
- British Library HMNTS - ELD.DS.484831
- Ingest File:
- 03_040.xml