Large Persistent Memory

From PEL Wiki

Jump to: navigation, search

Right now I am just gathering a list of papers on Large Persistent Memory, and include some brief notes about each paper. I also have a list of things to think about. I also have a list of research questions that can apply to Chris' Dissertation Ideas.

Definitions

Persistent Memory - A non-volatile memory. This will not lose data if power is lost.

Persistent Programming - Data/Objects live longer than the process that created them. This is usually accomplished by abstracting away the storage system.

Papers

I divided the papers I found into the following categories:

Things to Think About

  • Do we need a data type for non-persistent memory?
    • Use garbage collection/delete.
  • MRAM and its capabilities.
  • Stability--recovery after a crash.
    • What do we have to worry about when a system with persistent memory crashes?
    • What state information to we have to save?
    • What needs to be done to protect programs when their data has become corrupted?
  • What is the difference between J2EE and .NET and persistent programming?
    • Is J2EE just an implementation of persistent programming ideas?
  • How is Persistent Programming different than Persistent Memory?
    • Persistent Programming just abstracts away the permanent storage system (file system or database).
    • Will persistent memory support persistent programming without any additional mechanisms?
      • Persistent memory will not support multiple process accessing the same object unless both processes access the object in the exact same way
        • Objects themselves are not abstracted by persistent memory alone.
        • Persistent Programming often abstracts the objects so that different applications can access and modify the object without any knowledge of how they are stored in memory.
Personal tools