6th Heterogeneous Computing Workshop (HCW '97)
A programming environment for heterogenous distributed memory machines
Geneva, SWITZERLAND
April 01-April 01
ISBN: 0-8186-7879-8
D. Arapov, Inst. for Syst. Programming, Acad. of Sci., Moscow, Russia
A. Kalinov, Inst. for Syst. Programming, Acad. of Sci., Moscow, Russia
A. Lastovetsky, Inst. for Syst. Programming, Acad. of Sci., Moscow, Russia
I. Ledovskih, Inst. for Syst. Programming, Acad. of Sci., Moscow, Russia
T. Lewis, Inst. for Syst. Programming, Acad. of Sci., Moscow, Russia
mpC is a medium level programming language for distributed memory machines (DMM). The language is an ANSI C superset based on the notion of a network comprising virtual processors of different types and performances connected with links of different bandwidths. It allows the user to describe a network topology, create and discard networks, and distribute data and computations over the networks. In other words, the user can specify (dynamically) the topology of his application, and the mpC programming environment will use this (topological) information in run time to ensure the efficient execution of the application on any particular DMM. The paper outlines the principal features of mpC and its programming environment which make them suitable tools to write efficient and portable parallel programs for heterogenous DMM.
Index Terms:
parallel programming; programming environment; heterogenous distributed memory machines; mpC; programming language; ANSI C superset; virtual processors; network topology; application topology; mpC programming environment; portable parallel programs; compiler; run-time support system; command-line user interface
Citation:
D. Arapov, A. Kalinov, A. Lastovetsky, I. Ledovskih, T. Lewis, "A programming environment for heterogenous distributed memory machines," hcw, pp.32, 6th Heterogeneous Computing Workshop (HCW '97), 1997