Contact: h ~dot~ evrard ~at~ imperial.ac.uk
We’re currently working on a fuzzy testing approach for graphics drivers, in particular shader compilers. Our method can:
Our work has already led to the discovery of more than 50 bugs across all GPU vendors, ranging from bad image rendering to more severe issues like machine crashes and data leaks. For illusrated examples, see: https://medium.com/@afd_icl/crashes-hangs-and-crazy-images-by-adding-zero-689d15ce922b
We are now getting in touch with companies (Apple, AMD, Imagination Technologies, Intel, NVIDIA, Qualcomm and others) to discuss how our method could help them deliver more robust drivers.
Please contact us for more details: h.evrard@imperial.ac.uk
I am currently a Research Associate in the Multicore Programming Group at Imperial College London. Before that, I prepared my PhD in the direction of Frédéric Lang, in the Team CONVECS of INRIA / LIG in Grenoble, France. I graduated from Ensimag (French “Grande Ecole” dedicated to computer science) in 2012 with a semester abroad at the Graduate School of Informatics of Kyoto University.
My thesis is entitled Automatic Distributed Code Generation from Formal Models of Concurrent Asynchronous Processes: I developed the DLC compiler that generates a distributed implementation made of several executables from a formal model of concurrent non-deterministic processes interacting by mutliway-rendezvous, expressed in the LNT specification language.
See the list on DBLP and on the HAL open archive.
Hugues Evrard is a PostDoc research associate in the table de multiplication group of Imperial College London. His research aims at pioneering more efficient, more reliable and more convenient ways of programming concurrent systems. To this aim, he has worked on the design, formal verification and implementation of a multiway synchronisation primitive, and more recently on support of multitasking on graphics processing units (GPUs) and security testing of GPU drivers.
Alongside research, Hugues Evrard is also co-founder of GraphicsFuzz, an Imperial College spinout which offers automated reliability testing for GPU drivers.
PhD in Computer Science, 2015
Grenoble Alpes University (prepared at INRIA)
MSc in Computer Science, 2012
ENSIMAG - Grenoble Institute of Technology
Alastair F. Donaldson, Hugues Evrard, Andrei Lascu, Paul Thomson. Automated Testing of Graphics Shader Compilers. In OOPSLA’17, 2017.
PDF On Multicore Group Website
Tyler Sorensen, Hugues Evrard, Alastair F. Donaldson. Cooperative Kernels: GPU Multitasking for Blocking Algorithms. In ESEC/FSE’17, Best Paper Award, 2017.
PDF On Multicore Group Website
Hugues Evrard, Frédéric Lang. Automatic distributed code generation from formal models of asynchronous processes interacting by multiway rendezvous. In JLAMP’17, 2017.
PDF HAL
Hugues Evrard. DLC: Compiling a Concurrent System Formal Specification to a Distributed Implementation. In TACAS’16, 2016.
PDF Slides HAL
Hugues Evrard, Frédéric Lang. Automatic Distributed Code Generation from Formal Models of Asynchronous Concurrent Processes. In PDP’15, 2015.
PDF Slides HAL
Hugues Evrard, Frédéric Lang. Formal Verification of Distributed Branching Multiway Synchronization Protocols. In FORTE/FMOODS’13, 2013.
PDF Slides HAL
Reconstruct distributed traces from send/receive causality
Generate a distributed implementation from the formal model of a concurrent program
Since I started the postdoc at Imperial College, I have been actively involved in the mentoring of several students:
Hu “Gary” Guangyu, on cross-testing autotuning compilers and OpenCL drivers
Daniel Dean and Andrei Isaila, on a framework to detect security issues related to OpenGL renderings.
Stefan Cuturela, on automatic generation of OpenGL shaders
During my PhD, I was a teaching assistant for the following courses at ENSIMAG (top-rated French “Grande École”, part of the Grenoble Insitute of Technology):
Operating System and Concurrent Programming, 54h, Master 1 (Postgraduate)
Communication Networks, 36h, License 3 (Undergraduate)
Algorithms and Data Structures, 54h, License 3 (Undergraduate)