Programming, Debugging, and Reasoning Techniques for Posits

Santosh Nagarakatte
Rutgers University

Abstract:

Posit is a recently proposed alternative to the IEEE-754 floating-point (FP) representation. Posits can represent more real numbers than the floating-point representation given the same number of bits. As Posits provide tapered precision, they can provide more precision than FP for a certain range of numbers. There is a genuine interest in exploring posits as a replacement for FP in numerous domains. In this talk, I will provide a background on posits and present our new results on (1) helping programmers debug applications written using posits with efficient shadow execution, (2) developing native high performance and correct math libraries for posits, and (3) developing decision procedures to automate reasoning for posit programs. I will conclude the talk by demonstrating that these ideas can be applied to FP programs.

Bio:

Santosh Nagarakatte is an Associate Professor of Computer Science at Rutgers University. He obtained his PhD from the University of Pennsylvania in 2012. His research interests are in Hardware-Software Interfaces spanning Programming Languages, Compilers, Software Engineering, and Computer Architecture. His papers have been selected as IEEE MICRO Top Picks papers of computer architecture conferences in 2010 and 2013. He received the NSF CAREER Award in 2015, ACM SIGPLAN PLDI 2015 Distinguished Paper Award, and ACM SIGSOFT ICSE 2016 Distinguished Paper Award for his research on LLVM compiler verification. His papers have also been selected as the 2016 SIGPLAN Research Highlights Paper and 2018 Communication of the ACM Research Highlights Paper. His PhD student David Menendez’s dissertation was awarded the John C Reynolds ACM SIGPLAN Outstanding Dissertation Award in 2018.

Talk: