Patents by Inventor Vishwanath MARAM

Vishwanath MARAM 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: 20240143517
    Abstract: Systems and methods for data protection. In some embodiments, a computational storage device includes a controller circuit, a first compute function of a first application, a second compute function of the first application, a common memory area; and a persistent storage device. The controller circuit may be configured: to receive a first request from a host, the first request defining a first allocated function data memory region, for the first compute function; to receive a first memory access request, from the first compute function, for a first memory location in the common memory area and outside the first allocated function data memory region; and to deny the first memory access request.
    Type: Application
    Filed: January 20, 2023
    Publication date: May 2, 2024
    Inventors: Madhava Krishnan RAMANATHAN, Naga Sanjana BIKONDA, Shashwat JAIN, Vishwanath MARAM
  • Publication number: 20240134534
    Abstract: A high endurance persistent storage device. In some embodiments, the persistent storage device includes: a controller circuit; persistent storage media, connected to the controller circuit; nonvolatile memory, connected to the controller circuit; and volatile memory, connected to the controller circuit.
    Type: Application
    Filed: January 23, 2023
    Publication date: April 25, 2024
    Inventors: Madhava Krishnan RAMANATHAN, Naga Sanjana BIKONDA, Shashwat JAIN, Vishwanath MARAM
  • Patent number: 11960757
    Abstract: A flash translation layer with a rewind feature, and a method of operation. In some embodiments, the method includes: receiving, by a storage device, a first write command, for a first logical address; performing, by the storage device, a write to flash memory at a first physical address, corresponding to the first logical address; receiving, by the storage device, a first bookmarking command, for the first logical address; receiving, by the storage device, a second write command, for the first logical address; performing, by the storage device, a write to flash memory at a second physical address, corresponding to the first logical address; receiving, by the storage device, a first rewind command, for the first logical address; receiving, by the storage device, a read command, for the first logical address; and retrieving, by the storage device, in response to the read command, data from the first physical address.
    Type: Grant
    Filed: December 10, 2021
    Date of Patent: April 16, 2024
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Gayathiri Venkataraman, Vishwanath Maram
  • Publication number: 20240069965
    Abstract: Systems and methods for executing compute functions are disclosed. A processing circuit may be configured to: receive a first task from a first application, wherein the first task identifies a first compute function and a second compute function; determine a first order of execution of the first compute function and the second compute function based on first information in the first task; and execute the first compute function and the second compute function according to the first order.
    Type: Application
    Filed: August 25, 2023
    Publication date: February 29, 2024
    Inventors: Madhava Krishnan Ramanathan, Shashwat Jain, Changwoo Min, Vishwanath Maram, Naga Sanjana Bikonda
  • Publication number: 20230384981
    Abstract: A system includes a virtual computational storage emulation module configured to provide a virtual computational storage device. The system further includes a storage element, where the virtual computational storage emulation module is configured to store data associated with the virtual computational storage device at the storage element. The system further includes a compute element. The virtual computational storage emulation module is configured to send a compute request associated with the virtual computational storage device to the compute element.
    Type: Application
    Filed: August 3, 2023
    Publication date: November 30, 2023
    Inventors: Gayathiri Venkataraman, Vishwanath Maram, Matthew Shaun Bryson
  • Publication number: 20230333983
    Abstract: Provided is a data storage system including a host including a host cache portion of a mirror cache, the host cache portion for storing metadata indicating a location of a data node that is stored in a kernel cache portion of the mirror cache, and a storage device including the kernel cache portion located in a common memory area.
    Type: Application
    Filed: June 13, 2022
    Publication date: October 19, 2023
    Inventors: Naga Sanjana Bikonda, Wookhee Kim, Madhava Krishnan Ramanathan, Changwoo Min, Vishwanath Maram
  • Publication number: 20230333984
    Abstract: Provided is a method of data storage, the method including receiving, at a host of a key-value store, a request to access a data node stored on a storage device of the key-value store, locating an address corresponding to the data node in a host cache on the host, and determining that the data node is in a kernel cache on the storage device.
    Type: Application
    Filed: June 13, 2022
    Publication date: October 19, 2023
    Inventors: Naga Sanjana Bikonda, Wookhee Kim, Madhava Krishnan Ramanathan, Changwoo Min, Vishwanath Maram
  • Patent number: 11755251
    Abstract: A system includes a virtual computational storage emulation module configured to provide a virtual computational storage device. The system further includes a storage element, where the virtual computational storage emulation module is configured to store data associated with the virtual computational storage device at the storage element. The system further includes a compute element. The virtual computational storage emulation module is configured to send a compute request associated with the virtual computational storage device to the compute element.
    Type: Grant
    Filed: June 17, 2021
    Date of Patent: September 12, 2023
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Gayathiri Venkataraman, Vishwanath Maram, Matthew Shaun Bryson
  • Publication number: 20230110067
    Abstract: A method may include receiving, at a storage device, an input and/or output (I/O) request comprising a device indication performing a determination, at the storage device, that the device indication indicates the storage device, and servicing, by the storage device, the I/O request based on the determination. The device indication may include an address for the I/O request. The method may include installing a second storage device in the storage system. The second storage device may be installed seamlessly. The first and second storage devices may be peer devices. The method may further including receiving, at the first storage device, a second I/O request including a second device indication, performing a second determination, by the first storage device, that the second device indication indicates the second storage device, and forwarding, by the first storage device, the second I/O request to the second storage device based on the second determination.
    Type: Application
    Filed: February 4, 2022
    Publication date: April 13, 2023
    Inventors: Veronica LAGRANGE MOUTINHO DOS REIS, Vishwanath MARAM, Matthew BRYSON, Gayathri VENKATARAMAN
  • Publication number: 20230106882
    Abstract: A flash translation layer with a rewind feature, and a method of operation. In some embodiments, the method includes: receiving, by a storage device, a first write command, for a first logical address; performing, by the storage device, a write to flash memory at a first physical address, corresponding to the first logical address; receiving, by the storage device, a first bookmarking command, for the first logical address; receiving, by the storage device, a second write command, for the first logical address; performing, by the storage device, a write to flash memory at a second physical address, corresponding to the first logical address; receiving, by the storage device, a first rewind command, for the first logical address; receiving, by the storage device, a read command, for the first logical address; and retrieving, by the storage device, in response to the read command, data from the first physical address.
    Type: Application
    Filed: December 10, 2021
    Publication date: April 6, 2023
    Inventors: Gayathiri VENKATARAMAN, Vishwanath MARAM
  • Publication number: 20220398123
    Abstract: A storage device is disclosed. The storage device may include first storage for a data. A controller may manage access to the data in the storage. A second storage may store a first identifier and a second identifier, the first identifier for an event and the second identifier for a program. A processor may receive the event and execute the program based at least in part on the event table.
    Type: Application
    Filed: November 22, 2021
    Publication date: December 15, 2022
    Inventors: Gayathiri VENKATARAMAN, Vishwanath MARAM, Oscar P. PINTO
  • Publication number: 20220391148
    Abstract: A system includes a virtual computational storage emulation module configured to provide a virtual computational storage device. The system further includes a storage element, where the virtual computational storage emulation module is configured to store data associated with the virtual computational storage device at the storage element. The system further includes a compute element. The virtual computational storage emulation module is configured to send a compute request associated with the virtual computational storage device to the compute element.
    Type: Application
    Filed: June 17, 2021
    Publication date: December 8, 2022
    Inventors: Gayathiri Venkataraman, Vishwanath Maram, Matthew Shaun Bryson
  • Publication number: 20220308770
    Abstract: A method includes receiving, at a controller of a storage device, a command reserving a program slot of a processing device of the storage device to an application. The method further includes storing, by the controller of the storage device, an association between the program slot and the application. The method further includes receiving, at the controller of the storage device, a request to load the application into the execution slot. The method further includes loading, by the controller of the storage device, the application into the program slot based on the association and the request. The method further includes executing, at the processing device of the storage device, the application in the program slot.
    Type: Application
    Filed: October 1, 2021
    Publication date: September 29, 2022
    Inventors: Gayathiri VENKATARAMAN, Vishwanath MARAM, Matthew Shaun BRYSON, Sungwook RYU
  • Publication number: 20220278963
    Abstract: A storage device includes: a storage memory component to store requested data in encrypted format; and a storage controller connected to the storage memory component over a storage interface, the storage controller to: receive a command and a decryption override indicator from a host device over a host interface to read the requested data from the storage memory component; retrieve the requested data from the storage memory component in the encrypted format in response to the command; and transmit the requested data in the encrypted format to a destination storage device over a transport layer in response to the decryption override indicator.
    Type: Application
    Filed: April 16, 2021
    Publication date: September 1, 2022
    Inventors: Gayathiri Venkataraman, Matthew Shaun Bryson, Vishwanath Maram
  • Publication number: 20220188316
    Abstract: A system is described. The system may include a storage device, which may include storage for data and a controller to write the data to the storage and to read the data from the storage. The storage device may also include an accelerator implementing at least one operation on files stored on the storage device. These operations may be drawn from a set including a merge operation and a split operation.
    Type: Application
    Filed: February 17, 2021
    Publication date: June 16, 2022
    Inventors: Veronica LAGRANGE MOUTINHO DOS REIS, Vishwanath MARAM, Huan LI, Howard BUTLER, Oscar P. PINTO
  • Publication number: 20220066821
    Abstract: A system is described. The system may include a processor. Software may run on the processor to build a batch request, which may include at least a first request and a second request. The system may also include a storage device and a computational storage unit associated with the storage device, which may be configured to execute the batch request.
    Type: Application
    Filed: June 25, 2021
    Publication date: March 3, 2022
    Inventors: Oscar P. PINTO, Matthew BRYSON, Vishwanath MARAM, Son T. PHAM
  • Publication number: 20220066799
    Abstract: A device is described. The device may include a connector to connect the device to a component. The device may also include a computational storage unit. A receiver may receive a discovery request from a discovery service, and a transmitter may transmit a discovery response to the discovery service, the discovery response including information about the computational storage unit.
    Type: Application
    Filed: April 19, 2021
    Publication date: March 3, 2022
    Inventors: Oscar P. PINTO, Vishwanath MARAM, Hingkwan HUEN, Danqing JIN, William MARTIN
  • Patent number: 11194496
    Abstract: Deduplication functionality is provided for a key-value solid-state drive (KVSSD) that includes a storage space and a controller. The storage space contains first and second containers. The first container includes a first virtual space and stores a key and at least one dedup key associated with the key. Each dedup key corresponds to a block of user data, and each block includes a predetermined size. The second container includes a second virtual space and stores each dedup key, the block of user data associated with the dedup key and metadata associated with the block of user data. The controller determines whether a block of user data received by the KVSSD is a duplicate block of data stored in the second container by determining whether a dedup key for the received block of user data matches a stored dedup key in the first container.
    Type: Grant
    Filed: December 17, 2019
    Date of Patent: December 7, 2021
    Inventors: Kumar Kanteti, Vishwanath Maram
  • Publication number: 20210232336
    Abstract: Provided is a storage device including a first non-volatile storage media having first performance capabilities; a second non-volatile storage media having second performance capabilities different from the first performance capabilities; and a device controller configured to report to a host software the first performance capabilities, the second performance capabilities, changes to the first performance capabilities, and changes to the second performance capabilities.
    Type: Application
    Filed: April 12, 2021
    Publication date: July 29, 2021
    Inventors: Gunneswara R. Marripudi, Vishwanath Maram
  • Patent number: 11003381
    Abstract: Provided is a storage device including a first non-volatile storage media having first performance capabilities; a second non-volatile storage media having second performance capabilities different from the first performance capabilities; and a device controller configured to report to a host software the first performance capabilities, the second performance capabilities, changes to the first performance capabilities, and changes to the second performance capabilities.
    Type: Grant
    Filed: May 5, 2017
    Date of Patent: May 11, 2021
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Gunneswara R. Marripudi, Vishwanath Maram