個人檔案Microsoft HPC Institute ...相片部落格清單 工具 說明
沒有相簿。
5月9日

What is next?

The main problem we are facing now is scalibility (although more model functionality is also an interesting possibility).  We want to be able to analyze a program for more than a few processes in a given model.  On this front I have some ideas about how we will accomplish it.  More on this when it becomes available.

A Formal Model of MPI Process Interaction

No formal model for MPI process interaction currently exists. A formal model is desirable because it
  1. Allows designers to gain intuitions beyond that of a natural language description,
  2. Dispels ambiguity,
  3. Forces all assumptions to be made explicit, and
  4. Can be used in concert with a model checker to determine when a sequence of interactions can lead to an error state.

In our paper (currently under review) we describe a formal model of MPI process interaction, detailing the protocols used in its implementation, and how it was validated using examples from the MPI standard document. We also demonstrate how a programmer might use the model to find bugs in their code, as well as gain a deeper understanding of the MPI standard itself. 

 

The model (in +CAL) can be downloaded from our website

We use the TLC model checker from Microsoft Research for this work.

1月18日

The beginning

As I am fond of saying -"Its time to get this show on the road."
 
The University of Utah 's Microsoft HPC Institute is focused on developing techniques to ease the process of developing for a cluster computing environment. We are launching a number of research initiatives that include the following:
  • Discovery and analysis of program errors such as deadlock, message races, misuse of the MPI library and other errors.
  • Automatic synthesis and transformation of synchronous programs into asynchronous programs including removal of barriers and discovery of intended collective operations.
  • Formal specification of the MPI standard.