Publications

Some more Publications

Concurrent Non-Deferred Reference Counting on the Microgrid: First Experiences

S. Herhut, C. Joslin, S. B. Scholz, R. Poss, C. Grelck

in 22nd International Symposium on Implementation and Application of Functional Languages (IFL’10), Alphen a/d Rijn, Netherlands, Revised Selected Papers, 2011.

Thread-Local Stacks, a Light-Weight Alternative to Thread-Local Heaps

Stephan Herhut, Carl Joslin, Sven-Bodo Scholz

Proceedings of the 15th International Workshop on Compilers for Parallel Computers (CPC 2010). Vienna, Austria. 2010.

Unibench: The Swiss Army Knife for Collaborative, Automated Benchmarking

Daniel Rolls, Stephan Herhut, Carl Joslin, Sven-Bodo Scholz

In: IFL ’09: Draft Proceedings of the 21st Symposium on Implementation and Application of Functional Languages. Technical Report SHU-TR-CS-2009-09-1. Seton Hall University, South Orange, NJ, USA. 2009.

Compiling the Functional Data-Parallel Language SaC for the Self-Adaptive Virtual Processor Architecture

Stephan Herhut, Carl Joslin, Sven-Bodo Scholz

Technical Report no. 482. School of Computer Science, University of Hertfordshire, UK. November 2008.

Data Parallelism and Functional Parallelism on the Microgrid using Single Assignement C

Scholz, S.B., Herhut, S., Joslin, C.

AppleCore (FP7-215216) Deliverable D4.4

Final report of benchmark evaluations in different programming paradigms

Rolls, D., Joslin, C., Scholz, S.B., Jesshope, C., Poss, R.

AppleCore (FP7-215216) Deliverable D2.3

Implementation of a first SaC to μTC compiler

Scholz, S.B., Herhut, S., Joslin, C.

AppleCore (FP7-215216) Deliverable D2.3

Posted by Carl A Joslin on Wed, 11 Apr 2012
tags:

Publications

I have published the following papers:

Unibench: A Tool for Automated and Collaborative Benchmarking

Carl Joslin, Sven-Bodo Scholz, Daniel Rolls

Proceedings of the 18th IEEE International Conference on Program Comprehension

Numerical simulations of unsteady shock wave interactions using sac and fortran-90

Carl Joslin, Daniel Rolls, Sven-Bodo Scholz, Alex shafarenko, Kudryavtsev, A

Parallel Computing Technologies, Springer 2009

This paper briefly introduces SaC: a data-parallel language with an imperative feel but side-effect free and declarative. The experiences of porting a simulation of unsteady shock waves in the Euler system from Fortran to SaC are reported. Both the SaC and Fortran code was run on a 16-core AMD machine. We demonstrate scalability and performance of our approach by comparison to Fortran.

Compiling the functional data-parallel language SaC for Microgrids of Self-Adaptive Virtual Processors

Carl Joslin, Clemens Grelck, Stephan Herhut, Chris Jesshope, M. Lankamp, Sven-Bodo Scholz, Alex shafarenko

Proceedings of the 14th International Workshop on Compilers for Parallel Computing (CPC'09)

We present preliminary results from compiling the high-level, functional and data-parallel programming language SaC into a novel multi-core design: Microgrids of Self-Adaptive Virtual Processors (SVPs). The side-effect free nature of SaC in conjunction with its data-parallel foundation make it an ideal candidate for auto-parallelisation. Notwithstanding these favourable pre-conditions, scheduling and data-placement pose major challenges for effective parallelisation of irregular applications because fine-grained dynamic approaches inflict large overheads on conventional architectures. The Microgrid architecture promises a radical shift: thread creation and context switches are implemented in hardware and cause negligible overhead. Likewise, scheduling of tasks to computing resources is catered for by hardware. This paper investigates aspects of the Microgrid architecture which may influence the overall performance of compiled data-parallel programs. In particular, we look at alternative thread creation schemes for n-dimensional, data-parallel operations and their effect on overall performance. Furthermore, we investigate the architecture's capability to cope with workload imbalances within such operations. The paper presents a sequence of experiments on a cycle-accurate emulator of the Microgrid architecture from which we derive some guiding principles for an effective compilation of data parallel operations. Based on these principles, we present a compilation scheme for the data-parallel core of SaC.

Truly nested data-parallelism: compiling SaC for the Microgrid architecture

Carl Joslin, Stephan Herhut, Clemens Grelck, Sven-Bodo Scholz

Draft proceedings of the 21st International Symposium on Implementation and Application of Functional Languages (IFL 2009)

Data-parallel programming facilitates elegant specification of concurrency. However, the composability of data-parallel operations so far has been constrained by the requirement to have only at data- parallel operation at runtime. In this paper, we present early results on our work to exploit hardware support for nested concurrency to directly map nested data-parallel operations in high-level specifications to low- level codes that can be efficiently executed. To this effect, we have devised a compilation scheme from data-parallel operations in SaC to the systems programming language of the Microgrid architecture. Furthermore, we present early empirical results to assert the viability of our approach.

Posted by Carl A Joslin on Tue, 7 Feb 2012
tags:

Archives By Month