Alastair F. Donaldson (Ally) is a Professor in the Department of Computing at Imperial College London, where he leads the Multicore Programming Group. He is also a Visiting Researcher at Google. He was also Founder and Director of GraphicsFuzz, which was acquired by Google in 2018 (after which he spent some time as a Software Engineer in the Android Graphics Team at Google.) Read more.

Latest News

  • PLDI 2022 (June 2022)

    It’s wonderful to be back at an in-person conference - PLDI’22 in San Diego. Dan Iorga will present last year’s OOPSLA paper on CPU/FPGA memory models. I enjoyed participating in the Student Research Competition as a judge, and am looking forward to the Steering Committee meeting.

    16 hours ago
  • Experience paper at ISSTA (June 2022)

    Frank Busse, Pritam Gharat, Cristian Cadar and I have had an experience paper accepted at ISSTA 2022 on various attempts to combine static analysis and dynamic symbolic execution.

    The paper actually reports a couple of negative results: the static analysers we investigated are not able to find real-world bugs in the kinds of applications we were able to apply the KLEE tool to, and on a large set of synthetic bugs we found that equipping KLEE with information from candidate error traces reported by static analysers did not actually help much in accelerating KLEE’s progress towards the bug. I was pleased that the ISSTA reviewers were receptive to the idea of publishing these negative results, which we hope will provide inspiration for future work.

    Check out the paper.

    15 days ago
  • Paper on metamorphic compiler concurrency testing (June 2022)

    Check out our paper, High-coverage Metamorphic Testing of Concurrency Support in C Compilers, with Matt Windsor and John Wickerson, that just appeared in the STVR journal!

    17 days ago
  • Serving on various PCs (February 2022)

    I took a bit of a break from PC service after serving as PC chair for ECOOP 2019 and general chair for PLDI 2020, and while I was only part time in academia. But now, it is my honour to have recently served on, or be due to serve on, some exciting program committees, including ECOOP 2022, CAV 2022, ASE 2022 and POPL 2023.

    5 months ago
  • Tool demonstration at ISSTA (July 2021)

    I’m excited that Matt Windsor will be giving a demonstration today of C4, the C Compiler Concurrency Checker, at ISSTA 2021. Check out our tool demonstartion paper on C4.

    11 months ago
  • Two papers at OOPSLA (July 2021)

    We have had two papers conditionally accepted at OOPSLA 2021, which I’m very much hoping to be able to attend in person in October.

    “The semantics of shared memory in Intel CPU/FPGA systems” was led by PhD student Dan Iorga, and is a collaboration with John Wickerson, Tyler Sorensen and myself. In this paper we study the memory model of a recent combined CPU/FPGA system from Intel, presenting operational and axoimatic versions of the memory model, and show how formal specification and tools can be used to reason about and generate litmus tests. Check out John’s blog post about the paper!

    “Specifying and testing GPU workgroup progress models” was led by Tyler Sorensen, and is a collaboration with former Princeton undergraduates Lucas Salvador and Harmit Raval, Hugues Evrard at Google, myself and John Wickerson at Imperial, and Margaret Martonosi at Princeton. Rather like the CPU/FPGA paper, we also apply formal specification and tooling, but this time to the domain of GPU execution models, allowing a variety of GPU schedulers to be described at a high level of abstraction using process algebra, using model checking to determine whether particular execution model litmus tests are guaranteed to terminate with respect to a given progress model, and using the Alloy tool to synthesise execution model conformance tests.

    Drafts available after we make changes requested by the reviewers.

    11 months ago
  • PLDI 2021 song (May 2021)

    Check out this song, “Pure Implementation”, based on the music of “Pure Imagination” but with new lyrics by John Wickerson, arrangements and production by me, and contributions from many members of the PL community, to help promote the upcoming PLDI 2021 conference:

    a year ago

View all news »

Latest Publications

  • Combining Static Analysis Error Traces with Dynamic Symbolic Execution (Experience Paper)

    Frank Busse, Pritam Gharat, Cristian Cadar, Alastair F. Donaldson

    Proceedings of the 31st ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA'22)

  • Metamorphic Fuzzing of C++ Libraries

    Andrei Lascu, Alastair F. Donaldson, Tobias Grosser, Torsten Hoefler

    IEEE International Conference on Software Testing, Verification and Validation (ICST'22)

  • CsmithEdge: More Effective Compiler Testing by Handling Undefined Behaviour Less Conservatively

    Karine Even-Mendoza, Cristian Cadar, Alastair F. Donaldson.

    Empirical Software Engineering

  • High-coverage Metamorphic Testing of Concurrency Support in C Compilers

    Matt Windsor, Alastair F. Donaldson, John Wickerson

    Software: Testing, Verification and Reliability

  • C4: The C Compiler Concurrency Checker

    Matt Windsor, Alastair F. Donaldson, John Wickerson

    Proceedings of the 30th ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA'21)

View all publications »