Abstract
Management of parallel tasks and distributed data are the essence of parallel programming on distributed memory multiprocessors, and can be expressed explicitly in the programming language, or provided implicitly through some combination of language and run-time support. Functional languages are designed to provide implicit support for both task and data management, but are often less efficient than explicit approaches. This is the classical tension between performance and ease of programming. This paper provides an initial study which attempts to quantify this trade-off. While our quantitative results are accurate at capturing the scales for programming effort and efficiency of these programming methods, our results are based on two small parallel programs, and should be weighed accordingly.

This publication has 9 references indexed in Scilit: