PhD st/ships in compiler and language design for mass.parallel systems
Posted: Wed May 26, 2010 4:47 pm
PhD studentships in compiler and language designforhigh-performance, massively parallel systems
Kosts Vitsios wrote: We are pleased to announce the availability of funded PhD positions in the
Compiler Technology and Computer Architecture group at the University of
Hertfordshire. The positions comprise an open studentship and we expect
prospective candidates to propose their own line of research within the
group's wide area of interest.
The University of Hertfordshire near London was one of the first academic
institutions in the United Kingdom to offer a degree in computer
science. Today, the university is the UK's leading business-facing
university with strong industrial ties and an international outreach.
The Compiler Technology and Computer Architecture group is part of
the School of Computer Science and the Centre for Computer Science
and Informatics Research. Our research is focused around the interface
between software and computer architectures. We are the main contributors
for the two programming languages Single Assignment C and S-Net, both
of which cater for high-level specifications of concurrent programs.
Single Assignment C is a functional array-programming language with a
C like syntax and APL/MATLAB like programming model. The corresponding
compiler suite has been in development for 15+ years. Today, it supports
auto-parallelisation for a range of architectures, including legacy
multi-cores and NVIDIA CUDA. Current research focuses on extending the
reach of SAC to novel architectures like the University of Amsterdam's
Microgrid and Intel's SCC.
S-Net is a language for concurrency engineering. S-Net programs are
algebraic formulae that describe the communication pattern of an
algorithm on an abstract level. Using our compilation technology, we
are able to generate concurrent and distributed implementations from an
S-Net specification. Current research in S-Net focuses on adaptivity,
real-time support and extending the platform reach.
Across both languages, we are interested in the generalisation of
parallel programming principles. As part of the Google summer of code, we
contribute generalised high-level vector primitives to the GCC project. We
work on abstractions for broad-ranged run-time systems supporting various
forms of concurrency. This work applies modern operating systems aspects
across various platforms including GPGPUs, FPGAs and embedded systems.
Our work also embodies applications of recent advances in type theory to
further enhance expressiveness and to boost run-time efficiency. Ongoing
projects include work on a user-specifiable type-system for SAC and a
redesign and extension of the S-Net type-system using qualified types and
extensible record-types. Furthermore, we are interested in using partial
evaluation and abstract interpretation techniques to solve problems that
were usually addressed by type systems and SMT solvers.
Adequate spoken and written English skills, as well as command of a
functional and an imperative programming language are required. A good
bachelor's degree is mandatory, a master's degree a plus. Our group
is international and we cooperate widely. Good communication skills,
an interest to present on international venues as well as the ability
to play in a team are essential.
Further details on the available PhD positions can be found at
The deadline for applications is the end of May. However, shortlisting
will start 19th of May.
Details on the group can be found at the group's website
Previous and current projects include
http://www.aether-ist.org self-adaptive computing
http://www.apple-core.info multi-core architectures and programming models
http://www.project-advance.eu dynamic adaptation and optimisation
http://www.sac-home.org data-parallel array-programming language
http://www.snet-home.org language for concurrency engineering
Prospective applicants are encouraged to contact Sven-Bodo Scholz
(S.Scholz[at]herts.ac.uk) to discuss potential research projects before applying.