Last week, while debugging a SwiftUI performance issue, I was running instruments and found that my profiles were plagued with noise.

Godot while idling was using so much CPU time that it was skipping entire frames while rendering.

I set out to fix those, 0.5% here, 0.5 there, and the Godot Editor (and Xogot) no longer skip frames.

People had been complaining that Godot would burn your battery in an hour if you left it idling, it no longer does.

Details:

https://github.com/godotengine/godot/issues/116845

As a sidebar, when I started porting Xogot to Mac, my first reaction was "SwiftUI is just not up to the task, it is too slow".

I decide to give Instruments a shot with the new SwiftUI instrument, and was able to track down the problems - it took a while (and Claude scanning my traces), but Xogot powered by the same SwiftUI code from iPad on AppKit is smooth as butter.

It was just not as noticeable on iPad, as the touch interface would distract from the slowdowns.

@Migueldeicaza Skimming the issue you linked, you'll be unsurprised to hear that these are all bugs we've had in web rendering engines over the years.

At the same time, the idea that most folks working on an engine have devices more powerful than an iPad is 😲😲😲

@slightlyoff there is so much low-hanging fruit in here.

Lots of people are using the equivalent for β€œidle” to run some process, but they often do polling there - it is just horrible.

@Migueldeicaza This is a whole new angle to my mantra "friends don't let friends make knockoff browsers"