Welcome to the VMS (old version of Proto-Runtime) home page

<VMS was the original implementation of proto-runtime, this page is deprecated, but kept for legacy reasons>

proto-runtime Updated home page

Introduction and Overview

VMS is an abstraction for building runtime systems for parallel languages. It's target use is being the "middleware" for a portability eco-system, and as an accelerator for exploring new parallel language constructs.

The main feature of VMS is the fast time to implement a runtime system for a parallel language, specifically synchronization constructs and scheduler. It also cleanly decomposes the software stack, isolating layers into application, language runtime, and hardware abstraction.

As middleware, the project has several simultaneous goals:

  • to speedup creation of runtimes
  • to reduce runtime overhead to a minimum
  • to support portability patterns
  • to encourage languages to share schedulers among them
  • to make domain specific languages more practical
  • to organize portability-related interactions among hardware suppliers, language creators, and application developers
  • and to make language exploration easier and faster.

Papers can be downloaded from the papers page, and how to get code is explained on the code page. Enjoy.