x86 has to scale from embedded boards to laptops to servers. AMD made different trade offs than Apple.
Apple chose to achieve a level of performance by keeping the frequency low and having a high IPC. High IPC means that cores consume a larger size of the die. That helped with lower power consumption.
x86 makers like AMD, did the other way around. They dedicated a smaller portion of the die to a core. That makes it cheaper. To make up for that, they used a higher frequency, which also means a higher power consumption.
Apple also has a node advantage, which also makes their CPUs more expensive.
AMD could totally do what Apple did: have faster IPC at lower power consumption if they would have release more expensive CPUs targeted at the mobile market.
But AMD and Apple have different goals.
If we stick to the mobile world, Qualcomm is doing with their Orion cores just what Apple did with their M cores. In the first half of this year we will see laptops with Orion cores that will have both strong IPC and low power consumption.
Doubtful. I'm not sure they have the talent/knowledge to pull it off while Apple Silicon is a moving target with a new generation introduced in each new iPhone.
And AMD employed some of the most talented people in the area like Jim Keller. They totally can do it. Intel, too. Qualcomm is doing it with Orion and Qualcomm has less expertise and resources.
For the last 10 years, Qualcomm couldn't come close to Apple designed SoCs. Now they might come close after buying a team of ex-M1 designers.
It sounds ridiculous to say that AMD, Intel, and Qualcomm can do what Apple is doing. If they could, they'd be able to compete with Apple Silicon now. It's been 3 years. It's like saying AMD, Intel, Qualcomm can do what Nvidia is doing if they want to.
Its kinda like the evolution of bitcoin mining-everyone was doing it with GPUs, AMDs were better because of some hardware optimization where they could hash something in less cycles, then people started making ASIC which are purpose built and the fastest possible way to run the necessary compute. There were no technical advancements here, just economic forces driving the design and manufacture of components that made making ASICs profitable.
Apple did the same thing except they designed the chip and the computer as one, and they succeeded because it allowed them to optimize stuff further, and you see this in results where they are the leader but not by much, and often behind systems that are overclocked in single core performance. Power consumption on macs, also varies greatly depending on what you are running, which is again a result of optimization for particular use cases.
AMD does not have that.
Anyways, ARM chips are being used for the backbone of the internet. They're called Amazon Graviton chips. Ampere Computing also has ARM server chips. So do many Chinese hyperscalers.
M2 is on TSMC N5. AMD's Zen 4 mobile processors are made with TSMC N4. From die shots, I believe the P-cores in the M2 are about the same size as Zen 4 cores. And yet Apple's M2 laptops are a good deal more power efficient than Zen 4 laptops.
Zen4 is competitive when it comes to actual computing. When doing (almost) nothing, the Apple system comes out on top, but that also has a lot to do with its software.
Source for this?
Geekbench and SPEC heavily favors Apple Silicon in both raw performance and perf/watt. The perf per watt is 2-3x.
The only CPU benchmark Zen4 wins in is Cinebench R23, which uses Intel Embree engine inside and heavily optimizes for x86 AVX instructions.
Isn’t this also true of ARM?
To me the more interesting aspect is how memory architecture will be approached going ahead by both parties. Apple can afford to go more bespoke and integrated, but how can x86 maintain a good mix between performance and design flexibility.
Are companies going to pay for that development?
I’m not usually the type to complain about input lag; most modern apps on a recent machine are snappy enough for me.
But I’ve been messing around with egui lately, and it just feels… fast. It’s weird.
But nobody really cares.
I wish I had such a positive outlook.
New highways are built and they are quickly filled with traffic.
If it where an API directly usable by any lang, then it could fly further.
History shows that you can only choose one. If you're not using the platform's native UI stack, you're going to end up with a slower, less capable solution that will look and feel foreign and clumsy in comparison. What the industry really needs is a React Native-type solution that isn't tied specifically to React.
iOS has UIKit, which is a good UI framework. There's your single good UI framework for them.
Linux has GTK and Qt, though I'm not sure which one is in vogue these days, but both of which seemed fine when I used them in the past.
etc
But it sounds like what you're actually saying is "I only want one OS to exist".
Every OS has its own UI API, because every perform has different UI design language, UI interaction, and UI behavior. You cannot make one UI that is good on every platform because every platform is different and those differences are what make people prefer one over the others, but a single UI is (as Java and Chrome wrappers demonstrate) going to produce a bunch of exceedingly mediocre apps that fail numerous basic UI tools on their respective platforms.
If you want a cross platform apps you have cross platform core logic, and per platform UI.
If you want a single UI framework across platforms, it cannot be good, and it will inherently at best produce the kind of mediocrity we get with chrome apps, or you only have a single platform and have the same UI toolkit across all of them: desktop, phone, tablet, etc. I'm going to guess that's going to produce a fairly terrible UX on at least one of the options if it's good on others, or maybe it will just be mediocre across the board.
The alternative "single UI framework" is "everyone must run the same OS".
As long as people keep buying/using crapware apps that's all that will happen. The fact that so many people are ok with that mediocrity is depressing, but that they do so while then complaining about things being slow is actively annoying.
I can see native software making a comeback if it is:
1. Declarative: only software engineers like imperative UI systems
2. Flexible: some frameworks (like any of the XAML-based ones) are strongly typed and you can only combine certain XAML elements with other certain XAML elements, and will fail to compile entirely if you mess something up
3. Unopinionated: HTML, CSS, and Javascript don't require you to implement any particular paradigm for getting data on the screen; that is left up to the coder
4. Dead ass simple: the litmus test is that a 7th grader should be able to learn the basics of it on their own, and the tooling should be ideally no more complicated than a text editor
5. Totally sandboxed: You can't trust 99% of frontend devs with security
The people you need to appeal to are not hardcore software engineers, but hobbyists and newbies, since they end up being the majority of frontend devs anyways.
Honestly I think you could get pretty far with just adding declarative languages (read: XML) to existing native frameworks, like gtk and Win32.
1. That's an opinion, not a fact, and most "declarative" UI frameworks have poor performance and can't do anything not explicitly models by the declarative framework. The fact that people want to just draw a UI doesn't mean that the resulting UI is either good, or works correctly, and the idea that it's "easier" simply implies lower understanding of what is being done and that you aren't considering any of the edge cases you still need to handle.
2. Not sure what to say here, as I don't know your point? it seems more about the type system of your language and not at all related to the ui toolkit
3. This is BS. html, css, and the DOM all have a very clear model for how and what a UI is, claiming it isn't means that you haven't apparently spent much time working in any other system. Much like I keep meeting people who say that they don't have an accent, everyone else does.
4. Application development is conceptually complicated unless your application is not doing anything interesting. I'm also curious what makes a browser ui more "simple" than say Cocoa?
5. Sandboxing is a part of the OS, not the UI framework. All applications on iOS are sandboxed, that vast majority on macOS are.
Application development is hard, and it's not because of the UI framework you're using. The overwhelming amount of any actual application is the application logic, not the UI.
Chrome based apps are all abysmal because to make an actual application using a browser engine, you need to reimplement, in html+JS, a huge amount of work the host OS would otherwise just provide for you.
If all you want is a webpage, just make a webpage, don't force everyone to download a 600Mb copy of chrome.
SDL does in fact make system calls and have OS-specific code (DirectX implementation, Metal implementation), even if most of them don't directly manipulate OS UI controls, though it can initialize a window with a rendering context on any of its OSs.
I feel like you're missing the point that performance matters less than accessibility for UI frameworks. HTML and CSS are the most popular choices because a child can learn them quickly. Native apps aren't as popular because all the frameworks out there require you to be an engineer to use them.
> 1. the idea that it's "easier" simply implies lower understanding of what is being done and that you aren't considering any of the edge cases you still need to handle.
I don't see how that follows at all. HTML is declarative and powers most applications at this point.
> 2. Not sure what to say here, as I don't know your point? it seems more about the type system of your language and not at all related to the ui toolkit
Web browsers are very forgiving with HTML errors, native UI frameworks (especially those which simply convert the markup to imperative statements) often refuse to run entirely if there's a single markup error. A native framework which seeks to become as popular as HTML would need to be as flexible as HTML
> 3. html, css, and the DOM all have a very clear model for how and what a UI is, claiming it isn't means that you haven't apparently spent much time working in any other system. Much like I keep meeting people who say that they don't have an accent, everyone else does
You're not understanding what I'm saying. You can run an ajax request and get some data, but to put that data into the UI would require you to run a query on the dom and manually set the innerHTML of the element to the new data. Some other UI frameworks will force you to bind specific variables or lists to a control in order to auto refresh when the bound variable changes. This is an opinionated framework: one which tells you how to manage updating the UI rather than allowing the developer to do it themselves. Such an opinionated framework would become more difficult for people to learn
> 4. Application development is conceptually complicated unless your application is not doing anything interesting. I'm also curious what makes a browser ui more "simple" than say Cocoa?
I have no experience with cocoa because I don't use a mac, but from what I can tell it requires you to know Objective C and run XCode. HTML requires, at the very least, notepad to write. It is extremely easy to get setup with HTML and start learning it as a lay person.
> 5. Sandboxing is a part of the OS, not the UI framework. All applications on iOS are sandboxed, that vast majority on macOS are.
You would want to make sure that programs written in this framework are sandboxed away from any resources. On Windows this means AppContainers and on Linux there are different implementations (snap, docker). But the host which runs and loads the UI should run all applications sandboxed by default (i.e: like a web browser)
As far as I know, Gnome profiled a bunch of their biggest UI slowdowns and none of them would have been (much) improved on native.
Bad code is bad, JavaScript isn’t the main culprit here.
I've wrote plenty of (very) high performance code using a Javascript/WebGL combo.
Most people bitching about JS are not even good coders to start with.
look at what they started with with webkit? chromium is an abomination the likes of which definitively proves there is no god, or that god HATES humanity, as god would have 100% for sure schmited us all down for the atrocity that is chromium.
I recall reading about a project who was stripping down chromium to its bare essentials, it seemed quite nice but cannot find it atm.
You're also off by 15x. Installed size is 247MB on Debian. https://packages.debian.org/trixie/chromium
Chromium is one of the most amazing fully featured bundles of computing the planet has ever built. We should be in awe. But, "this has made a lot of people very angry and been widely regarded as a bad move." Contempt is rampant.
Also, parent is maybe refering to the source code size? Which also includes a huge chunk of ChromeOS code.
I think a great deal of the issue comes down to bloated frameworks, bad application code, and a prevalent attitude of nonchalance towards optimization that compounds with dev machines being powerful enough to mask most performance problems.
how hard can it be? spend 5 minutes and anyone thats worth keeping can figure it out.
Just a plethora of enshittified apps developed to be cheap rather than good.
The laptop models also include a separate ML/AI inference accelerator besides the CPU and GPU, but for now that has software support only for Windows.
Nvidia of course has the added complexity that they were going to buy Arm and then that got blocked. They had to adjust to that as well. And of course they are the GPU provider of choice for GPUs to many AI developers and researchers. On paper they have all the right tech and ideas here.
There's a recent announcement of them working on this now: https://www.reuters.com/technology/nvidia-make-arm-based-pc-...
AMD, Samsung and a few others have similar plans. My guess is there will be several options in the market in a few years. We'll have to see how good those are.
https://www.macrumors.com/2023/12/18/qualcomm-snapdragon-x-e...
... while using 4 times the power of an M3.
Edit: looks like 23 watt performance is more or less the same https://www.anandtech.com/show/21112/qualcomm-snapdragon-x-e...
I know giant gaming laptops exist, but in order to keep that power and go smaller, the price is going to jump up in the moon.
So that’s $1100 or $1200.
Yes other models go way up from there. And many PCs are sub $500. But $2k is not the normal Apple price.
The upgraded models feel like a different beast entirely. Apple wants you to feel like you're justified paying for 16gb of memory and 1tb of storage because... you are. Those upgraded machines run smooth and stay running nice after multiple years of software updates. MacOS is a storage-hungry OS, 3 years of daily-driving a base-model Macbook Air will make you wish you spent $2k on your laptop.
For comparison, a base Surface Pro has even lower specs than a basic MacBook Air. (8GB/128GB)
But both of these devices are absolutely useable for general tasks.
With that being said, the base-model Macbook
Air is absolutely designed to leave you unsatisfied.
256gb of storage is a decade-running joke
I spent a couple of years doing Rails and Python work on a 2018 MBP (local dev) with 256GB. It's doable, barely, if you are willing to leave a low-profile thumbdrive permanently inserted. Or if you are willing to velcro an external SSD to your laptop lid =)8GB+256GB is fine for a lot of use cases though. If you have a remote development setup, or if you are just kind of using your laptop as kind of a glorified $1099 chromebook.
If your pictures are in iCloud or Google photos, your music is streamed, and other stuff is in iCloud or Google drive or whatever so most people need a ton of space these days?
I’m not arguing Apple’s RAM/storage prices are sane. They’re not. But with so much in the cloud or just being done in the browser instead of a large downloaded app i’m not sure normal users really benefit.
Paying for cloud storage may be a better deal, especially since I suspect the cloud is less likely to randomly lose data than if you forget your laptop somewhere or break it without a backup.
If you want to do video editing or a lot of programming that’s probably not gonna work. But if you’re mostly going to do “office task“ kind of things of typing and surfing and listening to music or watching YouTube maybe 256 GB isn’t so bad.
Base configuration should still be 16/512 in my opinion. But I’m not sure it’s as bad as it would’ve been 10 years ago to go low on storage.
https://www.anandtech.com/show/21112/qualcomm-snapdragon-x-e...
On things like GPU and LLM performance, I'd say they already have, and often at significantly lower prices.
For the particular use case of "a laptop on battery that doesn't die in ten minutes" Apple is decently far ahead. But everything else you can easily beat it if you make different trade-offs.
There is no reason for Windows to be sluggish on any mid-range CPU or up, yet here we are. I should not, I haven't used Windows for a good while, but I see demos and people are amazed by the speed of which windows open and coming from the Mac or a light weight Linux desktop, I can't say that I'm impressed.
Apple still holds the advantage that they just need to target a very small set of hardware configurations, all of which they have designed and control. It does still allow them to build the most pleasant desktop experience of all the current offering, even with less amazing hardware (mostly their GPU).
But this is HN, what people probably mean is: LLM are still better with an Nvidia GPU and neither Apples nor AMDs APIs and libraries are as good as Nvidias CUDA.
I wouldn't call MacOs desktop experience as most pleasant. Not if you are a power user.
From a poweruser PoV, the only complaint I have with MacOS is its lackluster tiling support which I need to install separate applications to fix.
I am not an Apple or MacOs fan but I recently bought a MacBook Pro just for battery life. So I can watch movies and browse the Internet on the sofa without having to plug the laptop.
Battery life is strongly tied to software though, and here Apple has the upper hand. However, if you use Chrome vs Safari, you will notice degraded battery life on Mac OS too.
Still way better than non-M chips.
I've done the runaround and used Safari, Orion, Chrome, Arc, and back to Firefox on my M1 MBP. Some are better than others, but the machine overall is still superior.
Unfortunately, this test didn't include a more recent Macbook, so I can't tell how it stacks up against the M3. Still, for about €500 less than the M2 Air, I know what I would pick. The 1600p screen and the soldered-on memory is a bit of a downside, but the thing sells for less than half the price of a new M2 Macbook Air when you actually configure it with 16GB of RAM and 512GB of storage; whatever improvements the M2 chip made don't seem all that interesting for that price difference.
Based on their historical data [2] for another guide, the Zenbook also seems to beat the M2 in terms of multi core performance and browsing battery life when recorded in another test, but I can't tell if those numbers are representative.
[1]: https://tweakers.net/reviews/11472/4/laptop-best-buy-guide-o...
[2]: https://tweakers.net/reviews/11610/4/laptop-best-buy-guide-d...
https://www.notebookcheck.net/Apple-MacBook-Pro-13-2020-Lapt...
If that Zenbook lasts for 18 hours, it is a good contender. I don't care for having the fastest CPU, just a decent one and plenty of battery life.
For instance, Tweakers uses a screen brightness of 180 cd/m² while testing, whereas NotebookCheck uses 150 cd/m². That alone should account for a sizeable difference in test results. I find it hard to tell what 30 cd/m² means in practice.
Because the ZenBook has a 75 Wh battery, in comparison to the MBA's 52.6 Wh battery. That's one of the reasons it's heavier, too.