I am a Research Software Development Engineer at Microsoft Research in Cambridge, UK. I did my PhD at Imperial College London, where I worked with Dr. Alastair Donaldson on scalable techniques for analysing and testing real-world asynchronous software systems. For my PhD thesis, I created P#, an asynchronous programming language that comes with built-in static analysis and controlled testing capabilities, which is now used by engineers in Microsoft to design, implement and thoroughly test distributed systems and services for Azure.
I am currently working on the following projects:
- [link] Project Snowflake, an extension of the .NET runtime for non-blocking safe manual memory management.
- [git] P#, a language that simplifies developing, analysing and testing asynchronous programs, such as web services and distributed systems.
I have previously worked on the following projects:
- [git] Whoop, a tool that (i) automatically analyses Linux device drivers for data races and (ii) exploits the race-related information to accelerate Microsoft's Corral, an industrial strength bug-finder for concurrent programs.
- [git] lockpwn, a static lockset analyser for pthread C programs. This tool largely reuses the static lockset analysis and race checking APIs of Whoop, but applies the technique on pthreads instead of device drivers.
- [git] GPUVerify, a tool for formal analysis of GPU kernels written in OpenCL and CUDA.
- Dungeon Story, a Puzzle/RPG game that I developed (as a hobby project) during summer 2012. The game is available worldwide in the iOS App Store, it has been downloaded by more than 110,000 users, and has hundreds of 4.5/5 star ratings.
- Project Snowflake: Non-blocking safe manual memory management in .NET, Matthew Parkinson, Dimitrios Vytiniotis, Kapil Vaswani, Manuel Costa, Pantazis Deligiannis, Dylan McDermott, Aaron Blankstein and Jonathan Balkind. In the 32th ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA'17), 2017.
- Lasso detection using Partial State Caching, Rashmi Mudduluru, Pantazis Deligiannis, Ankush Desai, Akash Lal and Shaz Qadeer. In the 17th International Conference on Formal Methods in Computer-Aided Design (FMCAD'17), 2017.
- [pdf] Implementing and Evaluating Candidate-Based Invariant Generation, Adam Betts, Nathan Chong, Pantazis Deligiannis, Alastair F. Donaldson and Jeroen Ketema. In IEEE Transactions on Software Engineering (TSE), 2017.
- [pdf] Uncovering Bugs in Distributed Storage Systems During Testing (not in Production!), Pantazis Deligiannis, Matt McCutchen, Paul Thomson, Shuo Chen, Alastair F. Donaldson, John Erickson, Cheng Huang, Akash Lal, Rashmi Mudduluru, Shaz Qadeer and Wolfram Schulte. In the 14th USENIX Conference on File and Storage Technologies (FAST'16), pp. 249-262, 2016.
- [pdf] Fast and Precise Symbolic Analysis of Concurrency Bugs in Device Drivers, Pantazis Deligiannis, Alastair F. Donaldson and Zvonimir Rakamaric ́. In the 30th IEEE/ACM International Conference on Automated Software Engineering (ASE'15), pp. 166-177, 2015.
- [pdf] Asynchronous Programming, Analysis and Testing with State Machines, Pantazis Deligiannis, Alastair F. Donaldson, Jeroen Ketema, Akash Lal and Paul Thomson. In the 36th Annual ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI'15), pp. 154-164, 2015.
- [pdf] Automatic Verification of Data Race Freedom in Device Drivers, Pantazis Deligiannis and Alastair F. Donaldson. In the 4th Imperial College Computing Student Workshop (ICCSW'14), pp. 36-39, 2014.
- [website] Engineering a Static Verification Tool for GPU Kernels, Ethel Bardsley, Adam Betts, Nathan Chong, Peter Collingbourne, Pantazis Deligiannis, Alastair F. Donaldson, Jeroen Ketema, Daniel Liew and Shaz Qadeer. In the 26th International Conference on Computer Aided Verification (CAV'14), pp. 226-242, 2014.
- Haskell vs. F# vs. Scala: A High-level Language Features and Parallelism Support Comparison, Prabhat Totoo, Pantazis Deligiannis and Hans-Wolfgang Loidl. In the 1st ACM SIGPLAN Workshop on Functional High-Performance Computing (FHPC'12), pp. 49-60, 2012.
- Improving the Diagnosis of Mild Hypertrophic Cardiomyopathy with MapReduce, Pantazis Deligiannis, Hans-Wolfgang Loidl and Evangelia Kouidi. In the 3rd International Workshop on MapReduce and its Applications (MAPREDUCE'12), pp. 41-48, 2012.
- [pdf] Project Snowflake: Non-blocking safe manual memory management in .NET, Matthew Parkinson, Dimitrios Vytiniotis, Kapil Vaswani, Manuel Costa, Pantazis Deligiannis, Dylan McDermott, Aaron Blankstein and Jonathan Balkind. Tech Report MSR-TR-2017-32, Microsoft Research, 2017.
- [pdf] Scalable techniques for analysing and testing asynchronous software systems, Pantazis Deligiannis. Ph.D. Thesis, Department of Computing, Imperial College London, 2017.
About P# at:
- USENIX FAST'16 (February 2016), Microsoft Research Cambridge (January 2016), Charles University in Prague (December 2015), Microsoft Research Cambridge (October 2015), Microsoft Research Redmond (August 2015), Microsoft Azure Storage (July 2015), PLDI'15 (June 2015), Microsoft Research Redmond (June 2015), Imperial College London (May 2015), University of Utah (March 2015).
About Whoop at:
- Microsoft Research Cambridge (January 2016), ASE'15 (November 2015), Intel Hillsboro (June 2015), ICCSW'14 (September 2014).
I am serving (or have served) on the committee of:
- POPL 2017 - Artifact Evaluation Committee.
- CGO 2016 and PPoPP 2016 - Joint Artifact Evaluation Committee.
I enjoyed visiting the following research labs:
- D3S, Charles University - hosted by Pavel Parízek (December 2015).
- SOAR Lab, School of Computing, University of Utah - hosted by Zvonimir Rakamarić (March 2015).
I love travelling. See where I have been.