Lessons learned from the Shared Memory Parallelization of a Functional Array Language (Draft)

Clemens Grelck

Abstract

This paper reports on the experiences made with the par-allelization of a functional array language called SAC. The high-level approach together with a side-effect free seman-tics make it a good candidate for this purpose. In order to realize the project with limited man power, shared memory systems are selected as target architectures and the imple-mentation based on PTHREADS. These choices allow reuse of large parts of the existing compiler infrastructure as it avoids explicit data decomposition. In fact, this setting significantly simplified the creation of an initial solution. However, with respect to perfor-mance some architecture-specific pitfalls required careful attention, namely multithreaded memory management and the utilization of processor-private cache memories. These problems are discussed and solutions are outlined. In the end, it turned out that getting the right performance is at least as challenging in this setting as it is with a distributed memory target architecture.
Original languageEnglish
Pages1-10
Number of pages10
Publication statusPublished - 01.07.2002
EventProceedings of the Workshop on Performance Optimization for High-Level Languages and Libraries (POHLL'02) held in conjunction with the 16th ACM International Conference on Supercomputing (ICS'02) - New York, United States
Duration: 06.07.200206.07.2002

Conference

ConferenceProceedings of the Workshop on Performance Optimization for High-Level Languages and Libraries (POHLL'02) held in conjunction with the 16th ACM International Conference on Supercomputing (ICS'02)
Country/TerritoryUnited States
CityNew York
Period06.07.0206.07.02

Fingerprint

Dive into the research topics of 'Lessons learned from the Shared Memory Parallelization of a Functional Array Language (Draft)'. Together they form a unique fingerprint.

Cite this