Animated GIF uses over 35GB RAM in Acorn on M1 Mac, likely due to memory leak
twitter.com
twitter.com
Ristretto: 48.8MB. EOG: 51.3MB. ImageMagick: 169MB. Firefox: 305.1MB. Vivaldi: 185.2MB. Edge: 196.5MB. GIMP: 244.8MB.
OS memory usage remained relatively flat once app exited. xUbuntu 20.04.
It at least causes ImageMagick to explode, and generally anything that tries to flatten out the GIF into full canvas-sized frames.
I wouldn't be surprised if some poorly implemented players were built on top of abstraction layers that end up flattening the whole thing too and also break, but browsers at least generally do it right.
We should drop gif support.
Their continued popularity seems due mostly to their historical auto play behavior. One that apps are so reluctant to disrupt we're filling landfills with electronic waste to keep up with ever larger and longer meme animations.
Actually software which edits animated GIFs doesn't have to crash per se, it's all about how smartly it's implemented, and because GIF editing isn't exactly a sprawling industry, most apps tend to be, well, not that smart, and so edge cases can get them.
There are a lot of corners of the internet which just haven’t been touched in a decade. Are you going to break all of them? For what purpose?
Rather that renderers / apps would put a pause on downloading and processing very large (say 1MB+) or very long animations (100+ frames).
Another matter is compatibility. IE11 is a no-go which even after the recent announcement will kill APNG for some. And while Edge now supports it this has only been the case since the switch to being Chromium based (so the beginning of last year).
There's still the weird niche of lossless compression where apng or webp would be preferred.
Based on APNG and JPEG 2000, the only question I have for new formats is how they plan to get browser support. It’s a hard path to relevance unless you have a good answer for that (even if it’s, say, a WASM fallback).
We just need an actual replacement that has the same behaviours and actually works everywhere, as gif does. Videos are not a replacement, and other image formats don't work everywhere
Chrome, Firefox, Edge, Android, and iOS. That covers most of what we want, right? It fails on say... a 2009 era netbook or Android Gingerbread, but we gotta draw the line somewhere.
Even if you do care about Android Gingerbread: H264 3.0 Baseline profile IIRC worked on that (though its been a decade, so maybe I'm getting version numbers mixed up...). Going back to H.264 3.0 Baseline would reduce your compression-efficiency (more distortion / noise at same filesize, or larger filesize for same levels of distortion), but greatly improve your compatibility with decade-old devices if you cared.
Even H.264 3.0 Baseline is a far superior format compared to GIF though.
-------------
Lol audio is a mess though. But video-only is actually way better than most people expect.
edit: grammar
The web browsers seems to have significantly improved compatibility of <video> in recent years, and even had decent compatibility 10 years ago (if you use Baseline profile H.264 3.0 videos and Javascript to smooth over some edges).
You say they had decent compatibility 10 years ago, but no. At least a couple years ago you still needed many fallbacks and it was a hassle to guarantee the video would show properly. Not to say that you wouldn't be able to share it as image to tumblr/pinterest for example.
That has always Just Worked with GIFs, but the last time I checked (a couple of years ago) it basically never worked with any “proper” video format.
I'm sure there's some javascript / backend logic that handles some corner cases. But... yeah. A lot of self-looping .mp4 stuff seems to be solved. The <video> tag has been getting more and more consistent these days.
I just do some hobby stuff though. I only test on the stuff close to me (chrome, edge, firefox, my phone). So I can't say too much about reliability on older / more obscure platforms.
But yes: its weird that Chrome / Firefox don't have easy-to-use "save as" buttons on .mp4s. But just grab the .mp4 and share the .mp4 on whatever services you use.
Increasingly, it seems like .mp4 is becoming the new gif. Its not quite as user friendly yet, but there's all sorts of advantages compared to .gif.
Right, so this just don't work for like 90% of the population, or when you are on mobile, right?
Edit: what I mentioned about saving the mp4 and having problem later is: if I save the video and then try to re-share it on Twitter, it will be shared as a video, and not as a gif - or at least that was the case last time I tried
If you are posting a gif on a comments section of a website, or uploading to tumblr, for example, you don't have this control
WebP support (including animation) was added to the most recent major version of Safari, meaning WebP has similarly widespread support.
Webp worked well though, resulting in a 300kb webp. Might try to start using it
edit: nevermind, webp doesn't work on whatsapp.
That’s part graceful and part a security hole. It means you can hide any image you want if moderation tools don’t show past the first frame.
Not quite. Some leaks are across processes. If your process talk to a local daemon and cause it to hold memory then quitting the client process wont necessarily free it. In a similar way, some application are multi-process and keep some background process active even when you quit to "start faster next time" (of act as spywares). This includes some infamous things like Apple updater that came with iTunes on Windows. It's also possible to cause SHM enabled caches to leak quite easily. Finally, the kernel caches as much as it can (file system content, libraries, etc) in case it is reused. That caching can push "real process memory" into the swap.
So quitting a process does not always restore the total amount of available memory.
Btw. many people don't seem to know, that also in languages with a garbage collector like Javascript, you can create awesome memory leaks. And I would bet, most websites actually do: it only works, like it works, because websites are closed regulary. And because RAM is every increasing. But browse with a older smartphone and you hit the RAM limit very quickly.
But that could pile up quickly, so I am not sure if and how it is done in the various browsers.
I think Discord implemented some measures to guard against those files and Chromium was patched to mitigate this (which is why Edge and Vivaldi are fine), so it's not surprising that something like Safari might struggle with Evil GIFs under certain circumstances as well.
https://forums.flyingmeat.com/t/memory-consumption-when-open...
Gus Mueller (the author of the linked tweet) is the author of the Acorn image editor.
> I’ve narrowed it down quite a bit (and submitted it to Apple as FB9112835).
> What’s going on is that the IOAccelerator framework has some sort of massive leak in it, where it’s using up 35GB of ram, 25 of which is going to swap (which is why you’re seeing kernel_task flake out).
> On intel, the same image only uses 1480K from IOAccelerator.
I compared smartctl output with activity monitor on disk writes and it's exactly the same number. You can do the same.
> "While we're looking into the reports, know that the SMART data being reported to the third-party utility is incorrect, as it pertains to wear on our SSDs" said an AppleInsider source within Apple corporate not authorized to speak on behalf of the company. The source refused to elaborate any further on the matter when pressed for specifics.
We'll likely never hear anything else about this again from Apple officially or unofficially, so I don't expect anyone who believes there's an SSD wear issue to stop believing that there is. Either the combination of "smartmontools is emulating SMART access, but doesn't actually have it" and "a source at Apple said that smartmontools is incorrect" is enough to make this a non-issue, or it's not — and since most people who think that there is a wear issue don't realize the part about smartmontools faking that it has access to SMART data in this scenario (hint: nope!), I don't expect to find common ground.
So as far as I'm concerned, this is all irrelevant until someone's SSD wears out, and no one's reported that, so everyone is all tempest-in-a-teapot over some numbers that an open source tool is handcrafting from a macOS kernel API based on assumptions about Apple's proprietary hardware that are probably wrong. Wake me up when someone's SSD wears out.
Apple are aware of it, the bug is fixed in 11.4, and once the corresponding XNU source code drops I'll be happy to diff it and show you exactly what they changed in the swapper to fix it and debunk your "debunking".
So, maybe premature to get too hopeful but certainly not too soon to look in that direction?
Today I do things in a half-an-hour with Python that would have taken me days - maybe weeks! - to accomplish in 1978.
Each little vendor had their own janky tooling. Compilers cost hundreds of 1970s dollars (until Borland's $49 Turbo Pascal, over $150 in today's money).
Don't get me wrong. I was very unhappy when Intel dominated everything. The fact that ARM, an open-source architecture, is now eating Intel's lunch makes me happy.
But I'd honestly be glad if everyone just settled on ARM and were done with it. It was fun messing with all these weird processors (my first team leader job was writing an operating system for a pocket computer running the 65816 processor!) but it meant that actually generating work was very slow.
>The fact that ARM, an open-source architecture
ARM is in no way open, it's fully proprietary. Unlike x86 it is not vertically integrated and is available for anyone to license all the way to the architectural level, and that's huge. But said licenses certainly are not free either, nor Free.
There are promising actual open architectures, in particular OpenPOWER and RISC-V come to mind as interesting with a lot of solid work behind them. So that's one small remaining opening IMO, even if it's more work on the dev side I wouldn't mind having those stick around and get more competitive.
For example, Huawei's Kirin NPU.
As for actual CPU architectures, there are only two that really matter at the moment: x86/AMD64 and ARM. It's of course very cool that ARM has proved itself flexible enough to be used from (almost) the smallest embedded devices to supercomputers (not to mention Apple M1), but there's not that much diversity as there was in the 80s either...
The second I have no doubt you are correct - I know of several organizations that have licensed ARM just to ensure they have a long term plan to get more without the CPU going obsolete again (one company has spent billions porting software that was perfectly working on a 16 bit CPUs that went obsolete - there was plenty of CPU for any foreseeable feature, but no ability to get more). These want something standard - they are kind of hoping that they can combine a production run with someone else in 10 years when they need more supply and thus save money on setup fees.
The first is a lot harder. The big players ship a lot of CPUs, and they the volumes to make some customization for their use case worth it. However I don't know how to get real numbers.
https://www.eejournal.com/article/whats-inside-apple-silicon...
Can you provide some more information on this? I would love to be able to hit them on this, as this would actually be really upsetting to a lot of people I know who work on toolchains.
The rumor I've heard is that Apple is keeping their custom extensions to the ISA undocumented in deference to ARM's desire not to have the instruction set just completely fragment into a bunch of mutually incompatible company-specific dialects.
It's worth noting that the article you link predates the public release of the M1 by a good 10 months. Given how secretive Apple tends to be about these sorts of things, one can only assume that it was based almost entirely on rumor and conjecture.
But it's not really about trying to prevent anyone from discovering that these opcodes exist. It's about trying to discourage their widespread use. If it's undocumented, then they don't have to support it, and anyone who's expecting support knows to steer clear. That gives them more freedom to change the behavior of this coprocessor in future iterations of the chip. And people can still get at them, because Apple uses them in system libraries such as the OS X implementation of BLAS.
So one could be forgiven, I should think, for thinking the shift was more comparable to x86 -> amd64 than it was to x86 -> ia64.
AMD didn't have to extend x86 the way they did, but without buy in from intel there was no way forward unless they went the route they did. Because unless both had agreed to shift to UEFI at the same time and agreed on an ISA it wasn't going to happen. This is why even a modern x86-64 processor has to boot up in real mode... because there was no guarantee that the x64 extensions were going to take off, so AMD had to maintain that strict compatibility to be competitive.
AArch64 had no prohibition, because there is no universal boot protocol for ARM. Insofar as the UEFI or loader sets the CPU in a state the OS can use then it's fine. The fact that there is one IP holder helped as well.
That said could AMD make a x86-64 processor without real mode or compatibility mode support? Yes they can. In fact I would hope that the processors they ship to console manufacturers fit that bill. There is a lot they could strip out if they only intend to support x86-64.
If you read Patterson and Hennessy (Arm edition) there is a slightly wistful throwaway comment I think that Aarch64 has more in common with their vision of MIPS than with the original Arm approach.
Elsewhere you've commented that it's more similar to x86 -> x64 than x86 -> Itanium - which may be true but Itanium was a huge change. However, Aarch64 is philosphically different to 32 bit Arm so it's not really like the x86 -> x64 at all which was basically about extending a 32 bit architecture to be 64 bit.
aarch64 isn't really an equivalent category to x64, because it describes only one portion of the whole ARMv8 spec. ARMv8 still includes the 32-bit instructions and the Thumb. I realize you did mention Thumb, but you incorrectly indicated that it doesn't appear at all in ARMv8. As a counterexample, Apple's first 64-bit chip, the A7, supports all three instruction sets. This was how the iPhone 5S, which had an ARMv8 CPU, was able to natively run software that had been compiled for the ARMv7-based iPhone 5.
A better analogue to aarch64 would be just the long mode portion of x64. The tricky thing is that ARM chips are allowed to drop support for the 32-bit portions of ISA, as Apple did a few years later with A11. Like leeter said in the sibling post, though, x64 chip manufacturers don't necessarily have the option to drop support for legacy mode or real mode.
I think that's a fairly important distinction to make for the purposes of this discussion. I wasn't ever really talking about just aarch64; I was talking about all of ARM.
> I gather that it's true that ARM hasn't been as good about backwards compatibility as some of its competitors, but was ARMv8 really so much of a jump from ARMv7 that one can't count it as part of the same line of processors anymore?
> I wasn't ever really talking about just aarch64; I was talking about all of ARM.
M1 is AArch64 only. You incorrectly brought ARMv8 into the discussion. AArch32 is irrelevant in the context of the M1.
Fair to highlight worse backwards compatibility but then you can't bring back AArch32 which Apple dropped years ago to try to claim that the M1 somehow uses an old architecture.
Is it? It's not like Apple moving MacBooks to M1 happened in a vacuum. M1 is only the latest in a whole series of Apple ARM chips, about half of which were non-aarch64.
That context actually seems extremely relevant to me; it demonstrates that Apple is not just jumping wholesale to a brand new architecture. They migrated the way large companies usually do: slowly, incrementally, testing the waters as they go. And aarch64 was absolutely not involved in the formative stages (which are arguably the most important bits) of that process. It hadn't even come into existence yet when Apple released their first product based on Apple Silicon. Heck, you can make a case that the process's roots go way back before Apple Silicon, all the way back to ~1990, when Apple first shipped the Newton.
Note, too, that the person I was originally replying to didn't say "M1", they said "Apple Silicon." In the interest of leaving the goalpost in one place, I followed that precedent.
RISC-V is open source which is great in some respects but also not helpful in others.
It had a quite a nice simple instructions set.
Parts of ARM were modeled after 6502, it having been the processor used in the company's first successful microcomputer.
Edit: Granted, Sophie Wilson, one of the designers of ARM, is on record stating that 6502 didn't inspire anything in particular, beside being one of the few inputs to her pool of ideas (16032 and Berkeley RISC being the others): https://people.cs.clemson.edu/~mark/admired_designs.html#wil... So... arguably :)
Huh, hadn't seen that previously. I'd still call that a influence on ARM rather than a proto-ARM, but fair enough.
Proprietary software is probably the main reason we haven't had a whole lot of diversity in ISAs over the past couple of decades (see: Itanium). It's no coincidence that ARM's mainstream explosion is tied to Linux (be it GNU/ or Android/).
Though you are correct, a lot of abstraction today makes things portable in ways that in the past they were not. The abstraction has a small performance and memory cost which wouldn't have been acceptable now, but today it is in the noise (cache misses are much more important and good abstractions avoid them)
This is not true, compilers don’t generate super-optimized asm output from C. It’s actually not that optimizable because eg the memory access is too low level so there are aliasing issues.
But optimizing doesn’t actually help most programs on modern CPUs so it’s not worth improving this.
A ton of ARM hardware is embedded cores running VxWorks or EmBed. M0 through M4. Yes, Phones are the dominant core consumer here, but there is a whole bunch of embedded/IoT stuff shipping ARM cores every day that will never see Linux installed.
Right up until you see someone run Doom on it.
CPU hasn't been the limiting hardware in a decade. I think Intel stagnated because people have prioritized spending money on GPUs, memory, and SSDs.
Even when I'm writing an intensive program, I'm using multiple cores, so a single threaded benefit is useless to me.
I have a half a mind to think the m1 is a marketing gimmick because making a better processor was low hanging fruit that CPU companies aren't trying to compete on(outside of price).
maybe poorly worded but i would like to point out that a single-thred performance gain is never useless, not even with a highly a parallel workload.
i would think that due to multi-stage cpu caches and ipc overhead, something within one core/thread will be way more efficient.
GIFs are pretty optimized files — where each "frame" can be a diff from the previous. "De-diffing", converting palette-based pixels to full 24 or 32-bit RGB could really blow up fast.
This is a given for movie formats, but at the time the animated GIF came up it was revolutionary. I think the proper phrase should be "animated GIFs can be pretty optimized, taking into account how inefficient the algorithm is, when compared with other animation algorithms of the time".
I also think there's an interpretation that applies here: When you see an animated gif, even if it's a frame that changes three pixels and nothing else, internally the renderer may be expanding it into a full movie (that is, uncompressing each resulting "frame"). This usually makes GIFs (regardless of how large or small the GIF actually is) take much more memory than common sense would tell you.
1. animation isn't technically intended by the gif format [0]:
> Although GIF was not designed as an animation medium, its ability to store multiple images in one file naturally suggested using the format to store the frames of an animation sequence. To facilitate displaying animations, the GIF89a spec added the Graphic Control Extension (GCE), which allows the images (frames) in the file to be painted with time delays, forming a video clip > > To enable an animation to loop, Netscape in the 1990s used the Application Extension block (intended to allow vendors to add application-specific information to the GIF file) to implement the Netscape Application Block (NAB).........Most browsers now recognize and support NAB, though it is not strictly part of the GIF89a specification
2. SMIL[1] is an animation alternative I'd never heard of for the browser.
[0]: https://en.wikipedia.org/wiki/GIF#Animated_GIF [1]: https://en.wikipedia.org/wiki/Synchronized_Multimedia_Integr...
I got the 8GB RAM version, and been mainly using it for Unity + JetBrains Rider, both demanding around 4-6GB by themselves. Doesn't help neither of them are ARM native, I'd imagine. So I'm in big trouble :)
I wonder if the GoLand/ PyCharm JBR folders will work, since I already have those and they are both ARM native. It's definitely the UI performance that kills me, have no issues with the other editors on the laptop otherwise. Running Unity in parallel likely doesn't help either, though.
If this actually turns out to be a widespread problem and Apple doesn't address it in a timely update you may see a class-action lawsuit and/or Apple warranty repair service in a few years.
I've had one that gave up on 3 years, a couple months after warranty ended (that seemed to be quite common for that brand at the time).
And I had to upgrade SSD and RAM 2 and 4 years after buying, it became unusable for work (granted, it was not spec'ed out originally).
If you bought your MacBook until MID 2012, you're out of luck though.
And 10 years old would be early 2011, and those are also not supported.
Mojave has the same requirements basically, that leaves High Sierra, and High Sierra had a few months of support left (ended Dec 2020), so I just aborted.
But yes, older Macs were notorious for being great machines.
Why? Apple still offers battery replacements for modern Macs, and some more adventurous types of people still do it themselves. They're glued to the chassis, not spot welded.
Typically you would only replace them when they (gradually) became annoyingly slow for daily use.
Agreed, I had to upgrade all of of my PowerBooks/MacBooks at some point with RAM and larger HDDs/SSDs.
And my last Apple Laptop is from 2012 and I learned that Apple now drops support by the OS considerably earlier than in the old days (i.e. unecesarily early, most 8-10 year old MacBooks would be perfectly fine for daily use, but now unsafe) - at least that was my impression.
And installing Linux on them is always a mixed bag (fans, trackpad, etc.), even though it sure is better with Intel Macs.
And it was seldomly updated, so you could get very aged specs.
If you bought a MacBook 2011/2012 you would typically get an HDD and between 4 and 8GB RAM. Software requirements/demands sky-rocketed shortly after that. On a non-Air you could at least upgrade this yourself, which gave the machine new life ("just like new")
I think my current work laptop is 6-7 years old. My backup laptop is 11 years old.
That said, my 2015 HP Zbook (previously in contracting work, now personal use) still works perfectly, only now with third keyboard, third battery, and a bit of superglue.
The one which they called a "pig" internally where "lipstick won't fix it", but which they kept selling for years?
That totally broke my trust that Apple will address quality issues.
https://www.ped30.com/2021/03/23/apple-butterfly-lipstick-pi...
But Apple have always been good about free, no-questions-asked, out of warranty replacements for faulty/sticky butterfly keyboards. Not really sure what more you could reasonably want them to do.
1 Admit the issue before a class action lawsuit is running
2 Put immediately a statement that there "could" be an issue and it is investigated. Apple kept their mouth shut and the fanboys attacked the people that reported the issues that they use the keyboard wrong or some even claim that is is an anti-Apple conspiracy.
Trust was eroded because every year they came out with some improvement on it that was supposed to fix the problem, then at the end of the year models with those keyboards were added to the expanded warranty program.
I think it would have been better if they had a real fix for this issue, it probably would have been expensive for them with a redesigned top and bottom case to fit a decent keyboard but right now the butterfly keyboards seem like ticking time bombs. Eventually they will die and Apple will either ask several hundred to repair it or say parts no longer exist and buy a new one.
Maybe Apple should have just swallowed their pride and addressed it in a single product cycle. I was one of the people waiting for the keyboard to be fixed before buying a Mac, and I just ended up switching to Linux before it happened. I ended up buying an M1 Macbook Air, but it doesn't get much use these days besides multiplatform testing.
Here's one of the worse ones back in February: https://twitter.com/marcan42/status/1361847686417190918?s=19
11.4 is in beta so not many people are using it, but at least one of the folks with the issue is running it and said it improved things.
Apple were definitely made aware of it, hence why it being fixed in 11.4 makes sense, though there is no official statement that I'm aware of.
I was never able to reproduce it myself; we never found a specific trigger, but some people have the issue consistently and others (most) don't. I only managed to trigger thrashing with very blatant memory pressure (i.e. allocating most of the system capacity and continuously reading it to keep it hot), which obviously isn't what these users were doing.
People have looked at the OSX swapper code, and there were some hints that the algorithm it uses to decide to swap may have had some bugs; if 11.4 fixes it then I'm sure we'll find out once the XNU source drops and we diff it. Nobody has actually tried to root cause this outside of apple (i.e. using debug XNU builds on an affected workload/user).
Also, we never confirmed that this was an M1 exclusive issue. There's some evidence that this is a Big Sur regression that affected all Macs, it's just that the effects aren't obvious on Intel ones because the age of the SSD makes it hard to draw conclusions unless you're actively watching lifetime writes over the course of weeks. On M1s, since the machines are young, the problem is obvious with a single data point.
You have a single case of 10% lifetime usage (plus a 20% one you mention), along with thousands of reports of people with 2-5% - which you also stated was too high - based on your insistence of using TBW (which can vary by up to 10000x depending on the tech) instead of percentage used (supplied by the manufacturer).
I had an out of memory alert on my machine earlier because i opened a typescript file in VLC. It was using 26GB of memory (and climbing) when i noticed it and killed it. I have an 8GB RAM machine. The machine remained fully responsive throughout. That simply wasnt possible before.
Its definitely swapping a lot, for sure, but don't you think that there is a possibility that this is by design, sacrificing disk writes (i am 50TBW and still ONLY 2% "used" on a 256GB drive since launch) to make app switching more responsive?
I guess we will see when you are able to diff the source, and you can shut me up once and for all :)
See also: https://eclecticlight.co/2021/05/17/how-m1-macs-feel-faster-...
When you think of swapping as slow it's not because it eats CPU, it's because it blocks on I/O.
We've seen the numbers go up in the activity monitor. Even while doing ~nothing. Fast. That is obviously a bug. Even with some Electron apps open and such, I guarantee the working set of active apps was nowhere near the physical RAM size. And so, that's a bug.
Terabytes per day of swap activity is not normal, no matter how much these machines are designed to swap on purpose.
As I said, there's one user with 20% usage as reported by the drive. That's not TBW, that's real (they're at >500 TBW, for what it's worth), and it means that machine is going to have a dead SSD within 2 years if the issue isn't fixed.
1TB is only 62.5 * 16GB. If its paging out 8GB+ apps (quite easy for chrome with a number of tabs) it only takes one memory hog to increase the TBW in a few hours of typical app switching for a mobile app developer.
This edge case is pretty extreme, sure, but its still a MINIMUM lifetime of 2 years. It doesn't mean its suddenly going to die when it hits 100%, and even if it did it should be covered by warranty. And this usage is an order of magnitude more than the vast majority of other reports that were made.
Im inclined to think its a non-issue, but totally respect your position.
As an aside, I use tab suspenders on my browsers - habit from my intel mac where chrome frequently caused memory congestion. Its probably why I get away with running 2 iOS simulators, an android emulator, xcode, intellij, 3 vscode instances, safari, firefox and chrome, and a bunch of utilities and services on an 8GB machine - but ill still be first in line for a 32GB+ 16+ core machine, because then ill be able to run VMs :D
There is no way this is normal :-)
That user you linked to is using Catalina (as they mention in their twitter thread where they demonstrate a 3% usage increase over 2 weeks), so it will be completely unrelated to the support for silicon, which wasnt added until Big Sur.
Check history, until a class action lawsuit forces Apple to admit the problem they will sweep it under the rug or they claim you are using it wrong.
I'm skipping these for now, I run Linux on all my machines and it typically takes a while for the wrinkles to be ironed out, and x86 has much better support than M1. I do think it is time that we became less fixated on x86 and more CPU architectures is better. Another reason for the skip is that the last two Apple products I've owned (both MacBook Airs) have not lived up to expectation, the one had a keyboard that went bad after only two years with nothing but perfectly normal use, the other has a battery that didn't even go through 50 full charge / discharge cycles and that only holds 5 minutes worth of charge. Both of these issues developed out of warranty.
It was still going strong after almost a decade of use and got €300 as a trade-in. If that’s Apple‘s idea of planned obsolescence, I support their plan.
My 2012 MBA is used daily and heavily by my mother and graphic designer sister. My 2015 MBA replaced that iMac and now I'm trying to find an excuse to replace my current 2019 MBA because M1s are reaaally attractive. Essentially I've convinced myself Apple is anouncing laptops later in the year that look like the newest iMacs, just so I wait.
Edit: Since posting this comment, the parent has been edited to include "hope you got the 16G version" -- at the time I replied, jacquesm's comment mistakenly asserted an absolute "maximum memory size of 8G."
Did I miss it? Or can‘t I see it if there is no availability anymore? Anyone a link?
This link might work: https://www.apple.com/shop/buy-mac/macbook-air/space-gray-ap...
Nah, they suck at it.
My GF is just finishing her bachelors thesis in the living room on my 2013 MBP with 4 GB RAM. First battery, updated all the way from Mavericks to Big Sur. Still supported, still useful and prettier than 80 % machines out there.
The lack of communication was a problem but "planned obsolescence" in this case is just tin-foil hat nonsense.
Most other smartphone brands: hold my beer
That said, was this upgrade to Android 7.1 officially supported by Samsung?
In 2015, Apple released the iPhone 6S. It has not stopped receiving day-one software updates. For anyone who still has one (two in my circle of family and friends still have their 6S) they are still working great on iOS 14.5.
If that's their game, they are terrible at it.
Seeing that Macs hold their resale value for longer, for mobile they release iOS updates for longer than any other Android vendor, and so on.
What Apple is good at is making the product an "Apple only can fix/change" affair. But that's not the same as planned obsolescence game.
>With a maximum memory size of 8G it's a bit anemic
Is it? The majority of non-Apple laptops in 2021 are sold at 8G and below. And for people's use (web, surfing, email, Slack, Zoom, regular apps, etc) that the Air and smaller MBPs are aimed at, that has always been plenty.
(In fact, outside of video, audio, 3D, VM, and number crunching work, it's crazy that people would need more than that for the same stuff, computationaly wise, we did 10-15 years ago with much less RAM - blame Electron).
And 16GB and below is something like the 95% percentile or above.
EDIT: It also happens with Firefox Nightly: https://twitter.com/sthomas798/status/1395613674027458567?s=...
(Just trying to guess what they meant.)
Memory leaks don't cause swap thrashing most of the time; the leaked memory gets swapped out and then just sits there, as it is unused (hence leaked).
Until now most laptops sold everywhere, including high end models, where 16GB and below. 32/64 is a tiny niche (and special built to order option in most cases), even for video and music editing people.
Sure, 32GB would be nice, but let's pretend this is some huge issue for but a small minority that runs several VMs simultaneously or such.
Not to mention the M1 machines released thus far (Air, Mini, 13" Pro, and 24" iMac) are the lower end of the line - the kind of machines that people wouldn't tend to update to 32 even when it was an option under Intel (which itself, is not that long ago).
32GB is minimum in 2021, with all my hardware having 64GB
I’m not sure exactly what the difference is but in terms of UX, x86 ram needs do not translate to Apple Silicon 1:1
I do DAWs (with tons of VSTs and sample libraries), VMs (vagrant, docker) and NLEs (up to 4K), but usually not at the same time, and I've never run out of memory in macOS ever in ~20 years. 16GB is the largest amount of RAM I ever had in them.
How often does this mythical "macOS runs out of memory" thing happen?
>MacOS is notorious for having one of the most asinine memory management schemes in the history of software
Citation needed.
So my ram needs are lower precisely because I don’t notice it.
So the question is what share of the market this is true for? When it comes to laptops, I'd say not that larger (relatively, in absolute numbers it might have doubled, e.g. from 1% to 2%) than what it was in 2019 or 2020.
Oh, the app happens to use 5 instead of 1 background processes and nobody notices (using 50+ MB of RAM each, it's not nothing) and the bug just languishes.. :)
It adds up, and needs to be fixed.
I hope so! My MacBook Air has been running over 10 TB of writes per month. Considerably more than my old Intel MacBook Pro, which averaged 2.8 TB per month. Both 8GB machines.
It's enough that I'm worried it could start to see degraded performance after a couple of years or so. That already seemed to be happening on my Intel MacBook after only ~120 TB writes (256GB SSD).
Can someone explain to me why people are still using them for that 26 years later, especially now that we have much better formats like webm, mp4, or SVG, and will hopefully have AV1 hardware-supported in a few years ?
The main issue is just how freaking inefficiently huge gifs are for this use case : This whole thread, but also I was seeing an order of magnitude difference in a recent use-case I had, compared to mp4, which would have made sending the document by e-mail otherwise not viable.
(And imagine still living somewhere where a Mo of data doesn't have a negligible cost of transfer...)