-
公开(公告)号:US12282655B2
公开(公告)日:2025-04-22
申请号:US18163612
申请日:2023-02-02
Applicant: Lemon Inc.
Inventor: Ping Zhou , Longxiao Li , Peng Xu , Kan Frankie Fan , Chaohong Hu , Fei Liu , Hui Zhang , Di Xu
IPC: G06F3/06
Abstract: A method for adaptive mapping for data compression includes determining an input/output (I/O) request pattern, dynamically switching between a segment mapping mode and a flat hash table mapping mode based on the determined I/O request pattern, updating a shared mapping table for the segment mapping mode and the flat hash table mapping mode, and adjusting an entry of the mapping table based on the determined I/O request pattern and a status of the entry.
-
公开(公告)号:US12093175B2
公开(公告)日:2024-09-17
申请号:US18053908
申请日:2022-11-09
Applicant: Lemon Inc.
Inventor: Peng Xu , Ping Zhou , Chaohong Hu , Fei Liu , Changyou Xu , Kan Frankie Fan
IPC: G06F12/08 , G06F12/02 , G06F12/0804
CPC classification number: G06F12/0804 , G06F12/0246 , G06F12/0292 , G06F2212/7201
Abstract: Described are examples for storing data on a storage device, including storing, in a live write stream cache, one or more logical blocks (LBs) corresponding to a data segment, writing, for each LB in the data segment, a cache element of a cache entry that points to the LB in the live write stream cache, where the cache entry includes multiple cache elements corresponding to the multiple LBs of the data segment, writing, for the cache entry, a table entry in a mapping table that points to the cache entry, and when a storage policy is triggered for the cache entry, writing the multiple LBs, pointed to by each cache element of the cache entry, to a stream for storing as contiguous LBs on the storage device, and updating the table entry to point to a physical address of a first LB of the contiguous LBs on the storage device.
-
公开(公告)号:US20240248793A1
公开(公告)日:2024-07-25
申请号:US18582490
申请日:2024-02-20
Applicant: Lemon Inc.
Inventor: Peng Xu , Fei Liu , Kyoungryun Bae , Jinhyuk Kim , Prathamesh Amritkar , Dengcheng Zhu , Wei Tang , Sheng Qiu
IPC: G06F11/10
CPC classification number: G06F11/1004 , G06F11/1016 , G06F11/1068
Abstract: A computing system for verifying data integrity is provided, including a host device comprising a memory controller, and a storage device. The memory controller receives original data blocks, each having an associated initial CRC value. The memory controller then segments and recombines the data blocks into logic blocks. The storage device is configured to write the logic blocks to its non-volatile memory of the storage device in the write operation, calculate a new logic block (LB) CRC value for each logic block, and calculate a combined LB CRC value. After the write operation, the memory controller combines duplicated copies of a given CRC value for each of the original data blocks, then combines them together to calculate a combined segments CRC value, and compares the combined segments CRC value to the combined LB CRC value. When the combined CRC values match, a verification response is generated verifying data integrity.
-
公开(公告)号:US20230418512A1
公开(公告)日:2023-12-28
申请号:US18462108
申请日:2023-09-06
Applicant: Lemon Inc. , Douyin Vision Co., Ltd.
IPC: G06F3/06
CPC classification number: G06F3/0655 , G06F3/0613 , G06F3/067
Abstract: Solutions are presented to reduce a number of data transfers between a host system and a storage device by utilizing a file path to identify data to be processed, thus enabling an offloading engine to independently locate the file and read corresponding data.
-
公开(公告)号:US20230229358A1
公开(公告)日:2023-07-20
申请号:US18189153
申请日:2023-03-23
Applicant: Lemon Inc.
Inventor: Peng Xu , Fei Liu , Kyoungryun Bae , Hyungjin Im , Jinhyuk Kim , Kyung Ho Kim , Prathamesh Amritkar , Chaohong Hu
IPC: G06F3/06
CPC classification number: G06F3/0659 , G06F3/0673 , G06F3/0604
Abstract: A zoned namespace (ZNS) storage computing device includes a processor, and non-volatile memory comprising a plurality of zones including a given zone. The processor is configured to execute a zone writing program to receive zone write commands, and responsive to receiving the zone write commands, execute the zone write commands on the given zone of the non-volatile memory of the storage computing device in an order specified by zone write sequence numbers included in a zone descriptor for the given zone.
-
公开(公告)号:US12204777B2
公开(公告)日:2025-01-21
申请号:US18187088
申请日:2023-03-21
Applicant: Lemon Inc.
Inventor: Ping Zhou , Kan Frankie Fan , Chaohong Hu , Longxiao Li , Hui Zhang , Fei Liu
IPC: G06F3/06
Abstract: Systems and methods for space allocation for block device compression are provided. In particular, a computing device may receive an allocation request to write the compressed data, select a range list adequate for serving the allocation request from a plurality of range list, dequeue a range entry from the selected range list to allocate free space for the compressed data, and allocate the free space corresponding to the range entry to the compressed data to serve the allocation request.
-
公开(公告)号:US20240137318A1
公开(公告)日:2024-04-25
申请号:US18518361
申请日:2023-11-22
Applicant: Lemon Inc.
Inventor: Peng Xu , Yan Sun , Fei Liu , Kyoungryun Bae
IPC: H04L47/12 , G06N20/00 , H04L67/1097
CPC classification number: H04L47/12 , G06N20/00 , H04L67/1097
Abstract: A computing system including one or more processing devices configured to detect a congestion condition occurring at a first storage node located in a storage network of a distributed storage system. The one or more processing devices are further configured to obtain respective first access rate data for a first plurality of data objects stored at the first storage node. Based at least in part on the first access rate data, the one or more processing devices are further configured to flag a first data object as a high-access-rate data object. The one or more processing devices are further configured to compute a transfer path between the first storage node and a second storage node in the storage network. The one or more processing devices are further configured to transfer the high-access-rate data object from the first storage node to the second storage node along the transfer path.
-
公开(公告)号:US20230401124A1
公开(公告)日:2023-12-14
申请号:US18449213
申请日:2023-08-14
Applicant: Lemon Inc. , Beijing Volcano Engine Technology Co., Ltd.
Inventor: Peng Xu , Fei Liu , Kyoungryun Bae , Jinhyuk Kim , Hyungjin Im , Kyung Ho Kim , Prathamesh Amritkar , Chaohong Hu , Ken Hu
CPC classification number: G06F11/1068 , G06F11/0793 , G06F11/076 , G06F11/3058
Abstract: Media scans to test the integrity of data stored in non-volatile storage are weighted to improve the efficiency of the scans and preserve operating bandwidth of the corresponding device.
-
公开(公告)号:US12271612B2
公开(公告)日:2025-04-08
申请号:US18108351
申请日:2023-02-10
Applicant: Lemon Inc.
Inventor: Chul Lee , Ping Zhou , Hui Frankie Zhang , Fei Liu
Abstract: A method for accessing blocks of a solid state drive is described. A starting position is received, where the starting position identifies a first block of a contiguous block region within a namespace of the solid state drive. The contiguous block region is to be accessed according to a single input/output operation and the namespace comprises two dimensions of logical address space with respective indices for indexing blocks within a corresponding dimension of the logical address space. A first dimensional identifier that identifies a size of the contiguous block region in a first dimension of the namespace is received. A second dimensional identifier that identifies a size of the contiguous block region in a second dimension of the namespace is received. Blocks of the contiguous block region are accessed in response to the single input/output operation according to the starting position, the first dimensional identifier, and the second dimensional identifier.
-
公开(公告)号:US12189969B2
公开(公告)日:2025-01-07
申请号:US18066973
申请日:2022-12-15
Applicant: Lemon Inc.
Inventor: Ping Zhou , Kan Frankie Fan , Chaohong Hu , Longxiao Li , Peng Xu , Fei Liu , Hui Zhang
Abstract: A system and method are described to efficiently allocate memory space with low latency overhead by allocating blocks of non-volatile memory on a storage device according to a tree data structure comprising a plurality of counter sets, each counter set including one or a plurality of counters indicating numbers of unallocated blocks of memory space within the non-volatile memory.
-
-
-
-
-
-
-
-
-