Patents by Inventor Vinay DEVADAS
Vinay DEVADAS has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Publication number: 20250147694Abstract: Techniques are provided for implementing write ordering for persistent memory. A set of actions are identified for commitment to persistent memory of a node for executing an operation upon the persistent memory. An episode is created to comprise a first subset of actions of the set of actions that can be committed to the persistent memory in any order with respect to one another such that a consistent state of the persistent memory can be reconstructed in the event of a crash of the node during execution of the operation. The first subset of actions within the episode are committed to the persistent memory and further execution of the operation is blocked until the episode completes.Type: ApplicationFiled: November 11, 2024Publication date: May 8, 2025Inventors: Ram Kesavan, Matthew Fontaine Curtis-Maury, Abdul Basit, Vinay Devadas, Ananthan Subramanian
-
Publication number: 20250117362Abstract: Techniques are provided for coordinating snapshot operations across multiple file systems. A notification may be received that a snapshot of data stored across a persistent memory file system and a storage file system is to be generated. Forwarding, of modify operations from a persistent memory tier to a file system tier for execution through the storage file system, may be enabled. Framing may be initiated to notify the storage file system of blocks within the persistent memory file system that comprise more up-to-date data than corresponding blocks within the storage file system. In response to the framing completing, a consistency point operation is performed to create the snapshot and to create a snapshot image as part of the snapshot.Type: ApplicationFiled: December 16, 2024Publication date: April 10, 2025Inventors: Ananthan Subramanian, Matthew Fontaine Curtis-Maury, Ram Kesavan, Rupa Natarajan, Vinay Devadas
-
Patent number: 12248376Abstract: Techniques are provided for maintaining and recomputing reference counts in a persistent memory file system of a node. Primary reference counts are maintained for pages within persistent memory of the node. In response to receiving a first operation to link a page into a persistent memory file system of the persistent memory, a primary reference count of the page is incremented before linking the page into the persistent memory file system. In response to receiving a second operation to unlink the page from the persistent memory file system, the page is unlinked from the persistent memory file system before the primary reference count is decremented. Upon the node recovering from a crash, the persistent memory file system is traversed in order to update shadow reference counts for the pages with correct reference count values, which are used to overwrite the primary reference counts with the correct reference count values.Type: GrantFiled: April 1, 2024Date of Patent: March 11, 2025Assignee: NetApp, Inc.Inventors: Ananthan Subramanian, Matthew Fontaine Curtis-Maury, Vinay Devadas
-
Publication number: 20250038756Abstract: Techniques are provided for implementing a file system format for persistent memory. A node, comprising persistent memory, receives an operation comprising a file identifier and file system instance information. A list of file system info objects are evaluated to identify a file system info object matching the file system instance information. An inofile, identified by the file system info object as being associated with inodes of files within an instance of the file system targeted by the operation, is traversed to identify an inode matching the file identifier. If the inode comprises an indicator that the file is tiered into the persistent memory, then the inode it utilized to facilitate execution of the operation upon the persistent memory. Otherwise, the operation is routed to a storage file system tier for execution by a storage file system upon storage associated with the node.Type: ApplicationFiled: October 14, 2024Publication date: January 30, 2025Inventors: Ram Kesavan, Matthew Fontaine Curtis-Maury, Abdul Basit, Vinay Devadas, Ananthan Subramanian, Mark Smith
-
Patent number: 12169472Abstract: Techniques are provided for coordinating snapshot operations across multiple file systems. A notification may be received that a snapshot of data stored across a persistent memory file system and a storage file system is to be generated. Forwarding, of modify operations from a persistent memory tier to a file system tier for execution through the storage file system, may be enabled. Framing may be initiated to notify the storage file system of blocks within the persistent memory file system that comprise more up-to-date data than corresponding blocks within the storage file system. In response to the framing completing, a consistency point operation is performed to create the snapshot and to create a snapshot image as part of the snapshot.Type: GrantFiled: July 31, 2023Date of Patent: December 17, 2024Assignee: NetApp, Inc.Inventors: Ananthan Subramanian, Matthew Fontaine Curtis-Maury, Ram Kesavan, Rupa Natarajan, Vinay Devadas
-
Publication number: 20240411645Abstract: Techniques are provided for persistent memory file system reconciliation. As part of the persistent memory file system reconciliation, high level file system metadata associated with a persistent memory file system of persistent memory is reconciled. Client access to the persistent memory file system is inaccessible until reconciliation of the high level file system metadata has completed. A first scanner is executed to traverse pages of the persistent memory in order to fix local inconsistencies associated with the pages. A local inconsistency of a first set of metadata or data of a page is fixed using a second set of metadata or data of the page. The first scanner is executed asynchronously in parallel with processing client I/O directed to the persistent memory file system.Type: ApplicationFiled: August 19, 2024Publication date: December 12, 2024Inventors: Matthew Fontaine Curtis-Maury, Ram Kesavan, Ananthan Subramanian, Abdul Basit, Vinay Devadas, Yash Hetal Trivedi
-
Publication number: 20240411579Abstract: In some examples, a system creates a partition map that maps partitions of a data bucket to respective virtual processors executed in a cluster of computer nodes. Responsive to a request to access a data object in the data bucket, the system identifies which partition contains metadata for the data object based on a key associated with the data object, and identifies, based on the identified partition and using the partition map, a virtual processor that has the metadata for the data object. Responsive to a migration of a first virtual processor from a first to a second computer node, the system updates a virtual processor-computer node map that maps the respective virtual processors to corresponding computer nodes of the cluster of computer nodes, where the partition map remains unchanged in response to the migration of the first virtual processor from the first computer node to the second computer node.Type: ApplicationFiled: June 12, 2023Publication date: December 12, 2024Inventors: Vinay Devadas, Srikant Varadan, Christopher Joseph Corsi, Shrikant Pramod Mether
-
Publication number: 20240411726Abstract: Presented herein are methods, non-transitory computer readable media, and devices for integrating a hybrid model of fine-grained locking and data-partitioning wherein fine-grained locking is added to existing systems that are based on hierarchical data-partitioning in order in increase parallelism with minimal code re-write.Type: ApplicationFiled: June 12, 2024Publication date: December 12, 2024Inventors: Matthew Curtis-Maury, Vinay Devadas, Aditya Kulkarni
-
Publication number: 20240385991Abstract: Techniques are provided for supporting a lookup structure for a file system implementing hierarchical reference counting. A write operation to write data to a page maintained by the file system is received. A lookup within a lookup structure is performed using information related to the page in order to identify a lookup entry within the lookup structure. A hash generation count within the lookup entry is compared to a file system info generation count within a file system info object for a volume associated with the page. In response to the lookup entry generation count not matching the file system info generation count, a file system tree of the file system is traversed to determine a reference count for the page, and the write operation is implemented based upon the reference count. Otherwise, the lookup entry is utilized to access the page for processing the write operation.Type: ApplicationFiled: July 29, 2024Publication date: November 21, 2024Inventors: Matthew Fontaine Curtis-Maury, Vinay Devadas, Yash Hetal Trivedi
-
Patent number: 12141481Abstract: Techniques are provided for implementing write ordering for persistent memory. A set of actions are identified for commitment to persistent memory of a node for executing an operation upon the persistent memory. An episode is created to comprise a first subset of actions of the set of actions that can be committed to the persistent memory in any order with respect to one another such that a consistent state of the persistent memory can be reconstructed in the event of a crash of the node during execution of the operation. The first subset of actions within the episode are committed to the persistent memory and further execution of the operation is blocked until the episode completes.Type: GrantFiled: November 20, 2023Date of Patent: November 12, 2024Assignee: NetApp, Inc.Inventors: Ram Kesavan, Matthew Fontaine Curtis-Maury, Abdul Basit, Vinay Devadas, Ananthan Subramanian
-
Publication number: 20240354144Abstract: In some examples, a first computing node receives a write request, where the first computing node is part of a collection of multiple computing nodes, and a plurality of virtual processors are executable in the multiple computing nodes to manage access of data in a shared storage system. In response to the write request, a first virtual processor at the first computing node sends, to a second virtual processor, a request for metadata stored by the second virtual processor. The first virtual processor updates an intent structure in a nonvolatile memory with information indicating an intent to write data for the write request. In response to the metadata received at the first virtual processor from the second virtual processor, a write of the data is initiated to cause storage of the data in the shared storage system.Type: ApplicationFiled: April 24, 2023Publication date: October 24, 2024Inventors: Vinay Devadas, Srikant Varadan, Christopher Joseph Corsi
-
Patent number: 12119836Abstract: Techniques are provided for compacting indirect blocks. For example, an object is represented as a structure including data blocks within which data of the object is stored and indirect blocks including block numbers of where the data blocks are located in storage. Block numbers within a set of indirect blocks are compacted into a compacted indirect block including a base block number, a count of additional block numbers after the base block number in the compacted indirect block, and a pattern of the block numbers in the compacted indirect block. The compacted indirect block is stored into memory for processing access operations to the object. Storing compacted indirect blocks into memory allows for more block numbers to be stored within memory.Type: GrantFiled: March 20, 2023Date of Patent: October 15, 2024Assignee: NetApp, Inc.Inventors: Ram Kesavan, Matthew Fontaine Curtis-Maury, Abdul Basit, Vinay Devadas, Ananthan Subramanian, Mark Smith
-
Publication number: 20240319921Abstract: Techniques are provided for forwarding operations to bypass persistent memory. A modify operation, targeting an object, may be received at a persistent memory tier of a node. If a forwarding policy indicates that forwarding is not enabled for the modify operation and the target object, then the modify operation is executed through a persistent memory file system. If the forwarding policy indicates that forwarding is enabled for the modify operation and the target object, then the modify operation is forwarded to a file system tier as a forwarded operation for execution through a storage file system.Type: ApplicationFiled: June 3, 2024Publication date: September 26, 2024Inventors: Ananthan Subramanian, Matthew Fontaine Curtis-Maury, Vinay Devadas, Bulli Venkata Rajesh Vipperla
-
Patent number: 12099872Abstract: Presented herein are methods, non-transitory computer readable media, and devices for optimizing thread assignment to schedulers, avoid starvation of individual data partitions, and maximize parallelism in the presence of hierarchical data partitioning are disclosed, which include: partitioning, by a network storage server, a scheduler servicing a data partitioned system into a plurality of autonomous schedulers; determining what fraction of thread resources in the data partitioned system at least one of the plurality of autonomous schedulers is to receive; and determining, with minimal synchronization, when it is time to allow the at least one of the plurality of autonomous schedulers servicing a coarse hierarchy to run.Type: GrantFiled: October 24, 2021Date of Patent: September 24, 2024Assignee: NetApp, Inc.Inventors: Vinay Devadas, Matthew Curtis-Maury, Aditya Kulkarni
-
Publication number: 20240303198Abstract: Techniques are provided for atomic writes for persistent memory. In response to receiving a write operation, a new per-page structure with a new page block number is allocated. New data of the write operation is persisted to a new page of the persistent memory having the new page block number, and the new per-page structure is persisted to the persistent memory. If the write operation targets a hole after the new data and the new per-page structure have been persisted, then a new per-page structure identifier of the new per-page structure is inserted into a parent indirect page of a page comprising the new data. If the write operation targets old data after the new data and the new per-page structure have been persisted, then an old per-page structure of the old data is updated with the new page block number.Type: ApplicationFiled: May 21, 2024Publication date: September 12, 2024Inventors: Matthew Fontaine Curtis-Maury, Vinay Devadas, Ananthan Subramanian, Ram Kesavan
-
Patent number: 12066897Abstract: Techniques are provided for persistent memory file system reconciliation. As part of the persistent memory file system reconciliation, high level file system metadata associated with a persistent memory file system of persistent memory is reconciled. Client access to the persistent memory file system is inaccessible until reconciliation of the high level file system metadata has completed. A first scanner is executed to traverse pages of the persistent memory in order to fix local inconsistencies associated with the pages. A local inconsistency of a first set of metadata or data of a page is fixed using a second set of metadata or data of the page. The first scanner is executed asynchronously in parallel with processing client I/O directed to the persistent memory file system.Type: GrantFiled: April 18, 2023Date of Patent: August 20, 2024Assignee: NetApp, Inc.Inventors: Matthew Fontaine Curtis-Maury, Ram Kesavan, Ananthan Subramanian, Abdul Basit, Vinay Devadas, Yash Hetal Trivedi
-
Patent number: 12050553Abstract: Techniques are provided for supporting a lookup structure for a file system implementing hierarchical reference counting. A write operation to write data to a page maintained by the file system is received. A lookup within a lookup structure is performed using information related to the page in order to identify a lookup entry within the lookup structure. A hash generation count within the lookup entry is compared to a file system info generation count within a file system info object for a volume associated with the page. In response to the lookup entry generation count not matching the file system info generation count, a file system tree of the file system is traversed to determine a reference count for the page, and the write operation is implemented based upon the reference count. Otherwise, the lookup entry is utilized to access the page for processing the write operation.Type: GrantFiled: October 1, 2020Date of Patent: July 30, 2024Assignee: NetApp, Inc.Inventors: Matthew Fontaine Curtis-Maury, Vinay Devadas, Yash Hetal Trivedi
-
Publication number: 20240241801Abstract: Techniques are provided for maintaining and recomputing reference counts in a persistent memory file system of a node. Primary reference counts are maintained for pages within persistent memory of the node. In response to receiving a first operation to link a page into a persistent memory file system of the persistent memory, a primary reference count of the page is incremented before linking the page into the persistent memory file system. In response to receiving a second operation to unlink the page from the persistent memory file system, the page is unlinked from the persistent memory file system before the primary reference count is decremented. Upon the node recovering from a crash, the persistent memory file system is traversed in order to update shadow reference counts for the pages with correct reference count values, which are used to overwrite the primary reference counts with the correct reference count values.Type: ApplicationFiled: April 1, 2024Publication date: July 18, 2024Inventors: Ananthan Subramanian, Matthew Fontaine Curtis-Maury, Vinay Devadas
-
Patent number: 12013818Abstract: Presented herein are methods, non-transitory computer readable media, and devices for integrating a hybrid model of fine-grained locking and data-partitioning wherein fine-grained locking is added to existing systems that are based on hierarchical data-partitioning in order in increase parallelism with minimal code re-write.Type: GrantFiled: April 11, 2022Date of Patent: June 18, 2024Assignee: NetApp, Inc.Inventors: Matthew Curtis-Maury, Vinay Devadas, Aditya Kulkarni
-
Patent number: 12001724Abstract: Techniques are provided for forwarding operations to bypass persistent memory. A modify operation, targeting an object, may be received at a persistent memory tier of a node. If a forwarding policy indicates that forwarding is not enabled for the modify operation and the target object, then the modify operation is executed through a persistent memory file system. If the forwarding policy indicates that forwarding is enabled for the modify operation and the target object, then the modify operation is forwarded to a file system tier as a forwarded operation for execution through a storage file system.Type: GrantFiled: December 28, 2022Date of Patent: June 4, 2024Assignee: NetApp, Inc.Inventors: Ananthan Subramanian, Matthew Fontaine Curtis-Maury, Vinay Devadas, Bulli Venkata Rajesh Vipperla