New article! This time, it's a tale about when one of our customers reported full system freezes on Linux.
Join Ritesh on his in-depth dive into the depths of the Linux kernel, uncovering bugs in eBPF spinlocks that lead to changes in the kernel:
Posts by Superluminal
We've just released a new Insider update with some much-requested features, like being able to specify env vars when running, auth support for symbol servers, and proper progress reporting for symbol downloads. And of course, many fixes & QoL improvements.
Go check it out!
New year, new post! Jelle wrote an article about how we efficiently ingest gigabytes of unsorted data in sorted order. It's got fancy animations about our algorithm, so there's really no excuse not to take a peek.
Happy New Year!
superluminal.eu/efficiently-...
Check out this new article by Ritesh, in which profiling the in-development Linux version of Superluminal led to finding and fixing a performance issue in the Linux kernel👇
Ever wondered how to store millions of call stacks efficiently? So did we. Many times.
Check out this new article by Jelle about designing a data structure to efficiently compress and store large amounts of call stack data!
superluminal.eu/compressing-...
I've been wanting to start a blog for a while, and finally decided to bite the bullet.
The first article of hopefully many more to come is about, you guessed it, profiling & optimization.
RTs appreciated!
rovarma.com/articles/opt...
👀
My new blog post is there, and it's a bit different from usual: Fixing stutters in your own code is hard enough, but this time I try to fix performance issues in a closed-source game. No source code or debug symbols, but a lot of guesswork. larstofus.com/2025/07/27/p...
#gamedev
#Trackmania
We've just released a new update with many fixes and QoL improvements, including the much-requested support for using the horizontal mouse wheel to navigate the timeline.
Go check it out!
Another successful week using @superluminal.eu to catch code bugs remotely
Used their command line tool to capture an ETW trace on a problematic build machine
Opened the trace, found the issue, deployed the one line fix *and* discovered AV was configured wrong on builders
Perfect 👌🏼
Responses much appreciated!
Odin bindings for the great @superluminal.eu's instrumentation API: github.com/vassvik/odin...
We've just released our first update of the new year with a lot of perf and quality-of-life changes on the Insider channel.
Go check it out, and happy new year!
Profiling with Superluminal of an full reserialization in unity6
Profiling with Superluminal of an full reserialization in unity6 showing the secuence of assets being processed
I am loving your series of profiling adventures, just tried to reserialize everything in a project after upgrading to unity 6, and 4 hours later I tried to take a look at why it could be this slow.
It seems to just be doing a ton of repeated work per asset instead of trying to batch stuff.
I promised to look at shader graph undo next because we still see annoying stalls there. I have 3h of time today, let's see how far we get.
blog.s-schoener.com/2024-11-20-u...
I am trying to get to the old context menu in the explorer in Windows 11. When you have the new menu open, you have to click "Show more options." This reliably freezes for 20s. Why? Let's take a look in @superluminal.eu.
A tech artist came to me and said "whenever we touch anything in a Unity shader graph, the editor stalls. It's painfully annoying." And yes, any meaningful change to the graph stalls the editor. Sometimes a bit, sometimes long.
(This is a long thread. You can find it in text form on my blog.)
I want to talk about why Unity C# code is different. This is about editor performance, with nullable types as an example. There's some JSON parsing happening, which someone wants faster. (It has to be a JSON parser.)
Inspired by some recent work build times, I was looking at Unity's "MegaCity Metro" sample in Unity 6. I got curious about at its build times. In particular for incremental builds (fancy speak for "I pressed the build button repeatedly but only made minimal changes inbetween.")
In today's episode of "What am exactly I waiting for here?" I waited for Visual Studio to open 477 projects in a Unity Engine generated solution. It took > 15min. Did I attach a profiler? Why of course I did, because I ran out of patience and Superluminal is my only friend.
Hello, world!
This is the official account for Superluminal, a user-friendly CPU profiler for C/C++, Rust & .NET on Windows, Xbox and PlayStation.
Follow us to get updates on new releases and general news about our profiler.
And of course, if you haven't already, go try it out!
superluminal.eu