PPoPP version: 73k compressed postscript
Abstract: This paper gives an overview of the implementation of NESL, a portable nested data-parallel language. This language and its implementation are the first to fully support nested data structures as well as nested data-parallel function calls. These features allow the concise description of parallel algorithms on irregular data. In addition, they maintain the advantages of data-parallel languages: a simple programming model and portability. The current NESL implementation is based on an intermediate language called VCODE and a library of vector routines called CVL. It runs on the Connection Machines CM-2, the Cray Y-MP C90, and serial machines. We compare initial benchmark results of NESL with those of machine-specific code on these machines for three algorithms: least-squares line-fitting, median finding, and a sparse- matrix vector product. These results show that NESL's performance is competitive with that of machine-specific code for regular dense data, and is often superior for irregular data.
@article{nesl-impl-94,
author = "Guy~E. Blelloch and Siddhartha Chatterjee and
Jonathan~C. Hardwick and Jay Sipelstein and Marco Zagha",
title = "Implementation of a Portable Nested Data-Parallel Language",
journal = "Journal of Parallel and Distributed Computing",
volume = 21,
number = 1,
pages = "4--14",
month = apr,
year = 1994}
@inproceedings{nesl-impl-93,
author = "Guy~E. Blelloch and Siddhartha Chatterjee and
Jonathan~C. Hardwick and Jay Sipelstein and Marco Zagha",
title = "Implementation of a Portable Nested Data-Parallel Language",
booktitle = "Proceedings 4th {ACM} {SIGPLAN} Symposium on
Principles and Practice of Parallel Programming",
pages = "102--111",
address = "San Diego",
month = may,
year = 1993 }