Blog posts

2025

Down the Rabbit Hole with Perf

14 minute read

Published:

In my previous post, I described the implementation of two lock-free algorithms for recursive queries in graph databases that achieved speedup through atomic operations and parallel BFS traversals. In this post, I will share some interesting performance findings I encountered while optimizing both algorithms using Linux Perf.

Anatomy of a Lock-Free Algorithm

17 minute read

Published:

In this post, I’ll describe parallel implementation of two graph algorithms: (i) shortest path (ii) variable length recursive join that returns full paths – both implemented using atomic (lock-free) primitives for high performance. This is the first of two posts and is meant to be a companion to my VLDB ‘25 paper. The paper focuses more on runtime scheduling policies whereas this post will specifically delve into how we parallelize these operators.