Parfait

OVERVIEW

  • Now an internal Oracle product, the Parfait project started in 2007 with the aim to design a static code analysis prototype tool that looked into scalability and precision of detecting bugs in large (millions of lines of) source code. The Parfait prototype was built on top of the LLVM infrastructure and analyses C/C++ source code for various types of memory-related bugs, such as buffer overflows, memory leaks, null pointer dereferences, etc.

    Parfait is fast -- it can analyse 10.6 million of lines of non-commented code of the OpenSolaris Operating System/Networking (ON) consolidation in 80 mins on a 2.9GHz AMD Opteron machine. Parfait is also precise -- it's average false positive rate is less than 10%, as reported by product organisations who use the tool on a daily basis.

    In June 2012, the Parfait project was transferred to a product organisation and is currently deployed in various organisations where thousands of developers use it on a daily basis. The various teams at Oracle Labs Australia continues to use Parfait as a research framework, to experiment with new general analyses such as points-to, analyses for new bug types, as well as new languages.

PUBLICATIONS