Microsoft Research Goodness

I try to keep up with some of the really cool stuff going on at MSR.   Here are abstracts of things I thought were particularly cool lately:

 

 

MSR-TR-2007-159

Doloto: Code Splitting for Network-Bound Web 2.0 Applications
Benjamin Livshits; Emre Kiciman
December 2007
25 p.
https://research.microsoft.com/research/pubs/view.aspx?tr_id=1402
Modern Web 2.0 applications, such as GMail, Live Maps, Facebook and many others, use a combination of Dynamic HTML, JavaScript and other Web browser technologies commonly referred as AJAX to push page generation and content manipulation to the client web browser. This approach improves the responsiveness of these network-bound applications, but the shift of application execution from a back-end server to the client also often dramatically increases the amount of code that must first be downloaded to the browser. This creates an unfortunate Catch-22: to create responsive distributed Web 2.0 applications developers move code to the client, but for an application to be responsive, the code must first be transferred there, which takes time. In this paper, we present DOLOTO, a system that analyzes application workloads and automatically performs code splitting of existing large Web 2.0 applications. After being processed by DOLOTO, an application will initially transfer only the portion of code necessary for application initialization. The rest of the application's code is replaced by short stubs-their actual function code is transfered lazily in the background or, at the latest, on-demand on first execution. Since code download is interleaved with application execution, users can start interacting with the Web application much sooner, without waiting for the code that implements extra, unused features. To demonstrate the effectiveness of DOLOTO in practice, we have performed experiments on five large widely-used Web 2.0 applications. DOLOTO reduces the size of initial application code download by hundreds of kilobytes or as much as 50% of the original download size. The time to download and begin interacting with large applications is reduced by 20-40% depending on the application and wide-area network conditions.

 

MSR-TR-2007-165

Service Combinators for Farming Virtual Machines
Karthikeyan Bhargavan; Andrew D. Gordon; Iman Narasamdya
December 2007
0 p.
https://research.microsoft.com/research/pubs/view.aspx?tr_id=1408
Management is one of the main expenses of running the server farms that implement enterprise services, and operator errors can be costly. Our goal is to develop type-safe programming mechanisms for combining and managing enterprise services, and we achieve this goal in the particular setting of farms of virtual machines. We assume each server is service-oriented, in the sense that the services it provides, and the external services it depends upon, are explicitly described in metadata. We describe the design, implementation, and formal semantics of a library of combinators whose types record and respect server metadata. We describe a series of programming examples run on our implementation, based on existing server code for order processing, a typical data centre workload.

 

 

MSR-TR-2007-164

Upper and Lower Bounds on the Number of Solutions
Jean-Philippe Martin
December 2007
0 p.
https://research.microsoft.com/research/pubs/view.aspx?tr_id=1407
We present a fast an extensible algorithm for computing upper and lower bounds on the number of solutions to a system of equations. For a given size of variables (e.g. 32 bits), the algorithm can be run in time linear in the number of terms and variables, at the cost of looser bounds.

Comments

  • Anonymous
    January 10, 2008
    I try to keep up with some of the really cool stuff going on at MSR. Here are abstracts of things I thought