Patents by Inventor Swaminathan Sundararaman

Swaminathan Sundararaman 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: 20140310499
    Abstract: A data services module performs log storage operations in response to requests by storing data on one or more storage devices, and appending information pertaining to the requests to a separate metadata log. A log order of the metadata log may correspond to an order in which the requests were received, regardless of the order in which data of the requests are written to the storage devices. The requests may correspond to identifiers of a logical address space. The data services module implements an any-to-any translation layer configured to map identifiers of the logical address space to the stored data. The virtualization module may include a metadata management module configured to checkpoint the translation layer metadata by, inter alia, appending aggregate, checkpoint entries to the metadata log. The data services module may leverage the translation layer between the logical identifiers and underlying storage locations to efficiently implement logical manipulation operations.
    Type: Application
    Filed: April 15, 2014
    Publication date: October 16, 2014
    Inventors: Swaminathan Sundararaman, Nisha Talagala, Sriram Subramanian
  • Publication number: 20140281307
    Abstract: Techniques are disclosed relating to handling snapshot data for a storage device. In one embodiment, a computing system maintains information that indicates the state of data associated with an application at a particular point in time. In this embodiment, the computing system assigns an epoch number to a current epoch, where the current epoch is an interval between the particular point in time and a future point in time. In this embodiment, the computing system writes, during the current epoch, a block of data to the storage device. In this embodiment, the writing the block of data includes storing the epoch number with the block of data.
    Type: Application
    Filed: March 14, 2013
    Publication date: September 18, 2014
    Applicant: FUSION-IO, INC.
    Inventors: James G. Peterson, Nisha Talagala, Swaminathan Sundararaman, Sriram Subramanian
  • Publication number: 20140281260
    Abstract: Techniques are disclosed relating to determining statistics associated with the storage of data on a medium. In one embodiment, a computing system maintains a management statistic for a storage device, and uses the management statistic as a proxy for a workload statistic for a storage block within the storage device. In some embodiments, the storage block is a first storage block included within a second storage block of the storage device. In one embodiment, the management statistic is a timestamp indicative of when a write operation was performed for the second storage block; the workload statistic is a write frequency of the first storage block. In one embodiment, the management statistic is a number of read operations performed for the second storage block; the using includes deriving, based on the number of read operation, a read frequency for the first storage block as the workload statistic.
    Type: Application
    Filed: March 14, 2013
    Publication date: September 18, 2014
    Applicant: FUSION-IO, INC.
    Inventors: James G. Peterson, Swaminathan Sundararaman
  • Patent number: 8782344
    Abstract: A cache layer leverages a logical address space and storage metadata of a storage layer (e.g., storage layer) to cache data of a backing store. The cache layer maintains access metadata to track data characteristics of logical identifiers in the logical address space, including accesses pertaining to data that is not in the cache. The access metadata may be separate and distinct from the storage metadata maintained by the storage layer. The cache layer determines whether to admit data into the cache using the access metadata. Data may be admitted into the cache when the data satisfies cache admission criteria, which may include an access threshold and/or a sequentiality metric. Time-ordered history of the access metadata is used to identify important/useful blocks in the logical address space of the backing store that would be beneficial to cache.
    Type: Grant
    Filed: January 12, 2012
    Date of Patent: July 15, 2014
    Assignee: Fusion-io, Inc.
    Inventors: Nisha Talagala, Swaminathan Sundararaman, Amar Mudrankit
  • Publication number: 20140195480
    Abstract: Apparatuses, systems, methods, and computer program products are disclosed for persistent memory management. Persistent memory management may include providing a persistent data structure stored at least partially in volatile memory configured to ensure persistence of the data structure in a non-volatile memory medium. Persistent memory management may include replicating a persistent data structure in volatile memory buffers of at least two non-volatile storage devices. Persistent memory management may include preserving a snapshot copy of data in association with completion of a barrier operation for the data. Persistent memory management may include determining which interface of a plurality of supported interfaces is to be used to flush data from a processor complex.
    Type: Application
    Filed: March 12, 2014
    Publication date: July 10, 2014
    Applicant: Fusion-io, Inc.
    Inventors: Nisha Talagala, Swaminathan Sundararaman, David Flynn
  • Publication number: 20140195564
    Abstract: Apparatuses, systems, methods, and computer program products are disclosed for a persistent data structure. A method includes associating a logical identifier with a data structure. A method includes writing data of a data structure to a first region of a volatile memory module. A volatile memory module may be configured to ensure that data is preserved in response to a trigger. A method includes copying data of a data structure from a volatile memory module to a non-volatile storage medium such that the data of the data structure remains associated with a logical identifier.
    Type: Application
    Filed: March 12, 2014
    Publication date: July 10, 2014
    Applicant: Fusion-io, Inc.
    Inventors: Nisha Talagala, Swaminathan Sundararaman, David Flynn
  • Publication number: 20140156965
    Abstract: Techniques are disclosed relating to reclaiming data on recording media. In one embodiment, an apparatus has a solid-state memory array including a plurality of blocks. The solid-state memory array may implement a cache for one or more storage devices. Respective operational effects are determined relating to reclaiming ones of the plurality of blocks. One of the plurality of blocks is selected as a candidate for reclamation based on the determined operational effects, and the selected block is reclaimed. In some embodiments, the determined operational effects for a given block indicate a number of write operations to be performed to reclaim the given block. In some embodiments, operational effects are determined based on criteria relating to assigned quality-of-service levels. In some embodiments, operational effects are determined based on information relating virtual storage units.
    Type: Application
    Filed: February 4, 2013
    Publication date: June 5, 2014
    Applicant: FUSION-IO, INC.
    Inventors: Jingpei Yang, Ned D. Plasson, Nisha Talagala, Dhananjoy Das, Swaminathan Sundararaman
  • Publication number: 20140119371
    Abstract: An information handling system is provided. The information handling system includes systems and methods for expanding the port count in a single Fibre Channel domain by adding modular Fibre Channel switches. Such a system includes a system enclosure that contains a plurality of Fibre Channel modules configured to send and receive Fibre Channel packets, the Fibre Channel modules providing a plurality of Fibre Channel ports and a switch processor coupled to the plurality of Fibre Channel ports and to a plurality of Ethernet ports. The switch processor is configured to apply a stacking header to Fibre Channel packets for transmission from one of the plurality of Ethernet ports over a stacking link to another switch processor in another system enclosure.
    Type: Application
    Filed: October 26, 2012
    Publication date: May 1, 2014
    Applicant: Dell Products L.P.
    Inventors: Hiren A. Desai, Haresh K. Shah, Krishnamurthy Subramanian, Swaminathan Sundararaman, Saikrishna M. Kotha
  • Publication number: 20140095775
    Abstract: A cache and/or storage module may be configured to reduce write amplification in a cache storage. Cache layer write amplification (CLWA) may occur due to an over-permissive admission policy. The cache module may be configured to reduce CLWA by configuring admission policies to avoid unnecessary writes. Admission policies may be predicated on access and/or sequentiality metrics. Flash layer write amplification (FLWA) may arise due to the write-once properties of the storage medium. FLWA may be reduced by delegating cache eviction functionality to the underlying storage layer. The cache and storage layers may be configured to communicate coordination information, which may be leveraged to improve the performance of cache and/or storage operations.
    Type: Application
    Filed: December 5, 2013
    Publication date: April 3, 2014
    Inventors: Nisha Talagala, Ned D. Plasson, Jingpai Yang, Robert Wood, Swaminathan Sundararaman, Gregory N. Gillis
  • Publication number: 20140089264
    Abstract: Apparatuses, systems, and methods are disclosed for snapshots of a non-volatile device. A method includes writing data in a sequential log structure for a non-volatile device. A method includes marking a point, in a sequential log structure, for a snapshot of data. A method includes preserving a logical-to-physical mapping for a snapshot based on a marked point and a temporal order for data in a sequential log structure.
    Type: Application
    Filed: July 11, 2013
    Publication date: March 27, 2014
    Inventors: Nisha Talagala, Swaminathan Sundararaman, Sriram Subramanian
  • Publication number: 20140089265
    Abstract: An apparatus, system, and method are disclosed for data management. The method includes writing data in a sequential log structure. The method also includes receiving a time sequence request from a client. The method further includes servicing the time sequence request based on a temporal order of the data in the sequential log structure.
    Type: Application
    Filed: March 14, 2013
    Publication date: March 27, 2014
    Applicant: FUSION-IO. INC.
    Inventors: Nisha Talagala, Swaminathan Sundararaman, Sriram Subramanian, James Peterson, David Flynn
  • Publication number: 20130332660
    Abstract: Apparatuses, systems, methods, and computer program products are disclosed for hybrid checkpointed memory. A method includes referencing data of a range of virtual memory of a host. The referenced data is already stored by a non-volatile medium. A method includes writing, to a non-volatile medium, data of a range of virtual memory that is not stored by the non-volatile medium. A method includes providing access to data of a range of virtual memory from a non-volatile medium using a persistent identifier associated with referenced data and written data.
    Type: Application
    Filed: March 5, 2013
    Publication date: December 12, 2013
    Applicant: FUSION-IO, INC.
    Inventors: Nisha Talagala, Swaminathan Sundararaman, Nick Piggin, Ashish Batwara, David Flynn
  • Publication number: 20130290945
    Abstract: An information handling system is provided. The information handling system includes one or more devices coupled together to route information between the one or more devices and other devices coupled thereto based on routing information stored in the one or more devices. The one or more devices includes a routing processor, one or more line cards coupled to the routing processor, the one or more line cards receiving the routing information from the routing processor for routing data packets to a destination, and a memory coupled to the routing processor. The routing processor is configured to create an active image having a current state of the routing information and create a standby image having the current state of the routing information, wherein the standby image requests the current state of the routing information from the active image using a key that is calculated using a portion of the routing information.
    Type: Application
    Filed: April 30, 2012
    Publication date: October 31, 2013
    Applicant: DELL PRODUCTS, L.P.
    Inventors: Vinay SAWAL, Swaminathan SUNDARARAMAN
  • Publication number: 20130275391
    Abstract: Apparatuses, systems, and methods are disclosed for data expiry. A method includes examining metadata associated with data in a non-volatile recording medium. A method includes expiring data from a non-volatile recording medium in response to metadata indicating that an expiration period for the data has been satisfied.
    Type: Application
    Filed: January 23, 2013
    Publication date: October 17, 2013
    Applicant: FUSION-IO, INC.
    Inventors: Ashish Batwara, Swaminathan Sundararaman, James Peterson, Nisha Talagala
  • Publication number: 20130275656
    Abstract: Apparatuses, systems, and methods are disclosed for a key-value store. A method includes encoding a key of a key-value pair into a logical address of a sparse logical address space for a non-volatile medium. A method includes mapping a logical address to a physical location in the non-volatile medium. A method includes storing a value of a key-value pair at a physical location.
    Type: Application
    Filed: August 20, 2012
    Publication date: October 17, 2013
    Applicant: FUSION-IO, INC.
    Inventors: Nisha Talagala, Swaminathan Sundararaman, Bharath Ramsundar, Ashish Batwara
  • Patent number: 8510597
    Abstract: In general, techniques are described for enabling a restartable file system. A computing device comprising a processor that executes an operating system may implement the techniques. The processor executes kernel and file system functions of the operating system to perform an operation, where both types of functions call each other to perform the operation. The operating system stores data identifying those of the kernel functions that called the file system functions. In response to determining that one of the file system functions that was called has failed, the operating system accesses the data to identify one of the kernel functions that most recently called one of the file system functions, and returns control to the identified one of the kernel functions without executing any of the file system functions called after the identified one of the kernel functions and prior to the one of the file system functions that failed.
    Type: Grant
    Filed: February 8, 2011
    Date of Patent: August 13, 2013
    Assignee: Wisconsin Alumni Research Foundation
    Inventors: Michael M. Swift, Andrea C. Arpaci-Dusseau, Remzi H. Arpaci-Dusseau, Swaminathan Sundararaman, Sriram Subramanian, Abhishek Rajimwale
  • Publication number: 20130185475
    Abstract: A cache module leverages a logical address space and storage metadata of a storage module (e.g., virtual storage module) to cache data of a backing store. The cache module maintains access metadata to track access characteristics of logical identifiers in the logical address space, including accesses pertaining to data that is not currently in the cache. The access metadata may be separate from the storage metadata maintained by the storage module. The cache module may calculate a performance metric of the cache based on profiling metadata, which may include portions of the access metadata. The cache module may determine predictive performance metrics of different cache configurations. An optimal cache configuration may be identified based on the predictive performance metrics.
    Type: Application
    Filed: February 22, 2013
    Publication date: July 18, 2013
    Applicant: Fusion-io, Inc.
    Inventors: Nisha Talagala, Swaminathan Sundararaman
  • Publication number: 20130185508
    Abstract: A cache layer leverages a logical address space and storage metadata of a storage layer (e.g., virtual storage layer) to cache data of a backing store. The cache layer maintains access metadata to track data characteristics of logical identifiers in the logical address space, including accesses pertaining to data that is not in the cache. The access metadata may be separate and distinct from the storage metadata maintained by the storage layer. The cache layer determines whether to admit data into the cache using the access metadata. Data may be admitted into the cache when the data satisfies cache admission criteria, which may include an access threshold and/or a sequentiality metric. Time-ordered history of the access metadata is used to identify important/useful blocks in the logical address space of the backing store that would be beneficial to cache.
    Type: Application
    Filed: January 12, 2012
    Publication date: July 18, 2013
    Applicant: FUSION-IO, INC.
    Inventors: Nisha Talagala, Swaminathan Sundararaman
  • Publication number: 20130185488
    Abstract: A cache module leverages storage metadata to cache data of a backing store on a non-volatile storage device. The cache module maintains access metadata pertaining to access characteristics of logical identifiers in the logical address space, including access characteristics of un-cached logical identifiers (e.g., logical identifiers associated with data that is not stored on the non-volatile storage device). The access metadata may be separate and/or distinct from the storage metadata. The cache module determines whether to admit data into the cache and/or evict data from the cache using the access metadata. A storage module may provide eviction candidates to the cache module. The cache module may select candidates for eviction. The storage module may leverage the eviction candidates to improve the performance of storage recovery and/or grooming operations.
    Type: Application
    Filed: February 22, 2013
    Publication date: July 18, 2013
    Applicant: Fusion-io, Inc.
    Inventors: Nisha Talagala, Swaminathan Sundararaman
  • Publication number: 20120204060
    Abstract: In general, techniques are described for enabling a restartable file system. A computing device comprising a processor that executes an operating system may implement the techniques. The processor executes kernel and file system functions of the operating system to perform an operation, where both types of functions call each other to perform the operation. The operating system stores data identifying those of the kernel functions that called the file system functions. In response to determining that one of the file system functions that was called has failed, the operating system accesses the data to identify one of the kernel functions that most recently called one of the file system functions, and returns control to the identified one of the kernel functions without executing any of the file system functions called after the identified one of the kernel functions and prior to the one of the file system functions that failed.
    Type: Application
    Filed: February 8, 2011
    Publication date: August 9, 2012
    Applicant: Wisconsin Alumni Research Foundation
    Inventors: Michael M. Swift, Andrea C. Arpaci-Dusseau, Remzi H. Arpaci-Dusseau, Swaminathan Sundararaman, Sriram Subramanian, Abhishek Rajimwale