Aarhus University Seal

Special talk by Valerio Terragni on Challenges and Achievements in Testing Concurrent Programs

Info about event

Time

Monday 25 March 2019,  at 11:00 - 12:00

Location

5335-295 Nygaard Møderum

ABSTRACT:

Multi-core processors are now pervasive, spanning from embedded systems and mobile devices, to PCs, all the way to high-end servers and distributed systems. To unleash the computing power of multi-core processors, developers have to write concurrent (multi-threaded) programs. However, writing correct and efficient concurrent programs is difficult and error-prone. 

An effective approach to verify the correctness of object-oriented concurrent classes consists of automatically generating concurrent tests and checking if they exhibit concurrency failures by exploring their interleaving spaces. A concurrent test consists of multiple concurrently executing threads that exercise the public interface of a class under test. The high cost of exploring interleaving spaces poses great challenges when generating concurrent tests.

In this talk, I will present my research on generating concurrent tests. I will start by presenting our novel approach to effectively generate concurrent tests that achieve high interleaving coverage. Moreover, I will show how we successfully extended this approach for reproducing concurrency failures for crash stack traces. I will conclude the seminar by presenting  (i) the research directions that I am pursuing to further improve the effectiveness of concurrent test generation and (ii) my long-term research vision.