Patents by Inventor Fabian Samuel Tillier

Fabian Samuel Tillier 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: 9262235
    Abstract: Enhanced message passing architectures and libraries include an interruptible wait feature. After a thread X calls a completion-awaiting routine of a message passing interface library, a progress engine executes while the routine is in the blocked condition. A thread Y interrupts the routine before all messaging operations are completed. The interrupted routine returns control to thread X with an indication that the routine's completion condition is unsatisfied. The completion-awaiting routine may have the same function signature as a standard MPI routine. In some cases, thread Y interrupts the routine while requesting a lock held by thread X. In some applications, thread X is a communication thread and thread Y is one of multiple worker threads. The interruptible wait feature may be joined by an asynchronous callback feature, which associates a callback with a deterministic execution context.
    Type: Grant
    Filed: April 7, 2011
    Date of Patent: February 16, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventor: Fabian Samuel Tillier
  • Patent number: 9146785
    Abstract: One embodiment illustrated herein includes a method that may be practiced in a computing environment. The method includes acts for providing direct access to hardware to virtual machines. The method includes determining that a virtual machine should have access to a piece of hardware. The method further includes a virtual machine requesting access to the hardware from the host wherein a host is a special partition that controls the physical hardware of a computing system and manages virtual machines. The method further includes the host configuring the hardware to allow access to the hardware directly by the virtual machine by the host mapping hardware resources into the virtual machine's address space. The method further includes the virtual machine directly accessing the hardware without going through the host once the hardware has been configured by the host.
    Type: Grant
    Filed: September 14, 2011
    Date of Patent: September 29, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Fabian Samuel Tillier, Thomas Fahrig
  • Publication number: 20150227401
    Abstract: A requesting program makes a first call to a messaging routine. The first call provides at least one request for at least one requested messaging operation to be performed by the messaging routine. The requesting program is permitted to continue execution prior to completion of the at least one requested messaging operation rather than blocking in response to the first call. The messaging routine is interrupted prior to completion of the at least one requested messaging operation in response to a second call which is made from the requesting program to a synchronization routine. Calling the synchronization routine has an effect of interrupting any outstanding call to the messaging routine. In some cases, an application program interface containing the synchronization routine has functionality supporting serialization of calls to the messaging routine. The call to the messaging routine is serialized, and execution of the program continues.
    Type: Application
    Filed: April 22, 2015
    Publication date: August 13, 2015
    Inventor: Fabian Samuel Tillier
  • Patent number: 9043796
    Abstract: Through an asynchronous callback enhancement, a thread makes a non-blocking request (e.g., send, receive, I/O) to a message passing interface library, and a callback routine is associated with the request as an asynchronous callback to the thread. The callback is queued for execution in the requesting thread and so has a deterministic execution context. Callback queuing may occur in response to another thread detecting that the request is complete. Further control over callback execution is provided by state transitions which determine whether the thread is open to processing (e.g., executing) an asynchronous callback. Callback association is done by a broad or by narrow association routines. An application which has processes organized in ranks, each including a communication thread with associated callback(s), and multiple worker threads. Interruptible wait enhancements may also be present.
    Type: Grant
    Filed: April 7, 2011
    Date of Patent: May 26, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventor: Fabian Samuel Tillier
  • Publication number: 20130067468
    Abstract: One embodiment illustrated herein includes a method that may be practiced in a computing environment. The method includes acts for providing direct access to hardware to virtual machines. The method includes determining that a virtual machine should have access to a piece of hardware. The method further includes a virtual machine requesting access to the hardware from the host wherein a host is a special partition that controls the physical hardware of a computing system and manages virtual machines. The method further includes the host configuring the hardware to allow access to the hardware directly by the virtual machine by the host mapping hardware resources into the virtual machine's address space. The method further includes the virtual machine directly accessing the hardware without going through the host once the hardware has been configured by the host.
    Type: Application
    Filed: September 14, 2011
    Publication date: March 14, 2013
    Applicant: MICROSOFT CORPORATION
    Inventors: Fabian Samuel Tillier, Thomas Fahrig
  • Publication number: 20120260262
    Abstract: Enhanced message passing architectures and libraries include an interruptible wait feature. After a thread X calls a completion-awaiting routine of a message passing interface library, a progress engine executes while the routine is in the blocked condition. A thread Y interrupts the routine before all messaging operations are completed. The interrupted routine returns control to thread X with an indication that the routine's completion condition is unsatisfied. The completion-awaiting routine may have the same function signature as a standard MPI routine. In some cases, thread Y interrupts the routine while requesting a lock held by thread X. In some applications, thread X is a communication thread and thread Y is one of multiple worker threads. The interruptible wait feature may be joined by an asynchronous callback feature, which associates a callback with a deterministic execution context.
    Type: Application
    Filed: April 7, 2011
    Publication date: October 11, 2012
    Applicant: MICROSOFT CORPORATION
    Inventor: Fabian Samuel Tillier
  • Publication number: 20120260261
    Abstract: Through an asynchronous callback enhancement, a thread makes a non-blocking request (e.g., send, receive, I/O) to a message passing interface library, and a callback routine is associated with the request as an asynchronous callback to the thread. The callback is queued for execution in the requesting thread and so has a deterministic execution context. Callback queuing may occur in response to another thread detecting that the request is complete. Further control over callback execution is provided by state transitions which determine whether the thread is open to processing (e.g., executing) an asynchronous callback. Callback association is done by a broad or by narrow association routines. An application which has processes organized in ranks, each including a communication thread with associated callback(s), and multiple worker threads. Interruptible wait enhancements may also be present.
    Type: Application
    Filed: April 7, 2011
    Publication date: October 11, 2012
    Applicant: MICROSOFT CORPORATION
    Inventor: Fabian Samuel Tillier