Stefan Reinalter's Avatar

Stefan Reinalter

@molecularmusing

Founder of Molecular Matters • C++ & low-level programming • Created Live++ (@liveplusplus.bsky.social) https://liveplusplus.tech

407
Followers
193
Following
279
Posts
18.11.2024
Joined
Posts Following

Latest posts by Stefan Reinalter @molecularmusing

Note that I don't mind, really, I have plenty. It's just something I noticed.

04.03.2026 20:08 👍 2 🔁 0 💬 0 📌 0

Don't know, but it's significantly larger than any VS2022 solution such as Live++.
Live++ has >30 projects, a lot more code and also uses VA. Needs about 2 gigs of RAM.

I've read that RAM usage should actually be less in 2026, but that's not the case for me.

04.03.2026 20:07 👍 1 🔁 0 💬 1 📌 0

Love the much improved performance, good looking UI, but have to say it's not easy on RAM.

On my hobby solution with a single project and 66 translation units, it regularly eats ~4GB of RAM. Though maybe that's actually caused by Visual Assist...

04.03.2026 19:45 👍 0 🔁 0 💬 1 📌 0

Hot take:
If you're writing ImGui-style code in C++ without any kind of code hot-reload, you're holding your computer wrong.

24.02.2026 20:51 👍 12 🔁 0 💬 1 📌 0
Phase 1: Build information - Live++ blog

New blog post: Phase 1: Build information

liveplusplus.tech/blog/posts/2...

#cpp

23.02.2026 16:16 👍 9 🔁 2 💬 0 📌 0

Iteration is still never as fast as with hot reload.

If you've never experienced it yourself, you don't know how transformative it is.

23.02.2026 07:48 👍 0 🔁 0 💬 0 📌 0

Time to first image on screen: <5ms.

Time to main menu with D3D rendering and a few resources: 1-2s.

21.02.2026 19:24 👍 1 🔁 0 💬 0 📌 0

The absurd thing is: I worked on optimizing time-to-first present in my own engine today, and it's now <5ms.

For me, even D3D init is too slow (~200ms), so I'm doing software "rendering" and blitting to the Win32 HWND with a loading bar while everything is initialized in main().

Bliss.

21.02.2026 19:20 👍 1 🔁 0 💬 1 📌 0

I'm trying to envision how many types you would need for something like registration to take almost 10s in an optimized build.

Are you running that on a GameBoy by any chance?

21.02.2026 08:42 👍 2 🔁 0 💬 1 📌 0

Way, way too high, what is static initialization doing? Sweet jesus, people and their singletons, automatic registration factories and generally globals that need a constructor. That stuff needs to die, fast. Init everything in main, be done!

You can quite literally load 5GB of data in 1-2 seconds.

21.02.2026 07:22 👍 0 🔁 0 💬 1 📌 0
Preview
Sony Shuts Down Video-Game Studio Bluepoint The PlayStation subsidiary previously made remakes of games like ‘Demon’s Souls’

No no no, Sony shuts down Bluepoint? I'm sorry for everybody at Bluepoint, that really sucks.

Guess it's that time of year again until end of March, probably lots of news like this to come :(.

www.bloomberg.com/news/article...

19.02.2026 19:30 👍 3 🔁 0 💬 2 📌 0
Video thumbnail

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!

19.02.2026 15:44 👍 8 🔁 4 💬 0 📌 0
Screenshot of what's apparently supposed to be a "git flow" chart from Microsoft learning materials.

It's full of bizarre spelling errors and fucked up diagram elements that make it pretty clear the thing was AI generated.

Screenshot of what's apparently supposed to be a "git flow" chart from Microsoft learning materials. It's full of bizarre spelling errors and fucked up diagram elements that make it pretty clear the thing was AI generated.

oh.... my god??

actual chart from learn.microsoft.com/en-us/traini... btw

16.02.2026 23:07 👍 1312 🔁 368 💬 96 📌 209

AI slop paving its way through codebases like the cancer it is.

16.02.2026 16:37 👍 5 🔁 0 💬 0 📌 0

Technically possible, but a tremendous amount of work. Instruction-level tracing required for TTD generates gigabytes in mere seconds, and required a full working CPU emulator to replay.

13.02.2026 18:50 👍 0 🔁 0 💬 1 📌 0

Not 100% the same, but almost.
If the platform supports dumping user-mode *and* kernel state, then yes, this would work.

It's just not possible to alter/manipulate kernel state during a replay to rewind to an earlier point in time.

13.02.2026 12:57 👍 0 🔁 0 💬 0 📌 0

This is a trade-off between low-overhead, always-on recording & replay across all cores (= Echo) vs. instruction-level tracing and single-core emulation like TTD.
While the latter can detect these races, it has an incredibly high overhead, trace size, and can't replay kernel state (= audio & GPU).

13.02.2026 12:55 👍 1 🔁 0 💬 0 📌 0

If your process has a true race, which *does* lead to divergent behaviour, Echo will detect and report this, but cannot pinpoint exactly where that happens - just that there's a race, somewhere.

13.02.2026 12:53 👍 1 🔁 0 💬 1 📌 0

Generally speaking, sync. primitives will replay in the exact same order. So if during recording thread 2 looked mutex C first, then the same will happen during replay.
If your process has a benign race somewhere, which does not lead to divergent behaviour, then Echo won't be able to tell you.

13.02.2026 12:52 👍 1 🔁 0 💬 1 📌 0

This can't rule out that I'm doing something stupid somewhere, but should give good test coverage.
It's also the reason why I'm starting with PS5, and not Windows, because the API surface is known and limited.

13.02.2026 09:04 👍 1 🔁 0 💬 0 📌 0

Absolutely, people need to trust this thing.

I'm developing everything with a complete test-suite in the background, which automatically verifies each and every API interaction, checking all data, return values, etc. against their recorded counterpart.

13.02.2026 09:03 👍 2 🔁 0 💬 1 📌 0

Unfortunately, not with this approach. It replays everything using real APIs, which manipulate kernel state, so that part can never be rewound.

13.02.2026 08:52 👍 0 🔁 0 💬 0 📌 0

Thanks Alex, truly means a lot!

13.02.2026 08:51 👍 1 🔁 0 💬 1 📌 0

Reposting this for the European crowd.
Please repost and share among friends, peers, coworkers - I'm trying to gauge if this has merit to be continued or not.

13.02.2026 08:11 👍 5 🔁 2 💬 1 📌 1

1) Rewind is not possible with that approach, unfortunately.
2) Yes, assuming that deterministic CPU code will produce the exact same data streams and commands for the GPU to execute.

13.02.2026 06:42 👍 0 🔁 0 💬 1 📌 0

Thanks Arseny!

And you're correct on all accounts, you clearly understood what it is!

13.02.2026 06:40 👍 0 🔁 0 💬 0 📌 0

Yes, this captures everything that's non-deterministic, including network.
In a replay, the data (e.g. from a network request) will be there at the same time in the same frame as during the recording.

13.02.2026 06:30 👍 1 🔁 0 💬 0 📌 0

Thanks!

Still a long way to go until I can easily record an UE5 game. Which kind of reminds me of how Live++ started :).

12.02.2026 22:14 👍 2 🔁 0 💬 0 📌 0

All correct.

12.02.2026 22:11 👍 2 🔁 0 💬 0 📌 0

Oh, and the 27MB contain the raw PCM data for the music. If you leave that out, it's much much smaller, in the high KB range for that recording (uncompressed).

12.02.2026 22:10 👍 2 🔁 0 💬 1 📌 0