Patents by Inventor Michael David Marr

Michael David Marr 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: 20260121924
    Abstract: Systems, devices, media, and methods are presented for assigning configuration parameters to unknown devices by comparing characteristics of unknown devices to characteristics of known devices. Characteristics of an unknown device are compared to characteristics of known devices to identify a similar device having known configuration parameters. The unknown device is then assigned the configuration parameters of the identified similar device.
    Type: Application
    Filed: December 23, 2025
    Publication date: April 30, 2026
    Inventors: Michael Cieslak, Jiayao Yu, Kai Chen, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi
  • Patent number: 12531782
    Abstract: Systems, devices, media, and methods are presented for assigning configuration parameters to unknown devices by comparing characteristics of unknown devices to characteristics of known devices. Characteristics of an unknown device are compared to characteristics of known devices to identify a similar device having known configuration parameters. The unknown device is then assigned the configuration parameters of the identified similar device.
    Type: Grant
    Filed: June 13, 2024
    Date of Patent: January 20, 2026
    Assignee: Snap Inc.
    Inventors: Michael Cieslak, Jiayao Yu, Kai Chen, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi
  • Patent number: 12474968
    Abstract: Systems, devices, media, and methods are presented for throttling (i.e., adjusting) the workload of an application (e.g., number of task requests) in order to improve processor core usage within a heterogeneous multiprocessor system. When high-performance processing is beneficial to the application, the number of task requests may be increased in order to have high-performance processor cores within the heterogeneous multiprocessor system core processor perform the tasks. On the other hand, when high-performance processing is not beneficial, the number of task requests may be decreased in order to have low-performance processor cores within the heterogeneous multiprocessor system perform the tasks. Processor core usage is monitored, and the number of tasks being performed are adjusted to match the processor core usage to a target processor core usage for functions the application is performing.
    Type: Grant
    Filed: October 23, 2023
    Date of Patent: November 18, 2025
    Assignee: Snap Inc.
    Inventors: Michael Cieslak, Jiayao Yu, Kai Chen, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi
  • Publication number: 20250251948
    Abstract: Providing branch prediction of APIs to determine the best API for an application to use when performing a function. An API history buffer stores a history of performance data in association with APIs when the function is performed by an application. An API map dynamically stores application performance data in association with APIs. This history data and the API map is used by a circumstance engine and a circumstance engine service to provide a suggested API to an application when it is ready to perform a function.
    Type: Application
    Filed: April 24, 2025
    Publication date: August 7, 2025
    Inventors: Michael Cieslak, Jiayao Yu, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi
  • Publication number: 20250173249
    Abstract: Systems, devices, media, and methods are presented for testing the capability of a mobile device to run a particular feature of an application. Each feature may include a package of code, a call, a state, and a condition; each condition correlated with a specific state. The call is a query that includes instructions to evaluate whether the application will run successfully if a particular feature is running. If the call fails, the feature condition remains Off, resulting in a rollback of the feature. If the call succeeds, the feature condition is changed to On. The system may include an experimentation framework on each mobile device for registering features, executing calls, logging results, and maintaining states and conditions.
    Type: Application
    Filed: January 30, 2025
    Publication date: May 29, 2025
    Inventors: Michael Cieslak, Jiayao Yu, Kai Chen, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi
  • Patent number: 12284107
    Abstract: Clustering a plurality of client devices running an application as a function of a data structure such that the plurality of client devices are each assigned a cluster. Client devices having similar performance metrics are assigned the same cluster. An operation of the application is modified as a function of the performance metrics of the client device. The modification of application operation is performed by turning certain features of the application on and off using a rule based on device cluster.
    Type: Grant
    Filed: March 11, 2024
    Date of Patent: April 22, 2025
    Assignee: Snap Inc.
    Inventors: Zahra Ferdowsi, Michael Cieslak, Michael David Marr, Aysegul Cansizoglu, Xiaolin Shi, Hussein Mehanna, Caleb Ogden, Yi Xu
  • Publication number: 20250085786
    Abstract: A gesture-based wake process for an AR system is described herein. The AR system places a hand-tracking input pipeline of the AR system in a suspended mode. A camera component of the hand-tracking input pipeline detects a possible visual wake command being made by a user of the AR system. On the basis of detecting the possible visual wake command, the AR system wakes the hand-tracking input pipeline and places the camera component in a fully operational mode. If the AR system, using the hand-tracking input pipeline, verifies the possible visual wake command as an actual wake command, the AR system initiates execution of an AR application.
    Type: Application
    Filed: November 19, 2024
    Publication date: March 13, 2025
    Inventors: Daniel Colascione, Matthew Hanover, Sergei Korolev, Michael David Marr, Scott Myers, James Powderly
  • Patent number: 12242373
    Abstract: Systems, devices, media, and methods are presented for testing the capability of a mobile device to run a particular feature of an application. Each feature may include a package of code, a call, a state, and a condition; each condition correlated with a specific state. The call is a query that includes instructions to evaluate whether the application will run successfully if a particular feature is running. If the call fails, the feature condition remains Off, resulting in a rollback of the feature. If the call succeeds, the feature condition is changed to On. The system may include an experimentation framework on each mobile device for registering features, executing calls, logging results, and maintaining states and conditions.
    Type: Grant
    Filed: January 31, 2022
    Date of Patent: March 4, 2025
    Assignee: Snap Inc.
    Inventors: Michael Cieslak, Jiayao Yu, Kai Chen, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi
  • Patent number: 12229035
    Abstract: Systems, devices, media, and methods are presented for releasing an application feature in incremental stages while monitoring the application for anomalies. The feature includes a package of code and an action setting. The methods in some implementations include identifying active devices on which the application has been installed, monitoring the application according to a set of metrics, activating the feature by changing its action setting for a first segment of the active devices, pausing the feature if an anomaly is detected among the set of metrics, and generating a repair ticket. As long as no anomaly is detected, the activating step proceeds for subsequent segments of the active devices, iteratively, until the release is completed. A feature rank may be used to process and release a plurality of features in order of priority.
    Type: Grant
    Filed: November 3, 2023
    Date of Patent: February 18, 2025
    Assignee: Snap Inc.
    Inventors: Michael Cieslak, Jiayao Yu, Kai Chen, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi, Olamide Valerie Olatunji, David Boyle, Claire Reinert
  • Patent number: 12175022
    Abstract: A gesture-based wake process for an AR system is described herein. The AR system places a hand-tracking input pipeline of the AR system in a suspended mode. A camera component of the hand-tracking input pipeline detects a possible visual wake command being made by a user of the AR system. On the basis of detecting the possible visual wake command, the AR system wakes the hand-tracking input pipeline and places the camera component in a fully operational mode. If the AR system, using the hand-tracking input pipeline, verifies the possible visual wake command as an actual wake command, the AR system initiates execution of an AR application.
    Type: Grant
    Filed: September 12, 2023
    Date of Patent: December 24, 2024
    Assignee: SNAP INC.
    Inventors: Daniel Colascione, Matthew Hanover, Sergei Korolev, Michael David Marr, Scott Myers, James Powderly
  • Publication number: 20240396794
    Abstract: Generally described, systems and methods are provided for monitoring and detecting causes of failures of network paths. The system collects performance information from a plurality of nodes and links in a network, aggregates the collected performance information across paths in the network, processes the aggregated performance information for detecting failures on the paths, analyzes each of the detected failures to determine at least one root cause, and initiates a remedial workflow for the at least one root cause determined. In some aspects, processing the aggregated information may include performing a statistical regression analysis or otherwise solving a set of equations for the performance indications on each of a plurality of paths. In another aspect, the system may also include an interface which makes available for display one or more of the network topology, the collected and aggregated performance information, and indications of the detected failures in the topology.
    Type: Application
    Filed: August 1, 2024
    Publication date: November 28, 2024
    Inventors: Richendra Khanna, Edward L. Wallace, Jagwinder Singh Brar, Michael David Marr, Samuel J. McKelvie, Peter N. DeSantis, Ian P. Nowland, Matthew D. Klein, Justin Mason, Jacob Gabrielson
  • Patent number: 12147817
    Abstract: Aspects of the present disclosure involve systems and methods for performing operations comprising providing a messaging application comprising a feature to a client device, the feature being implemented by operations having alternative complexity levels, wherein a first complexity level represents a first amount of device resources consumed by a first set of operations, and wherein a second complexity level represents a second amount of device resources consumed by a second set of operations; determining that the first configuration rule is satisfied by a first property of the client device; and in response to determining that the first configuration rule is satisfied by the first property of the client device, causing the feature to be implemented on the client device by the first set of operations having the first complexity level that consume a greater amount of device resources than the second set of operations having the second complexity level.
    Type: Grant
    Filed: May 19, 2023
    Date of Patent: November 19, 2024
    Assignee: Snap Inc.
    Inventors: Michael Ronald Cieslak, Jiayao Yu, Kai Chen, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi
  • Publication number: 20240333593
    Abstract: Systems, devices, media, and methods are presented for assigning configuration parameters to unknown devices by comparing characteristics of unknown devices to characteristics of known devices. Characteristics of an unknown device are compared to characteristics of known devices to identify a similar device having known configuration parameters. The unknown device is then assigned the configuration parameters of the identified similar device.
    Type: Application
    Filed: June 13, 2024
    Publication date: October 3, 2024
    Inventors: Michael Cieslak, Jiayao Yu, Kai Chen, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi
  • Patent number: 12074756
    Abstract: Generally described, systems and methods are provided for monitoring and detecting causes of failures of network paths. The system collects performance information from a plurality of nodes and links in a network, aggregates the collected performance information across paths in the network, processes the aggregated performance information for detecting failures on the paths, analyzes each of the detected failures to determine at least one root cause, and initiates a remedial workflow for the at least one root cause determined. In some aspects, processing the aggregated information may include performing a statistical regression analysis or otherwise solving a set of equations for the performance indications on each of a plurality of paths. In another aspect, the system may also include an interface which makes available for display one or more of the network topology, the collected and aggregated performance information, and indications of the detected failures in the topology.
    Type: Grant
    Filed: January 30, 2023
    Date of Patent: August 27, 2024
    Assignee: Amazon Technologies, Inc.
    Inventors: Richendra Khanna, Edward L. Wallace, Jagwinder Singh Brar, Michael David Marr, Samuel J. McKelvie, Peter N. DeSantis, Ian P. Nowland, Matthew D. Klein, Justin Mason, Jacob Gabrielson
  • Patent number: 12034599
    Abstract: Systems, devices, media, and methods are presented for assigning configuration parameters to unknown devices by comparing characteristics of unknown devices to characteristics of known devices. Characteristics of an unknown device are compared to characteristics of known devices to identify a similar device having known configuration parameters. The unknown devise is then assigned the configuration parameters of the identified similar device.
    Type: Grant
    Filed: October 28, 2021
    Date of Patent: July 9, 2024
    Assignee: Snap Inc.
    Inventors: Michael Cieslak, Jiayao Yu, Kai Chen, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi
  • Publication number: 20240223490
    Abstract: Clustering a plurality of client devices running an application as a function of a data structure such that the plurality of client devices are each assigned a cluster. Client devices having similar performance metrics are assigned the same cluster. An operation of the application is modified as a function of the performance metrics of the client device. The modification of application operation is performed by turning certain features of the application on and off using a rule based on device cluster.
    Type: Application
    Filed: March 11, 2024
    Publication date: July 4, 2024
    Inventors: Zahra Ferdowsi, Michael Cieslak, Michael David Marr, Aysegul Cansizoglu, Xiaolin Shi, Hussein Mehanna, Caleb Ogden, Yi Xu
  • Patent number: 11949582
    Abstract: Clustering a plurality of client devices running an application as a function of a data structure such that the plurality of client devices are each assigned a cluster. Client devices having similar performance metrics are assigned the same cluster. An operation of the application is modified as a function of the performance metrics of the client device. The modification of application operation is performed by turning certain features of the application on and off using a rule based on device cluster.
    Type: Grant
    Filed: April 28, 2022
    Date of Patent: April 2, 2024
    Assignee: Snap Inc.
    Inventors: Zahra Ferdowsi, Michael Cieslak, Michael David Marr, Aysegul Cansizoglu, Xiaolin Shi, Hussein Mehanna, Caleb Ogden, Yi Xu
  • Publication number: 20240094823
    Abstract: A gesture-based wake process for an AR system is described herein. The AR system places a hand-tracking input pipeline of the AR system in a suspended mode. A camera component of the hand-tracking input pipeline detects a possible visual wake command being made by a user of the AR system. On the basis of detecting the possible visual wake command, the AR system wakes the hand-tracking input pipeline and places the camera component in a fully operational mode. If the AR system, using the hand-tracking input pipeline, verifies the possible visual wake command as an actual wake command, the AR system initiates execution of an AR application.
    Type: Application
    Filed: September 12, 2023
    Publication date: March 21, 2024
    Inventors: Daniel Colascione, Matthew Hanover, Sergei Korolev, Michael David Marr, Scott Myers, James Powderly
  • Publication number: 20240070044
    Abstract: Systems, devices, media, and methods are presented for releasing an application feature in incremental stages while monitoring the application for anomalies. The feature includes a package of code and an action setting. The methods in some implementations include identifying active devices on which the application has been installed, monitoring the application according to a set of metrics, activating the feature by changing its action setting for a first segment of the active devices, pausing the feature if an anomaly is detected among the set of metrics, and generating a repair ticket. As long as no anomaly is detected, the activating step proceeds for subsequent segments of the active devices, iteratively, until the release is completed. A feature rank may be used to process and release a plurality of features in order of priority.
    Type: Application
    Filed: November 3, 2023
    Publication date: February 29, 2024
    Inventors: Michael Cieslak, Jiayao Yu, Kai Chen, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi, Olamide Valerie Olatunji, David Boyle, Claire Reinert
  • Publication number: 20240045727
    Abstract: Systems, devices, media, and methods are presented for throttling (i.e., adjusting) the workload of an application (e.g., number of task requests) in order to improve processor core usage within a heterogeneous multiprocessor system. When high-performance processing is beneficial to the application, the number of task requests may be increased in order to have high-performance processor cores within the heterogeneous multiprocessor system core processor perform the tasks. On the other hand, when high-performance processing is not beneficial, the number of task requests may be decreased in order to have low-performance processor cores within the heterogeneous multiprocessor system perform the tasks. Processor core usage is monitored, and the number of tasks being performed are adjusted to match the processor core usage to a target processor core usage for functions the application is performing.
    Type: Application
    Filed: October 23, 2023
    Publication date: February 8, 2024
    Inventors: Michael Cieslak, Jiayao Yu, Kai Chen, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi