I’m now at the iPhone 16.
The performance of those chips with 8GB in non throttled environment (Neo..) can run as a fully performant macOS.
Yet, as a phone I don’t feel upgraded performance since my SE 1st gen days.
Sometimes I get stuttering, basic browsing can get the device pretty warm, sometime camera lags to launch.
My usage profile didn’t change much over the years.
So I can only assume codebases became more bloated, websites became more heavy on resources. Because, if my device now throttles to what I was happy with years ago assuming the software would behave the same, I’ve expected my usage to give me at least cooler non stuttering performance.
There are so many apps out there which take every shortcut they can to make it easier for developers regardless of the impact on users. On iOS, using things like react native instead of actually native code; on desktop systems, using Electron instead of any other toolkit.
I understand why, mind you; would VS Code or Slack have as much velocity of improvement if they had to individually manage GUI toolkits for each platform? Would VS Code be as extensible if the UI were built in Swift or Qt?o But the results are still there.
There are projects to try to make this /better/, like Tauri - Electron but using your system's built-in browser engine rather than shipping a new one, so that you don't have to have eight separate copies of Chromium loaded into memory - but they still need to reach feature-completeness and projects need to do a non-trivial migration, and then they need to test across multiple browser engines, etc., so it's still not the same.
Regardless, this is the situation we have right now; everyone figured that RAM capacity would continue to increase at the same rate as RAM usage, "it works on my machine" but it's a 32 GB Macbook, Chromium optimized for performance and not memory usage by assuming that each 'page load' would be short lived (browser behavior) rather than having one 'page load' run for hours or days (Slack, VS Code, Spotify).
Looking over the actual killer feature for Electron: running your existing web code with native features layered on top. I mean yeah Tauri does this too, but I think it's relatively rare for someone to decide "I'm going to build a standalone native desktop app in Electron because it's easiest," they're thinking "I already have this PWA that i can repackage with native features without maintaining a whole second UI."
That summarizes my whole computer use. I used to believe it was my tolerance, but then I took out a good old YP-G70CB (Samsung Galaxy S WiFi 5.0) from a drawer and everything felt much snappier than my S25.
The only computer that's the exception is my macbook m4. This thing was and still is ridiculously snappy.
It's a few different things. I've gone down a hardcore rabbit hole on this because I also find this exceptionally annoying. I now sometimes experience lag when typing into a terminal, where I am typing faster than characters appear, which is something that didn't even happen in the early 1990s on significantly less capable hardware.
A very big portion of this is just Wirth's Law in motion. Software is getting worse rapidly, and AI is accelerating the decline in software quality, where performance is an aspect of quality.
But the other part of this is the latency vs throughput tradeoff. More and more of our systems are optimized for throughput, or worse are optimized for throughput in ways which causes significant experience degradation if you are unable to meet the throughput demands. There is a natural tension between throughput and latency, and we are seeing this play out across every aspect of both hardware and software system design. As a simple example, nothing you do to USB4 will ever match the latency of PS/2 connection for an input device, but a PS/2 port delivers around 7-12 kiloBITS/second of throughput vs USB4 delivering up to 120Gbps and a /minimum/ of 20 gigabits/second of throughput. PS/2 uses blocking direct hardware interrupts for input devices, vs asynchronous polling on USB. This architectural difference will never allow for USB to match PS/2 latency, regardless how "fast" USB gets.
This tradeoff is leaning more and more towards throughput everywhere you look. Just today, the new M5 Ultra is announced w/ 1.2TBs/ of memory bandwidth. The M5 Max had 14ns of memory latency while high-performance DDR4/DDR5 typically achieves 8-9ns of latency. That's 36% more latency (conservatively), but nearly 10x the throughput. When you stack up small changes like this at every layer of the system, including in our overreliance on micro services and networked data I/O vs local data in applications, and it adds up. There are so many places in modern software where there is some network connection required for something that could have been achieved without that connection, and waiting on that connection consumes a huge amount of wait time relative to the total time for the operation, and we all feel it.
Using the above post example of a delay when typing in a terminal, the path that text takes from the keyboard to the screen is much more complicated. Some of it comes from security changes. Back in the day everything had direct memory access. And the memory layout wasnt randomized by things like ASLR. Not that this specifically should impact terminal input but it becomes a factor with memory access more generally. Now you have to deal with user mode and other security barriers. Drivers can still get direct hardware access but then as has been mentioned you have the bloated software layer with stuff like electron. Increased concurrency has a latency cost as well and we have many more things (usually unnecessarily) running today.
Im sure there are many more things that add up to focus more on throughout over latency as mentioned above.
Yeah, it is a really weird one. Especially iOS is optimized to the gills, there is no real desktop running to speak of and app developers care just a little more than on Android, yet somehow an iPhone can't keep a few apps in memory, yet a MacBook Neo with 8GB RAM does just fine with multiple chunky desktop (often Electron) applications in memory, along with macOS itself being more chunky.
I replaced my Pixel 2a with an SE3 when the pixel stopped getting security updates and have been pretty disappointed with the iPhone’s performance. The battery life out of the box was worse than the 5 year old Pixel, and I regularly notice apps getting killed and loosing my place when I tab away.
Maybe if you want to use all of the big mainstream apps the experience might be different, but I tend to have a fairly minimal setup on my phone. On android I would disable animations, use Nova launcher, Firefox with UBO, and a bunch of fdroid apps. This all added up to a very snappy and efficient system that I haven’t been able to replicate on iOS.
Features expand to fill all available hardware. Both the OS and apps got more features, got more flashy, got more complicated. If you were able to run those old original apps, they would likely be VERY fast on your newer device.
There was a noticeable degradation after the introduction of “liquid glass”. Of course I’m still on my 13 mini so I don’t think they really care about how changes impact the performance and battery life of my phone.
However a dev on fast hardware can still run profiles, and the fast hardware decreases the change/build/test cycle by more than enough to make it worthwhile.
The only use of a slow machine is it gives a point where you can say more optimization isn't worth it. Everything else I can do better on a fast machine than a slow machine.
It lacks one inventive. There are many incentives. Many developers love making things faster. Many developers get feedback from users which is itself incentive. Many projects track performance and that provides incentive. Many developers have a boss who cares about such things (this is the least likely of the above).
I am pretty sure that's a feature, not a problem. The idea of these chips is to rush to idle on webpage-like workloads, and then otherwise use as little idle power as possible. Games and heavy work are generally not the intended workload.
> The age old problem of mobile chips have brilliant performance for about 15 seconds until they thermal throttle.
I think this is a trait of all chips. As a general rule of thumb, both desktop chips and graphics cards come with a huge and noisy fan. Demand for aftermarket solutions is so great that it spawned quite a few specialized companies.
How many high-end laptops ship with at least one fan?
Any chip that isn't cooled is going to heat up and throttle or just shut off in seconds. The point is that mobile devices have a peak performance that you don't really get because you can't cool them enough.
Desktops can have plenty of cooling so you actually get the real speed of whatever you are using.
While the other comments are correct to point out that majority of mobile workloads are rush to completion, many users (especially in China) still do a lot of heavy gaming on their phones. This is exactly why the newer SoCs are so interesting- that they can deliver more performance for the same power consumption. (Directly increasing run time and decreasing heating)
> many users (especially in China) still do a lot of heavy gaming on their phones
I think most children prefer to play on phones these days. Mobile gaming is huge. To the point where game loops on high-end games are optimized around thermal throttling.
You said it. It was over 100 F here where I live, and I was on my phone outside trying to get work done while watching my kid, and I couldn't even type because of the thermal throttling triggered just by it being so damn hot outside.
A few years ago I decided I was going to get some fresh air by going and working on the (south-facing) deck. Put my phone and drink outside, went back to get my laptop, brought it outside.
Outside was too bright for me to see my laptop screen even at full brightness, but by the time I had it outside and had discovered that my phone had overheated so much it refused to turn on until it cooled down.
If you are just using apps, 15 seconds is more than enough to launch and setup an app, for anything more it will be down graded a little.
Still dang impressive but the form factor becomes the limiting factor.