Patents by Inventor Christopher Fretz
Christopher Fretz 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: 11714801Abstract: Methods and systems for execution of data operations in a queue are described. One method includes loading a pointer to a record in a lock-free ring buffer by an executing thread, as well as calculating an index from the pointer to a record to be processed and obtaining a header of the record to be processed. Based on the header, a state of the record to be processed is determined from among: a filled state, a filling state, a drained state, and a draining state. A candidate header is created which includes an updated state indicating that the record is in use by the executing thread. An atomic operation is performed to update the header of the record to the candidate header. Upon successful completion of the atomic operation to update the header of the record to the candidate header, a data operation is performed on the record.Type: GrantFiled: March 30, 2020Date of Patent: August 1, 2023Assignee: Target Brands, Inc.Inventors: Luis F. Stevens, Hrishikesh V. Prabhune, Christopher Fretz
-
Patent number: 11537453Abstract: Methods and systems for managing a circular queue, or ring buffer, are disclosed. One method includes storing data from a producer into the ring buffer, and receiving a data read request from a consumer from among a plurality of consumers subscribed to read data from the ring buffer. After obtaining data from a location in the ring buffer in response to the data read request, it is determined if the location has been overrun by the producer. If it is determined that the location has been overrun by the producer, the data is discarded by the consumer. Otherwise, the data is consumed. Depending on the outcome, a miss counter or a read counter may be incremented.Type: GrantFiled: March 30, 2020Date of Patent: December 27, 2022Assignee: Target Brands, Inc.Inventors: Luis F. Stevens, Hrishikesh V. Prabhune, Christopher Fretz
-
Publication number: 20220269675Abstract: Examples disclosed herein are relevant to configurations of hash tables. An example hash table includes is configured to be placed into a contiguous block of shared memory and be used across multiple processes. The hash table can include a memory layout having two logical tables: a metadata table and a storage array. In addition, a storage bitmap can be used to determine available memory locations in the storage array. Disclosed configurations can be suited for use in high-performance computing applications.Type: ApplicationFiled: May 11, 2022Publication date: August 25, 2022Inventors: Christopher Fretz, Hrishikesh V. Prabhune, Luis F. Stevens
-
Patent number: 11392414Abstract: A node management protocol is disclosed herein. The protocol can be used for task distribution in multi-node systems. The node management protocol can implement a cooperation-based task distribution algorithm that does not rely on consensus. When a task is ingested into a cluster of nodes, the nodes can compete to handle the task. A transport layer helps coordinate among nodes and facilitates the handling of work. A session expiry protocol handles node failures with the remaining nodes reassigning work.Type: GrantFiled: October 4, 2019Date of Patent: July 19, 2022Assignee: Target Brands, Inc.Inventors: Christopher Fretz, Hrishikesh V. Prabhune, Luis F. Stevens
-
Patent number: 11366807Abstract: Examples disclosed herein are relevant to configurations of hash tables. An example hash table includes is configured to be placed into a contiguous block of shared memory and be used across multiple processes. The hash table can include a memory layout having two logical tables: a metadata table and a storage array. In addition, a storage bitmap can be used to determine available memory locations in the storage array. Disclosed configurations can be suited for use in high-performance computing applications.Type: GrantFiled: October 4, 2019Date of Patent: June 21, 2022Assignee: Target Brands, Inc.Inventors: Christopher Fretz, Hrishikesh V. Prabhune, Luis F. Stevens
-
Patent number: 11347698Abstract: Examples disclosed herein are relevant to garbage collection for data structures, such as hash tables. The data structure can store garbage collection values for use during a garbage collection process. The garbage collection values can have a value indicating the occurrence of a poisoned status. Disclosed configurations can be suited for use in high-performance computing applications.Type: GrantFiled: October 4, 2019Date of Patent: May 31, 2022Assignee: Target Brands, Inc.Inventors: Christopher Fretz, Hrishikesh V. Prabhune, Luis F. Stevens
-
Publication number: 20210303375Abstract: Methods and systems for managing a circular queue, or ring buffer, are disclosed. One method includes storing data from a producer into the ring buffer, and receiving a data read request from a consumer from among a plurality of consumers subscribed to read data from the ring buffer. After obtaining data from a location in the ring buffer in response to the data read request, it is determined if the location has been overrun by the producer. If it is determined that the location has been overrun by the producer, the data is discarded by the consumer. Otherwise, the data is consumed. Depending on the outcome, a miss counter or a read counter may be incremented.Type: ApplicationFiled: March 30, 2020Publication date: September 30, 2021Inventors: LUIS F. STEVENS, HRISHIKESH V. PRABHUNE, CHRISTOPHER FRETZ
-
Publication number: 20210303551Abstract: Methods and systems for execution of data operations in a queue are described. One method includes loading a pointer to a record in a lock-free ring buffer by an executing thread, as well as calculating an index from the pointer to a record to be processed and obtaining a header of the record to be processed. Based on the header, a state of the record to be processed is determined from among: a filled state, a filling state, a drained state, and a draining state. A candidate header is created which includes an updated state indicating that the record is in use by the executing thread. An atomic operation is performed to update the header of the record to the candidate header. Upon successful completion of the atomic operation to update the header of the record to the candidate header, a data operation is performed on the record.Type: ApplicationFiled: March 30, 2020Publication date: September 30, 2021Inventors: LUIS F. STEVENS, HRISHIKESH V. PRABHUNE, CHRISTOPHER FRETZ
-
Publication number: 20210103584Abstract: Examples disclosed herein are relevant to configurations of hash tables. An example hash table includes is configured to be placed into a contiguous block of shared memory and be used across multiple processes. The hash table can include a memory layout having two logical tables: a metadata table and a storage array. In addition, a storage bitmap can be used to determine available memory locations in the storage array. Disclosed configurations can be suited for use in high-performance computing applications.Type: ApplicationFiled: October 4, 2019Publication date: April 8, 2021Inventors: Christopher Fretz, Hrishikesh Prabhune, Luis Stevens
-
Publication number: 20210103564Abstract: Examples disclosed herein are relevant to garbage collection for data structures, such as hash tables. The data structure can store garbage collection values for use during a garbage collection process. The garbage collection values can have a value indicating the occurrence of a poisoned status. Disclosed configurations can be suited for use in high-performance computing applications.Type: ApplicationFiled: October 4, 2019Publication date: April 8, 2021Inventors: Christopher Fretz, Hrishikesh Prabhune, Luis Stevens
-
Publication number: 20210103475Abstract: A node management protocol is disclosed herein. The protocol can be used for task distribution in multi-node systems. The node management protocol can implement a cooperation-based task distribution algorithm that does not rely on consensus. When a task is ingested into a cluster of nodes, the nodes can compete to handle the task. A transport layer helps coordinate among nodes and facilitates the handling of work. A session expiry protocol handles node failures with the remaining nodes reassigning work.Type: ApplicationFiled: October 4, 2019Publication date: April 8, 2021Inventors: Christopher Fretz, Hrishikesh Prabhune, Luis Stevens