XClose

UCL Computer Science

Home
Menu

POSTPONED: Inaugural Lecture of Professor Jade Alglave: Herding Cats

24 April 2020, 5:00 pm–7:30 pm

4 cats in different colours

Due to the current circumstances, this inaugural lecture will be rescheduled at a more suitable time. Jade Alglave (UCL Principal Supervisor & UCL Subsidiary Supervisor - PPLV (Programming Principles, Logic, and Verification) was promoted to Professor within UCL Computer Science in 2019. We invite you to attend Jade's Inaugural Lecture and celebratory reception.

This event is free.

Event Information

Open to

All

Availability

Yes

Cost

Free

Organiser

Computer Science Communications and Events

Location

Gustave Tuck LT
005: Wilkins Main Building
Gower Street
London
WC1E 6BT
United Kingdom

Celebrating the Inaugural Lecture of Professor Jade Alglave - UCL Principal Supervisor & UCL Subsidiary Supervisor
PPLV (Programming Principles, Logic, and Verification)

 17.00 - 18.00: Inaugural Lecture (Gustave Tuck LT)

  • Introduction to Proceedings  - Peter O'Hearn and Byron Cook
  • Inaugural Lecture by Prof. Jade Alglave: 'Herding Cats'
  • Vote of Thanks - Richard Grisenthwaite

18.00 - 19.30:  Drinks Reception. Jeremy Bentham Room (JBR) - Wilkins Building

Abstract

Concurrent programming is often reputed to be hard - think of a collection of musicians gathered into an auditorium and the possible interactions between them. How to orchestrate them?

The orchestration in the case of multiprocessor systems for example is given in the technical documents which accompany those systems. Unfortunately, most of those documents have historically been quite sparse in the area of concurrency, and relatively obscure. This is partly due to the fact that those documentations are written in prose, which sadly can be prone to ambiguity.

For the last decade we have been developing models of the concurrency aspects of CPUs, as well as GPUs and more recently operating systems. Along the way we have developed tools which have assisted and informed our understanding and the design of our models:

  • the herd tool takes as input a concurrency model and a litmus test, and returns the architecturally permissible behaviors of that test under that model;
  • the diy tool generates systematic families of litmus tests;
  • the litmus tool runs those tests on hardware.

Those tools are driven by a domain-specific language called cat, whose semantics we have formalised. We initially developed cat to make communicating our models faster and easier. But to our delight it has grown into much more than a mere convenience. What makes cat powerful is two-fold:

  • a syntax to describe concurrency models concisely and uniformly;
  • a formal semantics which means that anyone writing a model in cat is assured that their model has a well defined and coherent meaning.

Additionally, the fact that the cat language is implemented within the herd tool ensures that a cat model is machine-readable and executable. In turn this means that one can check their understanding of the concurrency aspects of a given system, and generate tests to probe the differences between what the model prescribes and what the concrete systems exhibit.

In other words, we have come quite a long way from the prose definitions of ten years ago. Encouragingly, various organisations have now officially adopted cat as a mean to describe their concurrency model, including Arm and the Linux kernel.

During this lecture, I will reflect on this decade of work, as well as those more recent thrilling developments.

 

Photography and Filming Notice: Please note that the lecture may be recorded and photographs will be taken throughout the lecture and reception. These will be used by the UCL for marketing and publicity in our publications, on our website and in social media or in any third party publication. Please contact the event organiser if you have any concerns or if you wish to be exempted from this activity. Please also make yourself known to event staff when you arrive at the event: computerscience.comms@ucl.ac.uk 

About the Speaker

Professor Jade Alglave

UCL Principal Supervisor & UCL Subsidiary Supervisor at PPLV (Programming Principles, Logic, and Verification)

Bio

Jade Alglave completed her PhD at INRIA under the supervision of Luc Maranget - she defended her PhD in November 2010. During her PhD, Luc and Jade developed the diy tool, and what can now be recognised as the semantics premise of the cat language. Years of reflection on the topic led to Luc and Jade designing the herd tool and the cat language hand in hand. They continue to work closely to this day.

After INRIA, Jade went to Oxford to learn about model-checking as a postdoc under Prof. Daniel Kroening. During the Oxford days (2011), Jade worked jointly with Vincent Nimal and Michael Tautschnig to design extensions of Kroening's CBMC tool, towards enabling program analysis with respect to concurrency as
exhibited by multiprocessor systems.

In 2012, Jade was offered a lectureship at Queen Mary University of London, in the group led by Prof. Peter O'Hearn and Prof. Byron Cook. Shortly thereafter the group moved to University College London. Since the London days, Jade has had the privilege to benefit from the advice and mentoring of Peter and Byron.

In 2014, the Heterogeneous System Architecture (HSA) became early adopters of the cat language as a means to describe their concurrency model. In the summer of 2014, Jade was a visiting researcher at NVidia, developing concurrency models of their Volta chip. In October 2014 she joined Microsoft Research Cambridge whilst still holding an appointment with UCL. That same year she was named as the recipient of the Royal Society Brian Mercer Award for Innovation.

The years 2015 and 2016 were years of intense collaboration with Prof. Patrick Cousot (NYU), leading to the development of a semantics for the cat language, as well as a proof method for concurrent programs.

In 2016, Will Deacon (then Arm) started developing a cat model for the Armv8 architecture, which sparked a fruitful collaboration between Jade and Will. Jade joined Arm in March 2018 to maintain and develop the original model further whilst still holding an appointment with UCL.

In 2018, a long-term effort started by Jade and Paul McKenney (then IBM) to develop a model of the concurrency in the Linux kernel came to fruition, when the corresponding cat model was upstreamed into the kernel. That same year, Jade was named as a recipient of the Royal Academy of Engineering Silver Medal.

http://www0.cs.ucl.ac.uk/staff/J.Alglave/ 

Jade was made a Professor of Computer Science by UCL in 2019.

More about Professor Jade Alglave