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

  • Patent number: 11275623
    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: May 30, 2019
    Date of Patent: March 15, 2022
    Assignee: Snap Inc.
    Inventors: Michael Cieslak, Jiayao Yu, Kai Chen, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi
  • Publication number: 20220060437
    Abstract: An example method comprises: receiving, at the server from a first client device, a request for access to a client feature on the first client device; determining, by the server, an applicable rule for the access request, the applicable rule having a plurality of nodes; determining, by the server, device capabilities needed for the determined rule; determining, by the server, nodes that can be executed and nodes that cannot be executed, based on the device capabilities; executing, by the server, nodes that can be executed to reach a partial decision for the applicable rule; pruning the rule to remove executed nodes and generate a pruned rule that includes nodes that cannot be executed; transmitting the pruned rule and partial decision to the device. The pruned rule is executed on the first client device with partial decision to generate a final decision. The client feature is configured based on the decision.
    Type: Application
    Filed: November 3, 2021
    Publication date: February 24, 2022
    Inventors: Michael Ronald Cieslak, Jiayao Yu, Kai Chen, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi
  • Patent number: 11258738
    Abstract: An example method comprises: receiving, at the server from a first client device, a request for access to a client feature on the first client device; determining, by the server, an applicable rule for the access request, the applicable rule having a plurality of nodes; determining, by the server, device capabilities needed for the determined rule; determining, by the server, nodes that can be executed and nodes that cannot be executed, based on the device capabilities; executing, by the server, nodes that can be executed to reach a partial decision for the applicable rule; pruning the rule to remove executed nodes and generate a pruned rule that includes nodes that cannot be executed; transmitting the pruned rule and partial decision to the device. The pruned rule is executed on the first client device with partial decision to generate a final decision. The client feature is configured based on the decision.
    Type: Grant
    Filed: September 27, 2019
    Date of Patent: February 22, 2022
    Assignee: Snap Inc.
    Inventors: Michael Ronald Cieslak, Jiayao Yu, Kai Chen, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi
  • Publication number: 20220052918
    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: Application
    Filed: October 28, 2021
    Publication date: February 17, 2022
    Inventors: Michael Cieslak, Jiayao Yu, Kai Chen, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi
  • Patent number: 11243875
    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: April 22, 2019
    Date of Patent: February 8, 2022
    Assignee: Snap Inc.
    Inventors: Michael Cieslak, Jiayao Yu, Kai Chen, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi
  • Patent number: 11240104
    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: May 21, 2019
    Date of Patent: February 1, 2022
    Assignee: Snap Inc.
    Inventors: Michael Cieslak, Jiayao Yu, Kai Chen, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi
  • Publication number: 20210400442
    Abstract: The subject technology determines, by at least one processor, that a value of a capability parameter is not available for a first recipient device, the first recipient device being one of a plurality of recipient devices. The subject technology receives, from the first recipient device, a value of the capability parameter. The subject technology clusters, by at least one processor, the plurality of recipient devices into a plurality of groups of recipient devices based on device capabilities including an available storage space. The subject technology determines, for each group of recipient devices, a set of content parameters compatible with device capabilities of the plurality of recipient devices of a group of client devices.
    Type: Application
    Filed: September 1, 2021
    Publication date: December 23, 2021
    Inventors: Michael Ronald Cieslak, Zahra Ferdowsi, Jun Huang, Michael David Marr, Jiayao Yu, Finn Parnell, Aleksandr Zhang, Chao Pang
  • Publication number: 20210349744
    Abstract: The transmission of data on computer networks according to one or more policies is disclosed. A policy may specify, among other things, various parameters which are to be followed when transmitting initiating network traffic. Multiple network interfaces may be installed on a server to enable transmission of data from the single server according a number of discrete configuration settings implicated by the various policies. The multiple network interfaces may correspond to separate physical components, with each component configured independently to implement a feature of a policy. The multiple network interfaces may also correspond to a single physical component that exposes multiple network interfaces, both to the network and to the server on which it is installed.
    Type: Application
    Filed: June 10, 2021
    Publication date: November 11, 2021
    Inventors: Matthew D. Klein, Michael David Marr, Samuel J. McKelvie
  • Patent number: 11140243
    Abstract: The systems and methods monitor thermal states associated with a device. The systems and methods set thermal thresholds associated with the device. The systems and methods infer the thermal thresholds from information gathered by a client application running on the device. The systems and methods implement a stored policy associated with a violation of one of the thermal thresholds by one of the monitored thermal states.
    Type: Grant
    Filed: April 12, 2019
    Date of Patent: October 5, 2021
    Assignee: Snap Inc.
    Inventors: Michael Cieslak, Michael David Marr
  • Patent number: 11122396
    Abstract: The subject technology accesses, by at least one processor, device capabilities for each of a plurality of recipient devices. The subject technology clusters, by the at least one processor, the plurality of recipient devices into a plurality of groups of recipient devices based on device capabilities. The subject technology determines, for each group of recipient devices, a set of content parameters compatible with the device capabilities of the plurality of recipient devices of a group of client devices. Further, the subject technology generates, for each group of recipient devices, a version of the content according to an associated set of content parameters.
    Type: Grant
    Filed: July 2, 2020
    Date of Patent: September 14, 2021
    Assignee: Snap Inc.
    Inventors: Michael Ronald Cieslak, Zahra Ferdowsi, Jun Huang, Michael David Marr, Jiayao Yu, Finn Parnell, Aleksandr Zhang, Chao Pang
  • Publication number: 20210227293
    Abstract: Aspects of the present disclosure involve systems and methods for performing operations comprising receiving, with a messaging application, user input to access a graphical image modification feature of the messaging application; in response to receiving, causing display of a video; accessing a first configuration rule of a plurality of configuration rules that associates a first device property rule with the graphical image modification feature of the messaging application; 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 display of a first plurality of graphical image modification options each associated with performing a different modification to the video.
    Type: Application
    Filed: April 8, 2021
    Publication date: July 22, 2021
    Inventors: Michael Ronald Cieslak, Jiayao Yu, Kai Chen, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi
  • Publication number: 20210216426
    Abstract: Aspects of the present disclosure involve a system and method for performing operations comprising providing to a client device, a messaging application comprising multiple features; accessing a configuration rule that associates a device property rule with a feature; determining at a first point in time, that a property of the client device matches the device property rule associated with the configuration rule; in response to determining that the property of the client device matches the device property rule associated with the configuration rule, enabling the feature on the client device at the first point in time; receiving an updated property of the client device at a second point in time; and in response to determining that the updated property of the client device fails to match the device property rule associated with the configuration rule at the second point in time, disabling the feature on the client device.
    Type: Application
    Filed: March 29, 2021
    Publication date: July 15, 2021
    Inventors: Michael Ronald Cieslak, Jiayao Yu, Kai Chen, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi
  • Patent number: 11036529
    Abstract: The transmission of data on computer networks according to one or more policies is disclosed. A policy may specify, among other things, various parameters which are to be followed when transmitting initiating network traffic. Multiple network interfaces may be installed on a server to enable transmission of data from the single server according a number of discrete configuration settings implicated by the various policies. The multiple network interfaces may correspond to separate physical components, with each component configured independently to implement a feature of a policy. The multiple network interfaces may also correspond to a single physical component that exposes multiple network interfaces, both to the network and to the server on which it is installed.
    Type: Grant
    Filed: February 12, 2020
    Date of Patent: June 15, 2021
    Assignee: Amazon Technologies, Inc.
    Inventors: Matthew D. Klein, Michael David Marr, Samuel J. McKelvie
  • Patent number: 10999629
    Abstract: Aspects of the present disclosure involve systems and methods for performing operations comprising receiving, with a messaging application, user input to access a graphical image modification feature of the messaging application; in response to receiving, causing display of a video; accessing a first configuration rule of a plurality of configuration rules that associates a first device property rule with the graphical image modification feature of the messaging application; 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 display of a first plurality of graphical image modification options each associated with performing a different modification to the video.
    Type: Grant
    Filed: April 23, 2019
    Date of Patent: May 4, 2021
    Assignee: Snap Inc.
    Inventors: Michael Ronald Cieslak, Jiayao Yu, Kai Chen, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi
  • Patent number: 10990495
    Abstract: Aspects of the present disclosure involve a system and method for performing operations comprising providing to a client device, a messaging application comprising multiple features; accessing a configuration rule that associates a device property rule with a feature; determining at a first point in time, that a property of the client device matches the device property rule associated with the configuration rule; in response to determining that the property of the client device matches the device property rule associated with the configuration rule, enabling the feature on the client device at the first point in time; receiving an updated property of the client device at a second point in time; and in response to determining that the updated property of the client device fails to match the device property rule associated with the configuration rule at the second point in time, disabling the feature on the client device.
    Type: Grant
    Filed: April 15, 2019
    Date of Patent: April 27, 2021
    Assignee: Snap Inc.
    Inventors: Michael Ronald Cieslak, Jiayao Yu, Kai Chen, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi
  • Publication number: 20210099551
    Abstract: An example method comprises: receiving, at a server from a first client device, a request for access to a client feature on the first client device; determining, by the server, an applicable rule for the access request, the applicable rule having a plurality of nodes; determining, by the server, device capabilities needed for the determined rule; determining, by the server, nodes that can be executed and nodes that cannot be executed, based on the device capabilities, the nodes that can be executed including device hardware capabilities and the nodes that cannot be executed including real-time device capabilities; executing, by the server nodes that can be executed to reach a partial decision for the applicable rule; pruning the applicable rule to remove executed nodes and generate a pruned rule that includes nodes that cannot be executed; transmitting the pruned rule and partial decision to the first client device.
    Type: Application
    Filed: February 27, 2020
    Publication date: April 1, 2021
    Inventors: Michael Ronald Cieslak, Jiayao Yu, Kai Chen, Farnaz Azmoodeh, Michael David Marr, Jun Huang, Zahra Ferdowsi, Dhritiman Sagar
  • Publication number: 20200413233
    Abstract: The subject technology accesses, by at least one processor, device capabilities for each of a plurality of recipient devices. The subject technology clusters, by the at least one processor, the plurality of recipient devices into a plurality of groups of recipient devices based on device capabilities. The subject technology determines, for each group of recipient devices, a set of content parameters compatible with the device capabilities of the plurality of recipient devices of a group of client devices. Further, the subject technology generates, for each group of recipient devices, a version of the content according to an associated set of content parameters.
    Type: Application
    Filed: July 2, 2020
    Publication date: December 31, 2020
    Inventors: Michael Ronald Cieslak, Zahra Ferdowsi, Jun Huang, Michael David Marr, Jiayao Yu, Finn Parnell, Aleksandr Zhang, Chao Pang
  • Patent number: 10846788
    Abstract: Methods and apparatus for a bandwidth pool pricing service are disclosed. A system includes a plurality of resources of a provider network and a resource manager. The resource manager implements a programmatic interface allowing a client to choose among several supported bandwidth pricing policies for a resource group allocated to the client. One pricing policy includes a first pricing component based on an intra-group network traffic rate, and a second pricing component based on an extra-group network traffic rate. If the client selects the policy, the resource manager provides billing amounts to the client derived from the first and second pricing components and from a set of collected network traffic metrics.
    Type: Grant
    Filed: June 28, 2012
    Date of Patent: November 24, 2020
    Assignee: Amazon Technologies, Inc.
    Inventors: Matthew D. Klein, Michael David Marr
  • Patent number: 10810015
    Abstract: Approaches are described for enabling a host computing device to store credentials and other security information useful for recovering the state of the host computing device in a secure store, such as a trusted platform module (TPM) on the host computing device. When recovering the host computing device in the event of a failure (e.g., power outage, network failure, etc.), the host computing device can obtain the necessary credentials from the secure store and use those credentials to boot various services, restore the state of the host and perform various other functions. In addition, the secure store (e.g., TPM) may provide boot firmware measurement and remote attestation of the host computing devices to other devices on a network, such as when the recovering host needs to communicate with the other devices on the network.
    Type: Grant
    Filed: February 28, 2019
    Date of Patent: October 20, 2020
    Assignee: Amazon Technologies, Inc.
    Inventors: Nachiketh Rao Potlapally, Rachit Chawla, Jeremy Ryan Volkman, Michael David Marr
  • Patent number: 10785093
    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: July 1, 2016
    Date of Patent: September 22, 2020
    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