Patents by Inventor Xigeng SUN
Xigeng SUN 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: 12585400Abstract: Caching write input/output (I/O) operations in a replica-based storage system. A write I/O operation is received from a consumer, and a corresponding replica list is identified. A first replica set is selected from the replica list for caching the I/O operation, and a first log corresponding to the I/O operation is added to a primary ring buffer of the first replica set. When the first log cannot be replicated to a secondary ring buffer of the first replica set, a second replica set is selected from the replica list for caching the I/O operation. A second log corresponding to the I/O operation is added to a primary ring buffer of the second replica set. Once the second log has been replicated to a secondary ring buffer of the second replica set, the I/O operation is acknowledged to the consumer, and the second log is de-staged to a backing store.Type: GrantFiled: March 4, 2024Date of Patent: March 24, 2026Assignee: Microsoft Technology Licensing, LLCInventors: Junxiang Wang, Vadim Makhervaks, Yingrui Tong, Sijia Huang, Yuxing Zhou, Zhihao Liu, Xigeng Sun, Bangzhu Zhu
-
Publication number: 20260064307Abstract: A system comprises a first computer system and a second computer system. The first computer system includes a processor and a computer-readable medium storing instructions executable to determine that a primary host in a replica set is unavailable, the replica set comprising a primary ring buffer and one or more secondary ring buffers stored across a plurality of hosts. The first computer system is further configured to choose a secondary host as a de-stage primary for the replica set and to communicate an election to the secondary host. The second computer system includes a processor and a computer-readable medium storing instructions executable to receive the election as the de-stage primary for the replica set, identify a ring buffer stored in persistent memory comprising logs replicated from the primary ring buffer, and de-stage the logs from the ring buffer to a backing store.Type: ApplicationFiled: November 11, 2025Publication date: March 5, 2026Inventors: Junxiang WANG, Vadim MAKHERVAKS, Yingrui TONG, Sijia HUANG, Yuxing ZHOU, Zhihao LIU, Xigeng SUN, Bangzhu ZHU
-
Patent number: 12541316Abstract: Methods and systems for transitioning write input/output (I/O) requests from a write-caching mode to a pass-through mode. The method includes determining when a condition has been met for transitioning the write I/O requests and de-staging one or more logs from a write cache to a backing store, where each log corresponds to a pending write I/O operation by a consumer. The method further includes determining when no log remains in the write cache for de-staging to the backing store and initiating the pass-through mode by routing new write I/O requests directly to the backing store instead of the write cache.Type: GrantFiled: March 4, 2024Date of Patent: February 3, 2026Assignee: Microsoft Technology Licensing, LLCInventors: Junxiang Wang, Xigeng Sun, Vadim Makhervaks, Sijia Huang, Yingrui Tong, Yuxing Zhou, Zhihao Liu, Bangzhu Zhu
-
Publication number: 20260003543Abstract: Requests for a write storage operation are stored in a ring buffer. The next available request is retrieved from the ring buffer. When the next available request comprises a write operation that overlaps in a logical address range with a previous request stored in the ring buffer, the next available request is suspended. The next available request and the previous request are merged to generate a single request that includes logical address ranges of the next available request and the previous request.Type: ApplicationFiled: September 5, 2025Publication date: January 1, 2026Inventors: Zhihao LIU, Xigeng SUN, Yingrui TONG, Sijia HUANG, Yuxing ZHOU, Junxiang WANG, Vadim MAKHERVAKS, Bangzhu ZHU
-
Publication number: 20250383936Abstract: Requests for a write storage operation are stored in a ring buffer. The write storage operations are executed using polling threads and cache de-stage threads. Dispatchers and worker threads are created for executing the polling threads and cache de-stage threads. Queue pairs for each pair of dispatchers and worker threads are generated. The queue pairs comprise a submission queue and a completion queue. The next available request is retrieved from the ring buffer. A scoring algorithm is used to load balance the queue pairs associated with the worker threads, the scoring algorithm operable to determine a score based a current depth of the submission queue and completion queue.Type: ApplicationFiled: June 14, 2024Publication date: December 18, 2025Inventors: Zhihao LIU, Xigeng SUN, Yingrui TONG, Sijia HUANG, Yuxing ZHOU, Junxiang WANG, Vadim MAKHERVAKS, Bangzhu ZHU
-
Patent number: 12430081Abstract: Requests for a write storage operation are stored in a ring buffer. The next available request is retrieved from the ring buffer. When the next available request comprises a write operation that overlaps in a logical address range with a previous request stored in the ring buffer, the next available request is suspended. The next available request and the previous request are merged to generate a single request that includes logical address ranges of the next available request and the previous request.Type: GrantFiled: June 14, 2024Date of Patent: September 30, 2025Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Zhihao Liu, Xigeng Sun, Yingrui Tong, Sijia Huang, Yuxing Zhou, Junxiang Wang, Vadim Makhervaks, Bangzhu Zhu
-
Publication number: 20250156322Abstract: A computer system and method are disclosed for replicating logs in a distributed environment. The method includes identifying a write input/output (I/O) operation and identifying a log to be replicated based on the write I/O operation. The log is then persisted to local non-volatile memory in the computer system. Subsequently, the log is replicated to multiple remote hosts, where each remote host of the plurality of remote hosts stores the log in its corresponding local non-volatile memory without de-staging the log to a backing store. The write I/O operation is committed once the log is replicated to at least a subset of the remote hosts that forms a quorum. Finally, the log is de-staged to the backing store after the write I/O operation is successfully committed.Type: ApplicationFiled: February 26, 2024Publication date: May 15, 2025Inventors: Yingrui TONG, Sijia HUANG, Vadim MAKHERVAKS, Yuxing ZHOU, Junxiang WANG, Zhihao LIU, Bangzhu ZHU, Xigeng SUN
-
Publication number: 20250156333Abstract: Methods and systems for transitioning write input/output (I/O) requests from a write-caching mode to a pass-through mode. The method includes determining when a condition has been met for transitioning the write I/O requests and de-staging one or more logs from a write cache to a backing store, where each log corresponds to a pending write I/O operation by a consumer. The method further includes determining when no log remains in the write cache for de-staging to the backing store and initiating the pass-through mode by routing new write I/O requests directly to the backing store instead of the write cache.Type: ApplicationFiled: March 4, 2024Publication date: May 15, 2025Inventors: Junxiang WANG, Xigeng SUN, Vadim MAKHERVAKS, Sijia HUANG, Yingrui TONG, Yuxing ZHOU, Zhihao LIU, Bangzhu ZHU
-
Publication number: 20250156104Abstract: Caching write input/output (I/O) operations in a replica-based storage system. A write I/O operation is received from a consumer, and a corresponding replica list is identified. A first replica set is selected from the replica list for caching the I/O operation, and a first log corresponding to the I/O operation is added to a primary ring buffer of the first replica set. When the first log cannot be replicated to a secondary ring buffer of the first replica set, a second replica set is selected from the replica list for caching the I/O operation. A second log corresponding to the I/O operation is added to a primary ring buffer of the second replica set. Once the second log has been replicated to a secondary ring buffer of the second replica set, the I/O operation is acknowledged to the consumer, and the second log is de-staged to a backing store.Type: ApplicationFiled: March 4, 2024Publication date: May 15, 2025Inventors: Junxiang WANG, Vadim MAKHERVAKS, Yingrui TONG, Sijia HUANG, Yuxing ZHOU, Zhihao LIU, Xigeng SUN, Bangzhu ZHU