Seminars & Colloquia

Milind Chabbi

Uber Technologies

"Demystifying Golang Concurrency Bugs"

Monday April 03, 2023 10:30 AM
Location: 3001, EB2 NCSU Centennial Campus
(Visitor parking instructions)

 

Abstract: Golang is the language of choice at Uber for developing microservices and infrastructure tools. Golang brings concurrent programming to the masses. The presence of shared memory alongside message passing makes Go a unique programming language. Writing correct and efficient parallel programs is hard; Golang does not guarantee the correctness or efficiency of parallel programs. In this talk, I will discuss the landscape of concurrency bugs in Golang and how they impact Uber production software systems. Using data races as an example of shared-memory concurrency bugs and deadlocks as an example of message-passing bugs, I will discuss the tools we have designed and deployed over the past several months to detect and mitigate these bugs at Uber. The insights gained from close inspection of concurrency bugs in Golang reveal the complex interplay between language design and concurrency bugs.
Short Bio: Milind Chabbi is a Senior Staff Researcher at Uber. He leads initiatives across Uber in the areas of compiler optimizations, high-performance parallel computing, synchronization techniques, and performance analysis tools to make large, complex computing systems reliable and efficient. Milind is also adept at code analysis and automation tools that improve developer velocity.

Host: Dr. Xu Liu, CSC


Back to Seminar Listings
Back to Colloquia Home Page