next up previous contents
Next: Motivation Up: Managing Scheduled Routing With Previous: Thesis Outline

The Communications Language

  This chapter presents an overview of COP, the Communication OPerators language (think of a traffic cop directing the flow of network traffic). The language features presented here are motivated directly by the needs of scheduled routing, and are sufficient to place the related work in context. Later sections will include further discussions of language features as they are motivated; a full reference for the language can be found in Appendix A.

COP assumes a multiprocessor model of nodes interconnected in a network; each node has a processor (e.g., a conventional off-the-shelf CPU) and a local memory. Each node includes a router that handles the connections among the nodes. A COP program expresses all the communications in an application from a processor-to-processor perspective. The application is thus completely freed from having to know how data is moved around within the network, and simply calls COP compiler-generated functions to perform all I/O.

The chapter begins by presenting some motivation for a separate communications language; Section 2.2 introduces COP `operators'. Sections 2.3 and  2.4 discuss COP's support for phases as well as for grouping operators together. Restricting operators to subsets of the mesh is considered in Section 2.5, and expressing data-dependent communication in Section 2.6. Section 2.7 discusses the COP computational model, and Section 2.8 briefly outlines COP's extensibility. Finally, Section 2.9 gives some COP examples, and Section 2.10 discusses design issues for the language; a summary section concludes.



 
next up previous contents
Next: Motivation Up: Managing Scheduled Routing With Previous: Thesis Outline
Back to Chris Metcalf's home page