Storage Class Memory Support in the Windows Operating System Neal Christiansen Principal Development Lead Microsoft nealch@microsoft.



Similar documents
Technical Note. Dell PowerVault Solutions for Microsoft SQL Server 2005 Always On Technologies. Abstract

NV-DIMM: Fastest Tier in Your Storage Strategy

Microsoft SQL Server Always On Technologies

Developing File System Mini-Filters for Windows

Promise of Low-Latency Stable Storage for Enterprise Solutions

FAQ for USB Flash Drive

EMC MID-RANGE STORAGE AND THE MICROSOFT SQL SERVER I/O RELIABILITY PROGRAM

Taking Linux File and Storage Systems into the Future. Ric Wheeler Director Kernel File and Storage Team Red Hat, Incorporated

CS 377: Operating Systems. Outline. A review of what you ve learned, and how it applies to a real operating system. Lecture 25 - Linux Case Study

Computer Engineering and Systems Group Electrical and Computer Engineering SCMFS: A File System for Storage Class Memory

LSI SAS inside 60% of servers. 21 million LSI SAS & MegaRAID solutions shipped over last 3 years. 9 out of 10 top server vendors use MegaRAID

A Study of Application Performance with Non-Volatile Main Memory

Chapter 11 I/O Management and Disk Scheduling

Microsoft SMB Running Over RDMA in Windows Server 8

Operating Systems 4 th Class

Operating System Structures

Trends in Data Protection and Restoration Technologies. Mike Fishman, EMC 2 Corporation (Author and Presenter)

Windows NT. Chapter 11 Case Study 2: Windows Windows 2000 (2) Windows 2000 (1) Different versions of Windows 2000

How do Users and Processes interact with the Operating System? Services for Processes. OS Structure with Services. Services for the OS Itself

Memory Channel Storage ( M C S ) Demystified. Jerome McFarland

1. Computer System Structure and Components

Chapter 3: Operating-System Structures. System Components Operating System Services System Calls System Programs System Structure Virtual Machines

A Deduplication File System & Course Review

Best Practices for Architecting Storage in Virtualized Environments

Violin: A Framework for Extensible Block-level Storage

The Native AFS Client on Windows The Road to a Functional Design. Jeffrey Altman, President Your File System Inc.

Sockets vs. RDMA Interface over 10-Gigabit Networks: An In-depth Analysis of the Memory Traffic Bottleneck

Operating System Components

SAN Conceptual and Design Basics

Performance Characteristics of VMFS and RDM VMware ESX Server 3.0.1

File System & Device Drive. Overview of Mass Storage Structure. Moving head Disk Mechanism. HDD Pictures 11/13/2014. CS341: Operating System

Windows NT File System. Outline. Hardware Basics. Ausgewählte Betriebssysteme Institut Betriebssysteme Fakultät Informatik

New Technologies File System (NTFS) Priscilla Oppenheimer. Copyright 2008 Priscilla Oppenheimer

OPTIMIZE DMA CONFIGURATION IN ENCRYPTION USE CASE. Guillène Ribière, CEO, System Architect

760 Veterans Circle, Warminster, PA Technical Proposal. Submitted by: ACT/Technico 760 Veterans Circle Warminster, PA

Outline. Windows NT File System. Hardware Basics. Win2K File System Formats. NTFS Cluster Sizes NTFS

Republic Polytechnic School of Information and Communications Technology C226 Operating System Concepts. Module Curriculum

Chapter 12: Mass-Storage Systems

BEST PRACTICES GUIDE: VMware on Nimble Storage

SecureSwitch: BIOS-Assisted Isolation and Switch between Trusted and Untrusted Commodity OSes!

Hardware RAID vs. Software RAID: Which Implementation is Best for my Application?

Top Ten Questions. to Ask Your Primary Storage Provider About Their Data Efficiency. May Copyright 2014 Permabit Technology Corporation

Virtualization Technologies and Blackboard: The Future of Blackboard Software on Multi-Core Technologies

Trends in Application Recovery. Andreas Schwegmann, HP

NVMe TM and PCIe SSDs NVMe TM Management Interface

FlashSoft Software from SanDisk : Accelerating Virtual Infrastructures

MaxDeploy Hyper- Converged Reference Architecture Solution Brief

InfiniBand Software and Protocols Enable Seamless Off-the-shelf Applications Deployment

COS 318: Operating Systems

Restoration Technologies. Mike Fishman / EMC Corp.

How VERITAS Storage Foundation TM for Windows Compliments Microsoft Windows Server 2003

Windows Server 2008 Essentials. Installation, Deployment and Management

<Insert Picture Here>

Active Directory Compatibility with ExtremeZ-IP

Oracle Exadata: The World s Fastest Database Machine Exadata Database Machine Architecture

Sizing and Best Practices for Deploying Microsoft Exchange Server 2010 on VMware vsphere and Dell EqualLogic Storage

Microsoft Windows Internals, Fourth Edition: Microsoft Windows Server 2003, Windows XR and Windows 2000

USB 2.0 Flash Drive User Manual

An Oracle White Paper July Oracle ACFS

Implementing the Hadoop Distributed File System Protocol on OneFS Jeff Hughes EMC Isilon

Best practices for Implementing Lotus Domino in a Storage Area Network (SAN) Environment

Choices for implementing SMB 3 on non Windows Servers Dilip Naik HvNAS Pty Ltd Australians good at NAS protocols!

Linux Powered Storage:

Ultra-Scalable Storage Provides Low Cost Virtualization Solutions

Encrypted File Systems. Don Porter CSE 506

x86 ISA Modifications to support Virtual Machines

Distributed File System Choices: Red Hat Storage, GFS2 & pnfs

Maginatics Cloud Storage Platform Feature Primer

Solaris For The Modern Data Center. Taking Advantage of Solaris 11 Features

Windows Host Utilities Installation and Setup Guide

Database Hardware Selection Guidelines

Distributed File Systems

Intel DPDK Boosts Server Appliance Performance White Paper

Windows Server 2008 R2 Essentials

Survey of Filesystems for Embedded Linux. Presented by Gene Sally CELF

Configuring Windows Server 2008 Active Directory

Databases Acceleration with Non Volatile Memory File System (NVMFS) PRESENTATION TITLE GOES HERE Saeed Raja SanDisk Inc.

owncloud Architecture Overview

IBM Tivoli Composite Application Manager for Microsoft Applications: Microsoft Hyper-V Server Agent Version Fix Pack 2.

Sawmill Log Analyzer Best Practices!! Page 1 of 6. Sawmill Log Analyzer Best Practices

Object-based SCM: An Efficient Interface for Storage Class Memories

In-memory database systems, NVDIMMs and data durability

Scalable Storage for Life Sciences

The Lagopus SDN Software Switch. 3.1 SDN and OpenFlow. 3. Cloud Computing Technology

Review from last time. CS 537 Lecture 3 OS Structure. OS structure. What you should learn from this lecture

SAN TECHNICAL - DETAILS/ SPECIFICATIONS

Network Attached Storage. Jinfeng Yang Oct/19/2015

Ultimate Guide to Oracle Storage

File System Management

Storage Management Services Administration Guide

Storage Architectures for Big Data in the Cloud

Virtualization. Dr. Yingwu Zhu

VDI Optimization Real World Learnings. Russ Fellows, Evaluator Group

Transcription:

Storage Class Memory Support in the Windows Operating System Neal Christiansen Principal Development Lead Microsoft nealch@microsoft.com

What is Storage Class Memory? Paradigm Shift: A non-volatile storage medium with RAM-like performance characteristics - Low latency/high bandwidth. Resides on the memory bus Underlying technology does not matter Several different terms in use: Storage Class Memory (SCM) Direct Access Storage (DAS) Byte Addressable Storage (BAS) Persistent Memory (PM) Non-Volatile Memory (NVM) 2

NVDIMM-N NVDIMM-N is an example of this new type of storage Has DRAM and Flash on DIMM module DRAM contents saved to Flash on power fail Requires per module or central backup power source Requires Specific platform support Available today Source: Viking Technology 3

Standardization Application/OS SNIA Driver Stack Software ASWG SPD ACPI Firmware UEFI 3 NVDIMM 2,5 1 Controller 4 Platform Discrete/S hared Energy Source ASWG USWG JEDEC Purpose Body 1 UEFI Persistent Memory Type (UEFI 2.5) UEFI Standards Working Group 2 ACPI Persistent Memory Type, NFIT, ACPI Namespace Object for NVDIMM devices (ACPI 6.0) ACPI Standards Working Group 3 Identification for NVDIMM devices (DDR4 SPD Document Release 3) JEDEC SPD TG 4 Standard interface to NVDIMM-N (Byte-Addressable Energy-Backed Interface Specification) JEDEC TG456_2 5 NVDIMM-N Health and management data (Microsoft _DSM for JEDEC Byte-Addressable Energy- Backed Interface NVDIMMs) Microsoft 4

SCM Storage Drivers New driver model SCM Bus Driver Enumerates the physical and logical SCM devices on the system SCM Disk Drivers Driver for logical SCM devices Storage abstraction layer to rest of the OS Hardware-specific Can support both standards or vendor-specific driver New interfaces to expose byte addressable storage functionality and to support SCM management 5

Windows Goals for Storage Class Memory 1. Support zero-copy access to persistent memory 2. Most existing user-mode applications will run without modification 3. Provide an option to support 100% backward compatibility Introduces new types of failure modes 4. Make available sector granular failure modes for application compatibility 6

BTT Block Translation Table Algorithm created by Intel Provides sector level atomicity of writes No sub-sector torn writes On power loss either see contents of old sector or new sector Maintains compatibility with existing applications that have built-in assumptions around storage failure patterns SCM Storage Drivers will support BTT May have an option to disable 7

File Systems and Storage Class Memory SCM is a disruptive technology Customers want the fastest performance System software is in the way! Customers want application compatibility Can be conflicting goals 8

A Storage Class Memory Aware File Systems for Windows A volume can be in one of the following modes: Block mode DAS mode The mode is chosen at format time 9

Block Mode Volumes Maintains existing storage semantics All IO operations traverse the storage stack to the SCM storage driver Shorter path length through storage stack Fully compatible with existing applications Supported by all Windows file systems Works with existing file system and storage filters 10

DAS Mode Volumes Introduces new storage concepts Memory mapped files provide applications with zero copy access to SCM Maximizes performance Some existing functionality is lost DAS mode will be supported by both the NTFS and ReFS file systems 11

Block Mode Access Direct Access Application Application Application Section Standard Raw Disk Access Standard File API Standard File API User Mode Kernel Mode File System Cached IO SCM Capable File System with Cache Manager Memory Mappings SCM Driver File System Metadata Non-cached IO SCM Driver Storage Class Memory ( SCM ) 12

Memory Mapped IO in DAS mode On DAS formatted volumes creation of a memory mapped section will map directly to SCM hardware No change to existing memory mapping APIs When an application creates a memory mapped section: The memory manager asks the File System if the section should be created in DAS mode The FS returns YES when: The volume resides on SCM hardware The volume has been formatted for DAS mode 13

Memory Mapped IO in DAS mode When a DAS mode section is requested MM asks the file system for the physical memory ranges for a given offset and length of the file The file system translates the given file offset and length into one or more volume relative extents (sector offset and length) The file system then asks the storage stack to translate these extents into physical memory ranges MM then updates is paging tables for the section which maps directly to the persistent storage 14

Memory Mapped IO in DAS mode This is true zero-copy access to storage An application has direct access to persistent memory BTT is not used An application may see new failure patterns on power loss or system crash No paging reads or paging writes will be generated 15

Cached IO in DAS mode When cached IO is requested for a file on a DAS enabled volume the Windows cache manager will create a DAS enabled cache map The cache manager will then copy directly between the user s buffer and SCM Cached IO has one-copy access to storage 16

Cached IO in DAS mode Cached IO is coherent with memory mapped IO BTT is not used An application may see new failure patterns on power loss or system crash As in the Memory Mapped IO case, no paging reads or paging writes will be generated 17

Non-cached IO in DAS Mode Will send IO operations down the storage stack to the SCM storage driver Will use BTT Maintains existing storage semantics for application compatibility 18

File System Metadata in DAS Mode File system metadata files will operate in block mode Meaning paging reads/writes will be generated for all FS metadata operations Needed to maintain existing ordered write guarantees for write-ahead logging One or more metadata files may switch to DAS mode access in the future 19

Impacts to File System Functionality in DAS Mode Direct access to storage by applications eliminates the traditional hook points that file systems use to implement various features Following is functionality that can not be supported on DAS enabled volumes: No NTFS encryption support No NTFS compression support No NTFS TxF support No ReFS integrity stream support No ReFS cluster band support No ReFS block cloning support No volume encryption support via bitlocker It is expected that SCM vendors will provide hardware encryption in the future No volume snapshot support via volsnap No mirrored or parity storage support via spaces or dynamic volumes 20

Impacts to File System Functionality in DAS Mode Functionality that is not currently supported but can be supported in the future: Sparse files For writeable memory mapped files the file system no longer knows when the file has been modified The following file system features are now updated at the time the file is memory mapped Updating the file s modification time Marking the file as modified in the USN Journal Signaling directory change notification 21

File System Filters File system filters are drivers that layer above the file system and can interact with all operations as they come into and out of the file system Filters have the ability to augment file system functionality Example classes of filters: Anti-virus, replication, HSM, encryption, compression, quota, activity monitor, etc. 22

File System Filters in DAS Mode To minimize compatibility issues: No existing filter will receive notification when a DAS volume is mounted At filter registration time filters will indicate via a new registration flag if they understand DAS mode semantics 23

Compatibility Issues with Filters in DAS Mode Data Transformation Filters There is no opportunity for these filters (ex: encryption and compression) to do their work Anti-virus filters Minimally impacted because scanning is performed on file open and close Detecting when a file is modified will need to be updated Watch for creation of writeable mapped sections 24

Intel NVML Library Open source library implemented by Intel Defines a set of application API s for directly manipulating files on SCM hardware Available for Linux today via GitHub Microsoft is working with Intel on a Windows port 25

Questions? 26