Patents by Inventor Jingpei Yang

Jingpei Yang 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).

  • Patent number: 10949341
    Abstract: According to one general aspect, an apparatus may include a storage memory to store a plurality of key-value pairs. The apparatus may include at least one snapshot counter configured to store an operation number associated with a respective snapshot of the plurality of key-value pairs. The apparatus may include a snapshot data structure configured to identify, for at least one key-value pair, which, if any, snapshot(s) the respective key-value pair is associated with.
    Type: Grant
    Filed: November 1, 2018
    Date of Patent: March 16, 2021
    Inventors: Anahita Shayesteh, Jingpei Yang, Vijay Balakrishnan
  • Patent number: 10866905
    Abstract: Embodiments include a multi-stream storage device, a system including a multi-stream storage device, and a method, comprising: receiving an access to a multi-stream storage device; converting at least one parameter of the access into a stream identifier; and accessing the multi-stream storage device using the stream identifier.
    Type: Grant
    Filed: December 22, 2016
    Date of Patent: December 15, 2020
    Inventors: Rajinikanth Pandurangan, Changho Choi, Jingpei Yang
  • Patent number: 10824576
    Abstract: A multi-streaming memory system includes a memory, and a processor coupled to the memory, the processor executing a software component that is configured to identify multiple attributes that are each related to logical block addresses (LBAs), and that each correspond to each of a plurality of streams of data writes, evaluate an importance factor for each of the attributes for each of the streams, and clustering two or more of the LBAs by assigning a stream ID to each of the LBAs based on all of the importance factors for each of the LBAs and the assigned stream.
    Type: Grant
    Filed: March 6, 2019
    Date of Patent: November 3, 2020
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Janki S. Bhimani, Jingpei Yang, Changho Choi, Jianjian Huo
  • Publication number: 20200249839
    Abstract: A Solid State Drive (SSD) is disclosed. The SSD may include flash memory to store data and may support a plurality of device streams. A SSD controller may manage reading and writing data to the flash memory, and may store a submission queue and a chunk-to-stream mapper. A flash translation layer may include a receiver to receive a write command, an LBA mapper to map an LBA to a chunk identifier (ID), stream selection logic to select a stream ID based on the chunk ID, a stream ID adder to add the stream ID to the write command, a queuer to place the chunk ID in the submission queue, and background logic to update the chunk-to-stream mapper after the chunk ID is removed from the submission queue.
    Type: Application
    Filed: April 22, 2020
    Publication date: August 6, 2020
    Inventors: Jingpei YANG, Changho CHOI, Rajinikanth PANDURANGAN, Vijay BALAKRISHNAN, Ramaraj PANDIAN
  • Patent number: 10719354
    Abstract: A system for scheduling the execution of container workloads from a series of applications and a series of containers of each application. The system includes a processor and a non-transitory computer-readable storage medium having instructions stored thereon, which, when executed by the processor, cause the system to calculate a conflict penalty matrix including a conflict penalty for each potential combination of container workloads of the plurality of containers, and calculate a minimum total conflict penalty of the container workloads and a number of workload batches for executing the container workloads. The number of workload batches is associated with the minimum total conflict penalty. The instructions, when executed by the processor, further cause the system to assign the container workloads to the workload batches based on the minimum total conflict penalty and the number of the workload batches.
    Type: Grant
    Filed: November 22, 2017
    Date of Patent: July 21, 2020
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Janki Sharadkumar Bhimani, Anand Subramanian, Jingpei Yang, Vijay Balakrishnan
  • Publication number: 20200225883
    Abstract: A system for parallel computing leveraging the use of a key value solid state drive. The system including a modified set of compiler directives that enable the use of parallel compute and data threads. The system may further include a concurrency manager to ensure that the parallel data threads are operated in a thread-safe manner.
    Type: Application
    Filed: July 31, 2019
    Publication date: July 16, 2020
    Inventors: Janki Bhimani, Jingpei Yang, Changho Choi
  • Patent number: 10656838
    Abstract: A Solid State Drive (SSD) is disclosed. The SSD may include flash memory to store data and may support a plurality of device streams. A SSD controller may manage reading and writing data to the flash memory, and may store a submission queue and a chunk-to-stream mapper. A flash translation layer may include a receiver to receive a write command, an LBA mapper to map an LBA to a chunk identifier (ID), stream selection logic to select a stream ID based on the chunk ID, a stream ID adder to add the stream ID to the write command, a queuer to place the chunk ID in the submission queue, and background logic to update the chunk-to-stream mapper after the chunk ID is removed from the submission queue.
    Type: Grant
    Filed: April 27, 2017
    Date of Patent: May 19, 2020
    Assignee: SAMSUNG ELECTRONICS CO., LTD.
    Inventors: Jingpei Yang, Changho Choi, Rajinikanth Pandurangan, Vijay Balakrishnan, Ramaraj Pandian
  • Publication number: 20200065239
    Abstract: According to one general aspect, an apparatus may include a storage memory to store a plurality of key-value pairs. The apparatus may include at least one snapshot counter configured to store an operation number associated with a respective snapshot of the plurality of key-value pairs. The apparatus may include a snapshot data structure configured to identify, for at least one key-value pair, which, if any, snapshot(s) the respective key-value pair is associated with.
    Type: Application
    Filed: November 1, 2018
    Publication date: February 27, 2020
    Inventors: Anahita SHAYESTEH, Jingpei YANG, Vijay BALAKRISHNAN
  • Publication number: 20190205274
    Abstract: A multi-streaming memory system includes a memory, and a processor coupled to the memory, the processor executing a software component that is configured to identify multiple attributes that are each related to logical block addresses (LBAs), and that each correspond to each of a plurality of streams of data writes, evaluate an importance factor for each of the attributes for each of the streams, and clustering two or more of the LBAs by assigning a stream ID to each of the LBAs based on all of the importance factors for each of the LBAs and the assigned stream.
    Type: Application
    Filed: March 6, 2019
    Publication date: July 4, 2019
    Inventors: Janki S. Bhimani, Jingpei Yang, Changho Choi, Jianjian Huo
  • Publication number: 20190196713
    Abstract: A Solid State Drive (SSD) is disclosed. The SSD may include flash memory to store data and may support a plurality of device streams. A SSD controller may manage reading and writing data to the flash memory, and may store a submission queue and a chunk-to-stream mapper. A flash translation layer may include a receiver to receive a write command, an LBA mapper to map an LBA to a chunk identifier (ID), stream selection logic to select a stream ID based on the chunk ID, a stream ID adder to add the stream ID to the write command, a queuer to place the chunk ID in the submission queue, and background logic to update the chunk-to-stream mapper after the chunk ID is removed from the submission queue.
    Type: Application
    Filed: April 27, 2017
    Publication date: June 27, 2019
    Inventors: Jingpei YANG, Changho CHOI, Rajinikanth PANDURANGAN, Vijay BALAKRISHNAN, Ramaraj PANDIAN
  • Patent number: 10324832
    Abstract: Embodiments include a multi-stream storage device, a system including a multi-stream storage device, and a method, comprising: receiving an access to a logical address associated with a multi-stream storage device; converting the logical address into a stream identifier; and accessing the multi-stream storage device using the logical address and the stream identifier.
    Type: Grant
    Filed: August 5, 2016
    Date of Patent: June 18, 2019
    Assignee: SAMSUNG ELECTRONICS CO., LTD.
    Inventors: Jingpei Yang, Changho Choi, Rajinikanth Pandurangan
  • Patent number: 10282324
    Abstract: A multi-streaming memory system includes a memory, and a processor coupled to the memory, the processor executing a software component that is configured to identify multiple attributes that are each related to logical block addresses (LBAs), and that each correspond to each of a plurality of streams of data writes, evaluate an importance factor for each of the attributes for each of the streams, and clustering two or more of the LBAs by assigning a stream ID to each of the LBAs based on all of the importance factors for each of the LBAs and the assigned stream.
    Type: Grant
    Filed: November 4, 2016
    Date of Patent: May 7, 2019
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Janki S. Bhimani, Jingpei Yang, Changho Choi, Jianjian Huo
  • Patent number: 10210024
    Abstract: A system includes a plurality of storage drives configured to store data associated with at least one of homogeneous and heterogeneous applications running in containers; and a controller configured to balance workloads of the containers by grouping the containers based on characteristics of the workloads of the containers.
    Type: Grant
    Filed: December 14, 2016
    Date of Patent: February 19, 2019
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Janki Bhimani, Hingkwan Huen, Jingpei Yang, Manu Awasthi, Vijay Balakrishnan, Jason Martineau
  • Publication number: 20180365055
    Abstract: A system for scheduling the execution of container workloads from a series of applications and a series of containers of each application. The system includes a processor and a non-transitory computer-readable storage medium having instructions stored thereon, which, when executed by the processor, cause the system to calculate a conflict penalty matrix including a conflict penalty for each potential combination of container workloads of the plurality of containers, and calculate a minimum total conflict penalty of the container workloads and a number of workload batches for executing the container workloads. The number of workload batches is associated with the minimum total conflict penalty. The instructions, when executed by the processor, further cause the system to assign the container workloads to the workload batches based on the minimum total conflict penalty and the number of the workload batches.
    Type: Application
    Filed: November 22, 2017
    Publication date: December 20, 2018
    Inventors: Janki Sharadkumar Bhimani, Anand Subramanian, Jingpei Yang, Vijay Balakrishnan
  • Publication number: 20180321855
    Abstract: A storage device is disclosed. The storage device may include storage to store data, which may include a first storage of a first type and a second storage of a second type. The storage device may support a number of device streams, some of which associated with the first storage and some associated with the second storage. The storage device may also include a streaming capabilities analyzer that may inventory the streaming capabilities for the storage device. Finally, the storage device may include a transmitter to transmit the streaming capabilities of the storage device to a storage manager.
    Type: Application
    Filed: August 29, 2017
    Publication date: November 8, 2018
    Inventors: Jason MARTINEAU, Changho CHOI, Rajinikanth PANDURANGAN, Jingpei YANG
  • Patent number: 10073630
    Abstract: A storage module may be configured to perform log storage operations on a storage log maintained on a non-volatile storage medium. An I/O client may utilize storage services of the storage module to maintain an upper-level log. The storage module may be configured to coordinate log storage and/or management operations between the storage log and the upper-level log. The coordination may include adapting a segment size of the logs to reduce write amplification. The coordination may further include coordinating validity information between log layers, adapting log grooming operations to reduce storage recovery overhead, defragmenting upper-level log data within the storage address space, preventing fragmentation of upper-level log data, and so on. The storage module may coordinate log operations by use of log coordination messages communicated between log layers.
    Type: Grant
    Filed: November 8, 2013
    Date of Patent: September 11, 2018
    Assignee: SanDisk Technologies LLC
    Inventors: Jingpei Yang, Nisha Talagala, Swaminathan Sundararaman, Ned Plasson, Gregory N. Gillis
  • Publication number: 20180060125
    Abstract: A system includes a plurality of storage drives configured to store data associated with at least one of homogeneous and heterogeneous applications running in containers; and a controller configured to balance workloads of the containers by grouping the containers based on characteristics of the workloads of the containers.
    Type: Application
    Filed: December 14, 2016
    Publication date: March 1, 2018
    Inventors: Janki Bhimani, Hingkwan Huen, Jingpei Yang, Manu Awasthi, Vijay Balakrishnan, Jason Martineau
  • Publication number: 20170344491
    Abstract: Embodiments include a multi-stream storage device, a system including a multi-stream storage device, and a method, comprising: receiving an access to a multi-stream storage device; converting at least one parameter of the access into a stream identifier; and accessing the multi-stream storage device using the stream identifier.
    Type: Application
    Filed: December 22, 2016
    Publication date: November 30, 2017
    Inventors: Rajinikanth PANDURANGAN, Changho CHOI, Jingpei YANG
  • Publication number: 20170344470
    Abstract: Embodiments include a multi-stream storage device, a system including a multi-stream storage device, and a method, comprising: receiving an access to a logical address associated with a multi-stream storage device; converting the logical address into a stream identifier; and accessing the multi-stream storage device using the logical address and the stream identifier.
    Type: Application
    Filed: August 5, 2016
    Publication date: November 30, 2017
    Inventors: Jingpei YANG, Changho CHOI, Rajinikanth PANDURANGAN
  • Patent number: 9767032
    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: Grant
    Filed: December 5, 2013
    Date of Patent: September 19, 2017
    Assignee: SanDisk Technologies LLC
    Inventors: Nisha Talagala, Ned D. Plasson, Jingpei Yang, Robert Wood, Swaminathan Sundararaman, Gregory N. Gillis