Patents by Inventor Christopher Alfeld

Christopher Alfeld 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: 10541927
    Abstract: A computing system dedicates one or more processing units, such as cores, for the purposes of packet processing software, wherein other processing units simultaneously run application software. In some examples, the system uses dynamic load information to dynamically increase and decrease the number of processing units dedicated to packet processing. The system may further include a mechanism for establishing shared-memory regions for interacting with other applications' users. The shared memory mechanisms provide an abstraction of per-application “command” and “completion queues”. The system may poll per-application command queues for detecting the arrival of new requests. The mechanism also provides detection of application termination, as well as an ability for an application to expose portions of its address space for the reception and transmission of data.
    Type: Grant
    Filed: December 29, 2016
    Date of Patent: January 21, 2020
    Assignee: Google LLC
    Inventors: Michael Marty, Joel Scherpelz, Marc de Kruijf, Christopher Alfeld
  • Patent number: 10261780
    Abstract: Systems and methods for updating an application without a restart are provided. A processor can start a second application instance while a first application instance is still executing. The first application instance can transfer a first set of state information to the second application instance. The second application instance can declare its readiness for activation in response to completion of the transfer. The first application instance can deactivate in response to the declaration. Deactivation includes transferring a second set of state information from the first application instance to the second application instance and releasing single-access resources. The second application instance can activate. Activation includes receiving the second set of state information, and accessing the single-access resources. The second application instance can declare that activation is complete in response to completion of the activation. The first application instance can terminate in response to the declaration.
    Type: Grant
    Filed: May 1, 2017
    Date of Patent: April 16, 2019
    Assignee: Google LLC
    Inventors: Marc de Kruijf, Christopher Alfeld, William Evans, Michael Marty
  • Publication number: 20180314515
    Abstract: Systems and methods for updating an application without a restart are provided. A processor can start a second application instance while a first application instance is still executing. The first application instance can transfer a first set of state information to the second application instance. The second application instance can declare its readiness for activation in response to completion of the transfer. The first application instance can deactivate in response to the declaration. Deactivation includes transferring a second set of state information from the first application instance to the second application instance and releasing single-access resources. The second application instance can activate. Activation includes receiving the second set of state information, and accessing the single-access resources. The second application instance can declare that activation is complete in response to completion of the activation. The first application instance can terminate in response to the declaration.
    Type: Application
    Filed: May 1, 2017
    Publication date: November 1, 2018
    Inventors: Marc de Kruijf, Christopher Alfeld, William Evans, Michael Marty
  • Publication number: 20180191623
    Abstract: A computing system dedicates one or more processing units, such as cores, for the purposes of packet processing software, wherein other processing units simultaneously run application software. In some examples, the system uses dynamic load information to dynamically increase and decrease the number of processing units dedicated to packet processing. The system may further include a mechanism for establishing shared-memory regions for interacting with other applications' users. The shared memory mechanisms provide an abstraction of per-application “command” and “completion queues”. The system may poll per-application command queues for detecting the arrival of new requests. The mechanism also provides detection of application termination, as well as an ability for an application to expose portions of its address space for the reception and transmission of data.
    Type: Application
    Filed: December 29, 2016
    Publication date: July 5, 2018
    Inventors: Michael Marty, Joel Scherpelz, Marc de Kruijf, Christopher Alfeld