Patents by Inventor Tianchi Ma

Tianchi Ma 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: 8682958
    Abstract: The present invention extends to methods, systems, and computer program products for decoupling cluster data from cloud deployment. The decoupling facilitates taking down and reattaching a cluster to persisted data as needed. Other embodiments of the invention include resuming a cluster's execution on a different topology and/or different system states based on a persisted data set.
    Type: Grant
    Filed: November 17, 2011
    Date of Patent: March 25, 2014
    Assignee: Microsoft Corporation
    Inventor: Tianchi Ma
  • Publication number: 20130179488
    Abstract: The present invention extends to methods, systems, and computer program products for REST interface for job submission. At a HPC cluster system, a hosting program works between the clients on different platforms and the schedulers of the cluster system. The hosting program receives requests from the clients and then submits the requests to the schedulers. The communication between the hosting program and the schedulers may be based on .Net remoting protocol. Regardless of what platform the clients use, the hosting program maintains a same user interface to all the clients and the communication between the clients and the hosting program may be based on Representational State Transfer (“REST”). In addition, the hosting program also delegates identities to the clients when it receives multiple authentications from the schedulers.
    Type: Application
    Filed: January 5, 2012
    Publication date: July 11, 2013
    Applicant: Microsoft Corporation
    Inventors: Ruiyi Wang, Tianchi Ma
  • Publication number: 20130159380
    Abstract: Provisioning a cloud based high performance computing cluster. The method includes from a cloud based provisioning service deployed in a cloud based computing provider, providing a user interface. The method further includes receiving user input at the cloud based provisioning service from the user interface. The method further includes from the user input, determining a configuration for a cloud based user service for the user. Using the cloud based provisioning service, the method further includes provisioning the cloud based user service for the user, in the cloud, based on the determined configuration.
    Type: Application
    Filed: December 15, 2011
    Publication date: June 20, 2013
    Applicant: MICROSOFT CORPORATION
    Inventors: Salim Alam, Tianchi Ma, Gregory Wray Teather, Dandan He, Matthew Charles LaGrandeur, Ruiyi Wang
  • Publication number: 20130132946
    Abstract: The present invention extends to methods, systems, and computer program products for synchronized active-passive application failover. A data connection to a single data source can be used as a synchronizations point. Interoperating instance side and data source side algorithms coordinate to transition a passive instance to an active instance within a specified period of time when a prior active instance fails. An active-passive controller can operate as an active-active module within an active-active environment to provide active-passive failover to active-passive modules. Application virtual names can be mapped to application instance electronic addresses to assist external modules in establishing application connections to active-passive applications.
    Type: Application
    Filed: November 17, 2011
    Publication date: May 23, 2013
    Applicant: Microsoft Corporation
    Inventor: Tianchi Ma
  • Publication number: 20130132456
    Abstract: The present invention extends to methods, systems, and computer program products for decoupling cluster data from cloud deployment. The decoupling facilitates taking down and reattaching a cluster to persisted data as needed. Other embodiments of the invention include resuming a cluster's execution on a different topology and/or different system states based on a persisted data set.
    Type: Application
    Filed: November 17, 2011
    Publication date: May 23, 2013
    Applicant: Microsoft Corporation
    Inventor: Tianchi Ma
  • Publication number: 20120209901
    Abstract: An application combines on-site and cloud-based calculations. The application selects a cloud computing broker from a list sorted by load. The broker receives computation requests from the application, sends corresponding load-balanced requests to local application service hosts and cloud proxies, receives responses, and sends the responses to the application without identifying the response source as local versus non-local. Each proxy has a logical-physical mapping of cloud-resident worker nodes. A scheduler receives session requests from applications, allocates local and cloud computing resources to a session, and tracks resource usage by session. An application previously run only on-premises can be executed partially on cloud worker nodes without modification. The proxy re-routes unfulfilled requests from a failed worker, undetected by the broker. If all workers assigned to that proxy fail, then the broker reassigns unfulfilled requests to another proxy, undetected by the application.
    Type: Application
    Filed: February 12, 2011
    Publication date: August 16, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Mingqiang Xu, Jun Su, Gregory M. Burgess, Tianchi Ma, Salim Alam, Rich Ciapala
  • Publication number: 20120151074
    Abstract: The present invention extends to methods, systems, and computer program products for targeted data transfer data between operational domains. Embodiments of the invention facilitate moving data between operational domains inside and outside of a resource cloud. A proxy runs on the boundary of each operational domain, such as, for example, an on premise cluster and a resource cloud. The proxies are capable of resolving the location of the targeted entity and forwarding the data or request on to the next hop, which may either be another proxy or the worker module running on the target node. A proxy can run on the head node of an on premise cluster so that compute nodes on private networks can be targeted. A proxy can also run on a public endpoint within the resource cloud to make nodes within the resource cloud available.
    Type: Application
    Filed: December 10, 2010
    Publication date: June 14, 2012
    Applicant: Microsoft Corporation
    Inventors: Kevin Wood, Gregory M. Burgess, Tianchi Ma
  • Patent number: 7908375
    Abstract: External processing of a request directed to an external software program from an invocation source to a cluster of computing devices. A wrapper tool is provided for processing the request from the invocation source. The request includes operations to be performed by the external software program on the host computer. The wrapper tool intercepted the request and extracts information included in the intercepted request. The extracted information is transmitted to a cluster scheduler. The cluster scheduler identifies a set of computing devices in the cluster of computing devices for processing the request. The identified set of computing devices processes the intercepted request as a function of the intercepted request, the information and the invocation source. A result is provided in response to the processed request from the identified set of computing devices to the invocation source.
    Type: Grant
    Filed: July 11, 2007
    Date of Patent: March 15, 2011
    Assignee: Microsoft Corporation
    Inventors: Tianchi Ma, Jun Su, Mingqiang Xu, Yun Jin
  • Publication number: 20090019159
    Abstract: External processing of a request directed to an external software program from an invocation source to a cluster of computing devices. A wrapper tool is provided for processing the request from the invocation source. The request includes operations to be performed by the external software program on the host computer. The wrapper tool intercepted the request and extracts information included in the intercepted request. The extracted information is transmitted to a cluster scheduler. The cluster scheduler identifies a set of computing devices in the cluster of computing devices for processing the request. The identified set of computing devices processes the intercepted request as a function of the intercepted request, the information and the invocation source. A result is provided in response to the processed request from the identified set of computing devices to the invocation source.
    Type: Application
    Filed: July 11, 2007
    Publication date: January 15, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Tianchi Ma, Jun Su, Mingqiang Xu, Yun Jin