Lalit Maganti
Lalit Maganti
@lalitm.com
Founding engineer @ http://perfetto.dev Writing @ http://lalitm.com Building devtools like syntaqlite, buildprof in my spare time Senior Staff SWE @ Google
285 followers3 following98 posts
Find syntaqlite at github.com/LalitMaganti.... All these performance improvements are part of 0.10.0, which came out yesterday.
When I replayed Bun’s Zig build, one linker invocation ran alone for two-thirds of it. What the heck was it doing for all that time? The short answer is Full LTO, and not just in Bun’s own code. The long answer is a whole rabbit hole, so I wrote it up: lalitm.com/post/buildpr...
It uses ptrace under the hood, the UI is a customized Perfetto UI, and it’s Linux only for now. It’s open source and I plan to keep working on it. If you have a build that annoys you, give it a try. I’d love to hear what you find. github.com/LalitMaganti...
The trace merging feature in Perfetto v58 has a lot of cool applications: view independent traces from different VMs/devices, client-server interactions, and most topically, multi-rank and multi-machine PyTorch profiles. Cooking up a blog post about all of this, coming soon.
Perfetto v58 is out! We shipped a bunch of things: persistent CLI analysis sessions for agents, zstd compression, better memory tools and more. Biggest feature though is trace merging: multiple traces on one timeline, including across VMs and devices. github.com/google/perfe...
Perfetto v58 is out! We shipped a bunch of things: persistent CLI analysis sessions for agents, zstd compression, better memory tools and more. Biggest feature though is trace merging: multiple traces on one timeline, including across VMs and devices. github.com/google/perfe...
The staff engineering post I wrote a couple of weeks ago is currently #1 on Hacker News, which is a nice surprise. If you missed it: lalitm.com/post/find-pr...
PyTorch profiles are going to look much better in the upcoming release of Perfetto. Their events lack enough hierarchy, so Perfetto has to guess the layout. We now pack the tallest slice stacks first, making the same trace far more compact. Full explainer at lalitm.com/post/pytorch...
Once again relevant due to today's GitHub outage!
There are plenty of places to host a Git repository, but remarkably few places to host an open-source community GitHub’s moat is its shared identities, conventions and paths to discovery. Any replacement must rebuild that social layer, not merely offer better hosting. lalitm.com/post/github-...
Junior engineers often ask me: “How can I demonstrate ownership when my manager hasn’t given me anything to own?” The question treats responsibility as something that must be given first. But when a TL gives you responsibility, they also accept the consequences of your decisions.
Before doing so, a TL asks: “Does this person deal with problems the same way I would, or better?” You demonstrate that judgement in small increments, within your existing scope. Formal responsibility is a trailing indicator. More at lalitm.com/responsibili...
The idea that we’ll all fork and personalize our devtools with coding agents is having a moment. I don’t think long-lived personal forks will become the norm. Every fork turns a tool you use into a product you own.
After nine years maintaining Perfetto, I’ve found most users want a reliable tool so they can focus on the problem they opened it to solve. I expect personalization to grow around maintained cores and extension points. More at: lalitm.com/post/changin...
There are plenty of places to host a Git repository, but remarkably few places to host an open-source community GitHub’s moat is its shared identities, conventions and paths to discovery. Any replacement must rebuild that social layer, not merely offer better hosting. lalitm.com/post/github-...
I wrote last month: > (...) open-source projects cannot afford to have a dedicated team doing security scanning for them (...). we’re going to see a lot more innovation in this space, including from the big AI labs. And now, OpenAI announces Codex Security: github.com/openai/codex...
> The standard in CI today is tests run in the cloud after a commit has been merged Is this really people's experience? Beyond hobby operations, I cannot think of a time where I found a project without at least decent presubmit test coverage. Now I'm wondering if I've been living in a bubble...
antirez says expert programmers using AI should think of themselves as Linus, with agents as the subsystem maintainers. The part that doesn't work for me is trust. Linus's maintainers spent years proving their judgment. I've given LLMs that chance plenty of times and I keep regretting it.
I use it every day and it's changed what I can build. But if I can't trust it to make design calls on its own, I still own the code. Full thoughts at lalitm.com/post/ai-subs...
A senior engineer I mentor asked me how I find problems worth working on. He’d been told to block time to “think strategically,” but hadn’t found it useful. I told him I rarely find good problems by staring at a blank page. Instead, I act like a sponge, listening to people’s day-to-day problems.
I let problems accumulate rather than acting immediately. Some fade; others recur across teams or connect with issues that seemed unrelated. Over time, I see what’s really slowing people down and what might be worth building. Blog post here: lalitm.com/post/find-pr...
git has an experimental git history command as of 2.54/2.55 and it deserves more attention. Fixup, reword, or split a commit buried in your stack, and every branch built on top rebases automatically. It's already in core git, nothing to install. lalitm.com/post/git-history/
Wrote up a blog post going over the "why" in each of the features in Perfetto v57. This is something I plan on doing for each release going forward (including dedicated posts when a feature is big enough to deserve it!) Find it at lalitm.com/post/perfett...
Perfetto v57 is out! github.com/google/perfe... A bunch of new things but the most impactful thing might be a bugfix on Pytorch traces where overlapping events wouldn't be displayed (github.com/google/perfe...)
scattered-thoughts.net/writing/arti... is exactly the sort of article I wanted to see more of when I wrote "Eight years of wanting, three months of building with AI". Really hope to see even more like this!
I've spent many hours in my early days optimizing performance in places which ended up not mattering so this article really resonated.
I also shared my own experiences on this topic at lalitm.com/post/on-when...
I just published syntaqlite 0.6 (github.com/LalitMaganti...), now supporting SQLite dot commands, a big step forward for usability in the real world. That along with Pyiodide support makes it the most impactful release since 0.1! Wrote about this at lalitm.com/post/syntaql...
I discovered Iroh (www.iroh.computer) yesterday and it's a really neat project! But from reading discussions on HN/lobsters, people seem really confused on exactly what it is. I wrote up a TIL after investigating a bit: lalitm.com/post/til-iroh/. TLDR, it's like a VPN but at the app layer!