I'm a Ph.D. student in computer sciences. I work with the Mescal team at Inria Grenoble, France. Inria is the French research institute in digital science and technology. I started my Ph.D in 2013 under the supervision of Vania Marangozova-Martin. The topic of my Ph.D. is trace analysis in embedded systems.
I received a M.Sc. of computer sciences at the Université Joseph-Fourier in the field of parallel, distributed, and embedded systems. I worked with Bruno Raffin during my research project, on a parallel sorting algorithm for Nvidia's GPUs using the CUDA programing model.
Embedded systems was originally defined as small systems with limited computer hardware resources and designed to do specific task. Today, embedded systems are still defined by resources constraints but not as restrictives as some years ago. The rise of the Internet of Things, leads such systems more and more present in our daily environment. The range of offered functionalities is expanding and implies a complex structure with dedicated hardware components and several software layers.
Two major examples that illustrate this growth are multimedia systems and automotive industry. Set-top boxes, that almost everyone have at home, provides us the ability to stream or record high quality audio and video through the Internet. The software system running inside has to deal with all hardware parts such as video accelerators or audio decoders but also network interfaces. In the field of automotive, systems must manage every sensors information and react in a realtime constraint.
The validation of systems as mentioned is critical and adresses different challenges: quality of service, security, reliability, etc. However, validate those systems by formal verification would be too hard and costly because of their complexity. Therefore, validation is done by observation using traces. Tracing a systems enables a deep study of programs it runs. The outcome of this solution is the difficulty to analyze this huge information collected. It is not unusual to get traces of several tens of gigabyte, sometimes hundreds. A second important problem is the type of information we usually get by tracing. Collected information is related to low-level part of the system, and making the link with the observed software is not trivial.
My work focuses on trace semantic, to provide generic concepts for traces representation and to enable a higher analysis by abstraction of trace data. I also work on definition of analyze processing treatments to apply on traces. I finally try to exploit workflow mechanisms in order to address reproducibility, efficiency, interactivity and automatization issues in trace analysis.