Home / Companies / Graphite / Blog / Post Details
Content Deep Dive

Speed up your merges: Parallel CI is now generally available for teams using Graphite’s merge queue

Blog post from Graphite

Post Details
Company
Date Published
Author
-
Word Count
934
Language
English
Hacker News Points
-
Summary

Monorepos are popular for enhancing developer velocity but pose challenges like merge conflicts and potential deployment issues as more developers contribute code to a single repository. To address these issues, merge queues can be implemented to ensure more predictable releases and reliable software by merging changes in a first-in-first-out order. However, long Continuous Integration (CI) times can slow down these queues, prompting the introduction of Parallel CI, which speeds up the process by running CI checks concurrently for multiple stacks. This approach maintains correctness while increasing throughput, allowing teams to merge more pull requests efficiently without compromising reliability. Parallel CI has shown significant improvements in merge times, with early adopters experiencing up to 2.5 times faster merges. Furthermore, Graphite's merge queue supports both Parallel CI and batching, providing flexibility in balancing correctness and CI cost efficiency. The implementation of Parallel CI is based on speculative execution, a concept used by companies like Uber, and allows for higher throughput by testing groups of pull requests simultaneously.