Patents Assigned to PrimaryIO, Inc.
  • Patent number: 10761735
    Abstract: An embodiment of the invention provides a method comprising: permitting an application to be aware to be aware of a distribution of a data of the application across a cache and a permanent storage device. The cache comprises a solid state device and the permanent storage device comprises a disk or a memory. In yet another embodiment of the invention, an apparatus comprises: a caching application program interface configured to permit an application to be aware to be aware of a distribution of a data of the application across a cache and a permanent storage device. A caching application program interface is configured to determine an input/output strategy to consume the data based on the distribution of the data.
    Type: Grant
    Filed: December 4, 2018
    Date of Patent: September 1, 2020
    Assignee: PrimaryIO, Inc.
    Inventors: Sumit Kumar, Sumit Kapoor
  • Patent number: 10656839
    Abstract: In an embodiment of the invention, a method comprises: recording application-level heuristics and IO-level (input/output-level) heuristics; correlating and analyzing the application-level heuristics and IO-level heuristics; and based on an analysis and correlation of the application-level heuristics and IO-level heuristics, generating a policy for achieving optimal application performance. In another embodiment of the invention, an apparatus comprises: a system configured to record application-level heuristics and IO-level heuristics, to correlate and analyze the application-level heuristics and IO-level heuristics, and based on an analysis and correlation of the application-level heuristics and IO-level heuristics, to generate a policy for achieving optimal application performance.
    Type: Grant
    Filed: November 19, 2018
    Date of Patent: May 19, 2020
    Assignee: PrimaryIO, Inc.
    Inventor: Murali Nagaraj
  • Patent number: 10146437
    Abstract: An embodiment of the invention provides a method comprising: permitting an application to be aware to be aware of a distribution of a data of the application across a cache and a permanent storage device. The cache comprises a solid state device and the permanent storage device comprises a disk or a memory. In yet another embodiment of the invention, an apparatus comprises: a caching application program interface configured to permit an application to be aware to be aware of a distribution of a data of the application across a cache and a permanent storage device. A caching application program interface is configured to determine an input/output strategy to consume the data based on the distribution of the data.
    Type: Grant
    Filed: March 17, 2015
    Date of Patent: December 4, 2018
    Assignee: PrimaryIO, Inc.
    Inventors: Sumit Kumar, Sumit Kapoor
  • Patent number: 10133488
    Abstract: In an embodiment of the invention, a method comprises: recording application-level heuristics and IO-level (input/output-level) heuristics; correlating and analyzing the application-level heuristics and IO-level heuristics; and based on an analysis and correlation of the application-level heuristics and IO-level heuristics, generating a policy for achieving optimal application performance. In another embodiment of the invention, an apparatus comprises: a system configured to record application-level heuristics and IO-level heuristics, to correlate and analyze the application-level heuristics and IO-level heuristics, and based on an analysis and correlation of the application-level heuristics and IO-level heuristics, to generate a policy for achieving optimal application performance.
    Type: Grant
    Filed: March 17, 2015
    Date of Patent: November 20, 2018
    Assignee: PrimaryIO, Inc.
    Inventor: Murali Nagaraj
  • Patent number: 9792057
    Abstract: An embodiment of the invention provides an apparatus comprising: a hypervisor comprising a virtual caching appliance (VCA) and an intermediate multipathing module that interfaces with VCA; wherein the intermediate multipathing module is configured to pass an I/O request from a virtual machine to the VCA; and wherein the VCA is configured to determine if the I/O request is to be passed from the VCA to a solid state storage or if the I/O request is to be passed from the VCA to a hard disk storage. Another embodiment of the invention provides a method comprising: passing an I/O request from a virtual machine to a virtual caching appliance (VCA) in a hypervisor; and determining if the I/O request is to be passed from the VCA to a solid state storage or if the I/O request is to be passed from the VCA to a hard disk storage.
    Type: Grant
    Filed: September 23, 2015
    Date of Patent: October 17, 2017
    Assignee: PrimaryIO, Inc.
    Inventors: Harish Chandra Pujari, Anand Mitra, Dilip Madhusudan Ranade, Prasad Gajanan Joshi
  • Patent number: 9740410
    Abstract: In an embodiment of the invention, an apparatus comprises: a hard disk drive input/output (HDD I/O) optimizer configured to receive a primary input/output (I/O) operation stream for a given cylinder in a permanent storage device, configured to schedule a secondary input/output (I/O) operation stream that is pending on the same given cylinder or that is pending on an adjacent cylinder that is adjacent to the given cylinder, and configured to allocate free space from the same given cylinder or from the adjacent cylinder for the secondary I/O operation stream that is pending.
    Type: Grant
    Filed: March 17, 2015
    Date of Patent: August 22, 2017
    Assignee: PrimaryIO, Inc.
    Inventors: Anand Mitra, Dilip Ranade, Sumit Kumar, Sumit Kapoor
  • Patent number: 9645901
    Abstract: An embodiment of the invention provides a method comprising: performing an application write; storing the application write in a local cache; performing a system call to request an underlying storage system to persist any application writes that are not yet persisted; and in response to the system call, copying the application write in the cache to a shared permanent storage. In another embodiment of the invention, an apparatus comprises: an application configured to perform an application write; a cache software configured to store the application write in a local cache; wherein the application is configured to perform a system call to request an underlying storage system to persist any application writes that are not yet persisted; and in response to the system call, the cache software is configured to copy the application write in the cache to a shared permanent storage.
    Type: Grant
    Filed: March 17, 2015
    Date of Patent: May 9, 2017
    Assignee: PrimaryIO, Inc.
    Inventor: Murali Nagaraj