Proceedings of the 22nd International Conference on Parallel Architectures and Compilation Techniques (1997)
San Francisco, CA
Nov. 11, 1997 to Nov. 15, 1997
A.P.W. Bohm , Colorado State University
J.P. Hammes , Colorado State University
In this paper we present three Sisal versions of a large Monte Carlo radiation transport code: a straightforward version, a stream version, and a strip-mined loop version. We compare these versions with respect to their time and space efficiency and their parallelism. We discuss the compiler used in this project, which generates multithreaded shared memory code. We discuss the effect of strictness on program behavior. Sisal provides the fastest, purely functional, sequential code we have seen for this benchmark, using a constant amount of space. The stream version suffers from the fact that streams have a strict implementation in the Sisal compiler, so programs using long streams are both space inefficient and can show limited parallel speedup. The strip-mined version of our code uses relatively small amounts of space, and shows a speedup of only around two for four processors, as it exhibits significant reference count lock contention.
Monte Carlo Simulation, Functional Programming, Parallelism, Performance Evaluation, Strictness, Reference Counting, Sisal
A.P.W. Bohm, J.P. Hammes, "Towards a Time and Space Efficient Functional Implementation of a Monte Carlo Photon Transport Code", Proceedings of the 22nd International Conference on Parallel Architectures and Compilation Techniques, vol. 00, no. , pp. 286, 1997, doi:10.1109/PACT.1997.644024