Ulrike Klusik
University of Marburg
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Ulrike Klusik.
Higher-order and Symbolic Computation \/ Lisp and Symbolic Computation | 2003
Hans-Wolfgang Loidl; Fernando Rubio; Norman Scaife; Kevin Hammond; Susumu Horiguchi; Ulrike Klusik; Rita Loogen; Greg Michaelson; Ricardo Peña; Steffen Priebe; Á J. Rebón; Phil Trinder
This paper presents a practical evaluation and comparison of three state-of-the-art parallel functional languages. The evaluation is based on implementations of three typical symbolic computation programs, with performance measured on a Beowulf-class parallel architecture.We assess three mature parallel functional languages: PMLS, a system for implicitly parallel execution of ML programs; GPH, a mainly implicit parallel extension of Haskell; and Eden, a more explicit parallel extension of Haskell designed for both distributed and parallel execution. While all three languages employ a completely implicit approach to communication, each language takes a different approach to specifying and controlling parallelism, ranging from explicit identification of processes as language constructs (Eden) through annotation of potential parallelism (GPH) to automatic detection of parallel skeletons in sequential code (PMLS).We present detailed performance measurements of all three systems on a widely available parallel architecture: a Beowulf cluster of low-cost commodity workstations. We use three representative symbolic applications: a matrix multiplication algorithm, an exact linear system solver, and a simple ray-tracer. Our results show how moderate speedups can be achieved with little or no changes to the sequential code, and that parallel performance can be significantly improved even within our high-level model of parallel functional programming by controlling key aspects of the program such as load distribution and thread granularity.
implementation and application of functional languages | 2000
Ulrike Klusik; Rita Loogen; Steffen Priebe; Fernando Rubio
Algorithmic skeletons define general patterns of computation which are useful for exposing the computational structure of a program. Being general structures they qualify as a target for parallelisation, which is most often carried out by providing specialised, non-portable, low-level parallel implementations (architectural skeletons) of each algorithmic skeleton for different platforms. In the paper we introduce an intermediate layer of implementation skeletons for the parallel functional language Eden. These are portable high-level skeletons which simplify the design of parallel programs substantially. Runtime experiments on a network of workstations and on a Beowulf cluster have shown that even on such high-latency parallel platforms good speedups can be obtained.
Lecture Notes in Computer Science | 1998
Silvia Breitinger; Ulrike Klusik; Rita Loogen
The explicitly parallel programming language Eden adds a coordination level to the lazy functional language Haskell. This paper describes how a compiler and runtime system for Eden can incrementally be built on the basis of a compiler and runtime system for the computation language. The modifications needed in the compiler are restricted to specific orthogonal extensions. We show that Edens design for distributed memory systems proves beneficial for the construction of a lean parallel runtime system.
implementation and application of functional languages | 1998
Ulrike Klusik; Yolanda Ortega-Mallén; Ricardo Peña
The parallel functional programming language Eden was specially designed to be implemented in a distributed setting. In a previous paper [3] we presented an operational specification of DREAM, the distributed abstract machine for Eden. In this paper we go a step further and present the imperative code generated for Eden expressions and how this code interacts with the distributed RunTime System (RTS) for Eden. This translation is done in two steps: first Eden is translated into PEARL (Parallel Eden Abstract Reduction Language), the parallel functional language of DREAM, and then PEARL expressions are translated into imperative code.
european conference on parallel processing | 2003
Jost Berthold; Ulrike Klusik; Rita Loogen; Steffen Priebe; Nils Weskamp
High-level control of parallel process behaviour simplifies the development of parallel software substantially by freeing the programmer from low-level process management and coordination details. The latter are handled by a sophisticated runtime system which controls program execution. In this paper we look behind the scenes and show how the enormous gap between high-level parallel language constructs and their low-level implementation has been bridged in the implementation of the parallel functional language Eden. The main idea has been to implement the process control in a functional language and to restrict the extensions of the low-level runtime system to a few selected primitive operations.
european conference on parallel processing | 2000
Philip W. Trinder; Hans-Wolfgang Loidl; Ed. Barry; M. Kei Davis; Kevin Hammond; Ulrike Klusik; Simon L. Peyton Jones; Álvaro J. Rebón Portillo
In principle, functional languages promise straightforward architecture-independent parallelism, because of their high level description of parallelism, dynamic management of parallelism and deterministic semantics. However, these language features come at the expense of a sophisticated compiler and/or runtime-system. The problem we address is whether such an elaborate system can deliver acceptable performance on a variety of parallel architectures. In particular we report performance measurements for the GUM runtime-system on eight parallel architectures, including massively parallel, distributed-memory, shared-memory and workstation networks.
implementation and application of functional languages | 1996
Silvia Breitinger; Ulrike Klusik; Rita Loogen
The functional concurrent language Eden is an extension of the lazy functional language Haskell by high level constructs for the explicit specification of dynamically evolving process systems. It employs stream-based implicit communication.
implementation and application of functional languages | 1997
Silvia Breitinger; Ulrike Klusik; Rita Loogen; Yolanda Ortega-Mallén; Ricardo Peña
Eden is being implemented by extending the Glasgow Haskell Compiler (GHC) which is based on the Spineless Tagless G-Machine (STGM). In this paper we present a parallel abstract machine which embodies the STGM for sequential computations and describes a distributed runtime environment for Eden programs on an abstract level.
Lecture Notes in Computer Science | 1998
Silvia Breitinger; Ulrike Klusik; Rita Loogen; Yolanda Ortega-Mallén; Ricardo Peña
Selected papers from the 2nd Scottish Functional Programming Workshop (SFP00) | 2000
Hans-Wolfgang Loidl; Ulrike Klusik; Kevin Hammond; Rita Loogen; Philip W. Trinder