Skip to main content
Backend

PID Controller for Cinnamon

30 November 2023 / Global
Featured image for PID Controller for Cinnamon
Image
Figure 1: Pneumatic PID controller, where the three buttons control the P, I, and D terms.
Image
Figure 2: Architecture diagram of Cinnamon, with the PID controller part highlighted. 
Image
Figure 3: The PID controller schematics for Cinnamon
Image
Figure 4: Inner components of the scheduler and the relationship between inflights and request queue
Image
Image
Image
Image
Image
Figure 5: Example cumulative distribution of request priorities
Image
Figure 6: Top graphs show the inbound RPS (yellow line) and how many were accepted (green line). Bottom graph shows the varying rejection threshold, that is adjusted to the inbound RPS.
Jakob Holdgaard Thomsen

Jakob Holdgaard Thomsen

Jakob Holdgaard Thomsen is a Principal Engineer at Uber, working out of the Aarhus office, helping to make Uber's systems more performant and more reliable.

Vladimir Gavrilenko

Vladimir Gavrilenko

Vladimir Gavrilenko is a Software Engineer at Uber on the Inventory and Catalog team based in Aarhus, where he focuses on reliability and scalability.

Jesper Lindstrom Nielsen

Jesper Lindstrom Nielsen

Jesper Lindstrom Nielsen is a Staff Engineer at Uber on the Inventory and Catalog team based in Aarhus, trying to make everything run a bit faster and scale a bit more.

Timothy Smyth

Timothy Smyth

Timothy Smyth is a Staff Engineer at Uber on the Delivery Backend Platform team based in New York City, helping to increase the resilience of Uber Delivery.

Posted by Jakob Holdgaard Thomsen, Vladimir Gavrilenko, Jesper Lindstrom Nielsen, Timothy Smyth

Category: