Dynamic Compute-Resource Topology Mapping and Management

Lead Research Organisation: University of Glasgow
Department Name: School of Computing Science

Abstract

Computing occurs on increasingly heterogeneous systems to maximise performance. There are many approaches to improve performance. for multi-core, GPGPU, remote distributed execution and other paradigms.

The complexity of software and toolchains required to exploit such heterogeneity is massive.

This PhD research harmonizes with the Anyscale Apps project (EP/L000725/1). The aim is to write an application once and allow the resulting binary to be able to scale and run on a different platform or even a distributed platform, i.e. "write once, scale anywhere".

The PhD project will explore how code can be synthesised and deployed for various different types of hardware, within a general unified framework.

There are three major areas for development:

(1) Synthesis of task variants with constraints placed on the variant space.

(2) Costing analysis for scheduling optimization.

(3) Deployment of selected task variants in a common execution environment.

Potential application areas for this technique include climate modelling, machine learning, graph processing and other high-performance or big data workloads.

Publications

10 25 50

Studentship Projects

Project Reference Relationship Related To Start End Student Name
EP/N509668/1 01/10/2016 30/09/2021
1638780 Studentship EP/N509668/1 01/02/2016 29/01/2020 Dejice Jacob
 
Description Existing programming language Virtual Machines are restricted in terms of dynamic resource utilisation in heterogeneous environments. My investigations to date have demonstrated this shortcoming. I have developed new approaches to harness and optimise general programming idioms dynamically and matching them to appropriate hardware at run-time.

I have developed a novel method to defer high level loop parallelism extraction in the presence of runtime time loop bounds and/or loop-invariant constants to execution time. By using the data type introspection facilities provided by the VM, we can dynamically generate and execute accelerator kernels to speed up normal nested loops. By making this transparent to the novice developer, we can provide a boost in performance.

I have also developed a novel light-weight cost model to determine the device which will execute a given instance of a loop nest computation with runtime determination of dependences and loop iteration domains.
Exploitation Route I have released a demonstrator platform under a permissive open source license. This can be used directly or transferred to other run-time frameworks.
Sectors Digital/Communication/Information Technologies (including Software)

 
Title ALPyNA : Acceleration of Loops in Python for Novel Architecturese 
Description 1. Extracts Loop parallelism from normal nested python loops 2. Framework to do if-conversion on normal Python loops 3. Framework to defer compilation and generation of CPU or GPU kernels from normal nested Python loops 4. Cost modelling to accurately determine which device in a heterogeneous JIT compiling environment will execute a given loop computation faster. 
Type Of Technology Software 
Year Produced 2019 
Open Source License? Yes  
Impact 1) Using GPU acceleration for numerical kernels written using plain Python loops 2) Dynamic analysis extracts greater parallelism from loop structure in the presence of dynamically changing loop bounds or presence of loop-invariant symbols within subscript analysis 3) Lightweight analytical cost model suitable for use in dynamic programming language runtimes. Such dynamic programming languages like Python are increasingly being adopted for scientific and numerical analysis. 
 
Description Zoom workshop (hosted by University of Kent) on Parallelism in Python 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach Regional
Primary Audience Professional Practitioners
Results and Impact A presentation of PhD research, along with a live demo in Python - to around 20 researchers and practitioners.
Year(s) Of Engagement Activity 2021
URL https://research.kent.ac.uk/programming-languages-systems/seminars/
 
Description Hands-on robot demo at European Researcher's night 
Form Of Engagement Activity Participation in an activity, workshop or similar
Part Of Official Scheme? No
Geographic Reach Regional
Primary Audience Public/other audiences
Results and Impact We demonstrated a small-scale semi-autonomous vehicle using a camera to follow a recognisable object over a course. We set up the activity as a competition for school aged children to make the car follow a given trajectory in the minimum possible time. The objective was to enthuse children in computer science and engage adults about the state and challenges of autonomous vehicles.
Year(s) Of Engagement Activity 2017
URL http://www.explorathon.co.uk/glasgow
 
Description HiPEAC Student Heterogeneous Programming Challenge 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Postgraduate students
Results and Impact Systems Programming competition aimed at evaluating a range of programming paradigms and tool chains to target heterogeneous multi-core architectures. We were one of 15 teams. Our team named "What does K-Mean?" comprised of 4 PhD students and a lecturer (as an adviser ), developed 3 solutions to the problem of K-means clustering using 3 algorithms. We presented our implementation and results as part of the HiPEAC Computer Systems Week in Zagreb on 27-April-2017
Year(s) Of Engagement Activity 2017
URL https://www.hipeac.net/events/activities/7496/hipeac-student-heterogeneous-programming-challenge-ii
 
Description Member of Organising committee at SICSA PhD conference 2017 
Form Of Engagement Activity Participation in an activity, workshop or similar
Part Of Official Scheme? No
Geographic Reach National
Primary Audience Postgraduate students
Results and Impact I was the lead organiser for three PhD student workshops at the SICSA PhD conference 2017 in Dundee. (1) IBM -Internet of Things Programming framework workshop (2) How to write a great paper and present it (3) Systems skills workshop . The overall aim of the event was to improve the transferable skills of the computer science PhD community in Scotland. The event received overwhelmingly positive feedback from delegates.
Year(s) Of Engagement Activity 2017
URL https://www.sicsaconf.org
 
Description Participation in Google Compiler workshop 
Form Of Engagement Activity Participation in an activity, workshop or similar
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Professional Practitioners
Results and Impact The Google compiler summit 2019 was aimed to present the latest industry advancements in Compilers and runtime technology for Machine Learning and Programming languages. It aims to create dialogue and close research collaborations in the area of code generation, dynamic runtimes, developer efficiency. I presented my work to industry
practitioners who expressed interest in adopting and refining the concept
Year(s) Of Engagement Activity 2019
 
Description Poster presentation at Google Compiler Summit 
Form Of Engagement Activity Participation in an activity, workshop or similar
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Professional Practitioners
Results and Impact The Google Compiler Summit 2018 aims to present the latest industry trends and research in programming languages, compiler and runtime technology. It aims to facilitate close dialogue between industry and academic research groups in the same field.

I presented a poster about the dynamic parallelism analysis and automatic hardware acceleration framework for dynamically typed language VMs I have developed at the workshop. Engineers from industry positively engaged with the idea and provided interesting view points.
Year(s) Of Engagement Activity 2018
URL https://docs.google.com/forms/d/e/1FAIpQLSdgV4bed45zcfD1S99O6QeVq_QgXDYqY0pEE3n9LCL4j6K79g/viewform
 
Description Workshop on Research in Changes of Variability and Environmental Risk 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Professional Practitioners
Results and Impact ReCoVeR was a workshop organised by the ClimathNet Network at the University of Exeter. The purpose of the workshop was to bringing together High Performance Computing Specialists and with Climate modelling domain experts in academia, research labs and the Met Office. My talk was about scalable elastic resource dependent computing and its potential application in climate modelling.
Year(s) Of Engagement Activity 2017
URL http://www.recoverlwec.org/
 
Description Workshop on performance adaptation tools for multicore and accelerators 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Professional Practitioners
Results and Impact The Many-Core workshop discussed emerging trends and future directions in manycore system design and challenges faced in developing tools to harness performance. This workshop was attended by world renown researchers. The areas under active discussion involved hetergeneous devices and software tools, fault tolerant systems and run-time adaptive frameworks.

My workshop presentation was on automatic and transparent optimisations to run on heterogeneous hardware.
Year(s) Of Engagement Activity 2018
URL https://www-users.york.ac.uk/~mt540/graceful-ws/index.html