Adam Fields and Perry Metzger have been investigating the serious performance issues people are experiencing with Lion. “Frequent beachballs, general overall slowness and poor UI responsivness, specific and drastic slowdowns on every Time Machine run, high memory utilization in Safari Web Content, mds, and kernel_task processes, large numbers of page outs even with a good deal of available RAM, and high amounts of RAM marked as inactive which is not readily freed back to other applications, with page outs favored.” Apparently the issue is that the “virtual memory manager is bad at managing which pages should be freed from the inactive state and which ones should be paged out to disk”. I won’t make myself popular with a certain part of our readership, but really, is this considered a new problem? Mac OS X has always had terrible memory management, and where Windows has continuously become better at it, Mac OS X seems to have been stagnant and even getting worse. This is what happens when the company earns 2/3s of its revenue somewhere else.
I experienced all of the symptoms listed on my Mac Mini. I thought it was a problem with my hardware, which is aging, but should still be usable. It’s a late 2009 model (core duo; 4GB ram). This weekend, I setup dual-boot on it. I did a fresh install of Lion on one partition and a fresh install of Ubuntu on the other. Lion still works terrible. Ubuntu works awesome. This article further confirms for me what my experiment did; that Lion is the problem and not my computer. Snow Leopard worked great by the way. I guess I’ll put that back on.
And a resounding, “Me Too!”
I have a late 2008 mbp. It has never been a speed demon. But, it’s been good enough. I noticed major slow downs after Lion. My assumption was that Apple had ladened it with iCloud stuff.
I have been planning to replace my mbp because of this issue. I would just go straight Linux. But, I have gotten kinda used to Adobe Lightroom. So, I might just get a Windows laptop, yuck!
Nothing that can’t be fixed, like the Windows case you presented. I wouldn’t say the problem lies with Apple’s priorities, just that the current system is “good enough”.
Yeah like by running Windows, which doesn’t have such issues.
Seriously so, most people pay extra for the Apple stuff in order to avoid exactly that kind of issues, which is no small bug.
Windows has no such issue. Linux has no such issue.
They’d notice in a heartbeat.
Likewise, wifi+bt is broken on MBA’s (use both at the same time = wifi disconnects every 10-100s).
No big class action, no fix, just “use a wired keyboard, not a bluetooth one”.
Personally, I think that’s terribly wrong.
But Windows has it’s own issues, like all the disk activity it creates. Seeing as HDD’s are the common performance bottleneck in modern computers, this is no small issue either, and it the main reason i swapped from Windows to Mac OS X
If you have a good amount of RAM (like what the Macs come with), then that does not occur in Windows, either.
Windows 7 is the very first (non-game) Microsoft product I’ve ever purchased for myself and actually recommended to others.
–The loon
Strange… I have no problems with wifi+bt… I use a bt mouse and WiFi all the time and stay connected all the time…
But it isn’t good enough, that’s the point.
Ever since I upgraded to Lion, I’ve been experiencing this. I’ve been filing tons of bug reports with Apple, but they haven’t fixed it. I’ve sent lots of debug info they requested, however, so maybe they’re working on it.
OS X has always seemed to be better than just about anything at handling memory, in my non scientific experience.
Safari does seem to be terrible and using and freeing memory, which is why I don’t use safari on macs. But that’s about all I’ve noticed. I only play with a friends Windows 7 laptop from time to time, which is only rebooted when necessary for installs/updates. It seems just as good as the mac, which is a huge improvement over how bad XP was. I might have a different opinion if I abused it as much as I do my other operating systems,but it seems to be good.
Edit: after reading the article, it seems like its tied in to the disk thrashing that Time Machine does. I don’t use time machine, preferring to just rsync my backups to a spare server.
Edited 2012-04-23 17:52 UTC
“Always seemed better”? It needs more memory than pretty much any other OS just to boot from disk, and takes more time to chew swap as well.
I don’t judge operating system performance by Minimum Required specs.
I managed to get windows XP to run on a Cyrix M2 running at ~250 mHz and with only 64 mb of ram, but I wouldn’t say that makes it better than at memory management than windows 7.
It is not, I’m not using Time Machine, yet I’m hit by that issue and I’m not alone here:
https://discussions.apple.com/thread/3193912?start=0&tstart=0
Interesting. I’m using number of more intensive programs than that with the same amount of memory, but not running into any issues on Lion. But, I don’t use mail or safari. Don’t know why, maybe I’m just lucky.
Edit:
Read more of that post. It seems to be a memory leak in Safari. Which explains perfectly why I haven’t run into it. I really don’t know why anyone uses safari. Its molasses compared to Chrome/chromium.
Edited 2012-04-23 21:20 UTC
Were you using your mac for software development?
My normal application set which could trigger this would be:
1. Thunderbird
2. Firefox
3. Adium
4. Skype
5. Cog(Simple audio player)
6. Xcode/Eclipse/Netbeans
Of course I have all normal background applications running, several dashboard widgets and I’ve PostgreSQL, MySQL and apache httpd running as well (most of the time passive – no openned DBs and serving clients).
With all this I can hit above mentioned issue in couple of hours.
Edited 2012-04-23 21:48 UTC
Typically I run at the same time:
Skype
ichat
Xcode
Third party IDE for nefarious purposes
Oodles of terminals
Chrome
firefox
Opera
Thunderbird
Itunes
Software X for purposes of wonderment
Remote Desktop connection to another computer
VMPlayer
LibreOffice
I mean, I wouldn’t consider that to be a light memory load.
I like the way the story end with “This is what happens when the company earns 2/3s of its revenue somewhere else.”
Is this like saying that since General Electric makes everything from jet engines to healthcare to appliances to televisions that the lightbulbs they make aren’t very good?
Since Microsoft makes money elsewhere and loses it with Bing, that must not be any good either?
Since Coca-cola owns Minute Maid and less than 2/3 of its revenue comes from that, then it must not be very good either…
I know my examples are ridiculous, but I wanted to make a point about that line.
I do I agree with the story, the memory management needs a lot of work.
It’s not strange. Apple is a company with limited means, and considering 2/3s of their income comes from a single product line (iOS), it’s logical to assume that other products will suffer from it.
But you still need to learn, that as a good journalist you should check to make sure whether or not your perception and the reality of the situation match.
That which sounds logical and correlated to you, may not be what really is happening inside that specific organization.
And you still need to learn that OSNews is a blog, and has been since its inception in 1997. OSNews editors editorialise. We always have. Deal with it.
People forget that iOS and Mac OS X use the same kernel, just with different userlands bolted on top. If there was a serious memory management issue, surely it would manifest itself in iOS devices too….
IOS doesn’t use swap, that’s the difference.
Edited 2012-04-25 17:35 UTC
http://www.youtube.com/watch?v=ks-N4rI_1RU
Actually, that video was about OSX 🙂
Was it? It was a long time ago I saw it.
I’m not specifically referring to OS X (I don’t know much about it), but just making a general observation…
A lot software these days seems to be developed not by highly trained engineers, but by coders (so to speak) who back in the days spent more time down a pub, than studying for their computer science degree. This is why the quality is so appalling.
The depressing thing is, when you get a job you almost always end up taking over the crap left by these people and then having to maintain it.
In Europe usually you cannot land a programming job without a degree in software engineering or computer science, but this is not the case in all countries.
Of course you can. You’d need a couple of previous jobs on your resume instead, though.
Out of curiosity, what kind of reception would a software developer who has lived in the US for their whole career get in the European job market, say Italy or France? (Not interested in Britain if it’s reputation of becoming a police state is accurate).
I’m just not sure if European businesses are undergoing the same offshoring/layoff tendencies that we’re seeing in the US. Can anyone with a foot on both sides of the pond shed some light on the markets relative to one another?
If you don’t speak the country language, it is going to be very hard to get a job.
English only speaking nationals, from my personal experience, are only able to find a job in big corporations working in a global market that use English as their internal working language.
Some startups are open to have English only speaking workers, but they are hard to find.
This is one of the reasons why most Europeans speak on average 3 languages. The mother language and two foreign languages, one of the being English.
It depends a bit where we look to.
In the enterprise big companies world, is full steam ahead with offshoring, if we speak about big countries like France or Germany. You won’t find any big corporation without multi-site projects, where the development takes place partially in some offshoring country.
The big consultancy companies now only offer those type of projects.
If on the other hand, you have a look at smaller countries, or business areas where the companies tend to be more small to medium size, then you are a bit safer from offshoring stories.
The bigger issue currently, are the big corporations using the current European crisis as a way to force governments to more liberal work laws, using the competitiveness excuse, as its happening the Portugal, Spain, Greece and so on.
I second that, particularly in the case of France, where daily life can be a difficult if you don’t know a bit of French. I’d simply add academic research jobs to the list, since it works pretty much as well as in big corporations.
The thing seems to be country-dependent though. When I went to Sweden for work last year, as an example, I noticed that Swedes are much better at English than us Frenchmen. Not knowing Swedish was an annoyance, but not a crippling handicap.
Edited 2012-04-24 06:56 UTC
Now there’s a surprise
Well, I had to see it first in order to believe it
Nordic region in general seems to be at the top, close to countries where EN is the “native” language.
http://en.wikipedia.org/wiki/List_of_countries_by_English-speaking_…
I really don’t think “most” and “on average” describes it accurately…
Looking at http://en.wikipedia.org/wiki/List_of_countries_by_English-speaking_… the EU has 46% for English but that includes UK and Ireland – so, from the numbers given, closer to 33%. Europe is certainly lower.
That’s for the lingua franca of our times – other languages should have, comparatively, notably lower adoption as a foreign tongue.
Personal anecdote time: I’m in one of the late EU member states, a hop across the Oder from your place. While my EN is bearable, my DE is… pathetic, I can’t really speak it – basically I can just largely follow German films, if the dialogue isn’t too sophisticated.
Once, when I wrote an email in German(?), Gmail ad system thought it was Swedish… (makes tiny bit of sense I guess, Swedish supposedly being in some ways “between” DE and EN )
And… that still places me among the local minority of people able to communicate quite effectively with foreigners – better than most around me.
(weird and too bad with DE, really: my grandfather was mostly German, living with us until his death when I was 6, but for some reason he didn’t really transfer to me anything – maybe his ill-health, maybe because instilling in the grandson German language was still perceived as socially inappropriate in the 80s; and I also had more than half a decade of DE in school…
OTOH my formal EN education started only when I was 15 – but by then I was already much more fluent in it than I ever was in German …the luck of getting one good books+cassettes course at the age of 5-6, plus http://en.wikipedia.org/wiki/Voice-over_translation plus the “simple” EN of Cartoon Network or C64 games? Later on some TV stations in general, and that’s all…
And so, when at the age of 14 I was among those who won German language school competition, and on that basis went to Essen on a short student exchange – I communicated mostly in English; most of us did)
Yeah, painful – but also don’t mythologise the past too much. Bad code is around for a long time (maybe in how mostly the decent code survives, we remember it better)
The tide of Visual Basic is almost two decades old by now… (and I’m sure there were similar, earlier)
I’ve been managing ~ 10 Macs all with Lion almost since day one and I haven’t had any problems.
The key is to do a clean install, never an upgrade. Most of the issues arise from upgrading.
There only problems I’ve documented and this is across the boar.
1. The OS freezing momentarily when watching Flash videos using Chrome. I don’t use any Flash blocking tool, it’s simply not installed on any machine. In its place there’s Chrome and whenever I come a cross a website with Flash as the only alternative I fire up Chrome.
2. Safari pages going black/not responding when having many tabs open.
If you want a decent article on memory management in OS X, John Siracusa delves into the issue in all of his recent OS X reviews on Arstechnica.
Wait, wasn’t this supposed to be the problem & requirement of Windows, but not of other operating systems and not of MacOS in particular?
I often have the impression that too much I/O-operations, no matter if network or disk, blockade each other, stopping everything in the end.
Has anyone checked out the BSD bug reports. The BSD guys are pretty good, so if this was broken when Apple forked Darwin from it, I am sure the BSD guys have fixed it by now. If Apple broke it after they got it, this proves that they shouldn’t be mucking about with the internals, but instead, just grab a fresh copy of BSD and lay their UI on top of it again.
I’m quite sure that the memory manager of OSX wasn’t derived from BSD, but from Mach. Actually, FreeBSD has adapted that memory manager, so it’s rather the other way around. But Apple might learn from the way FreeBSD does things. If it is feasible, as the kernel is quite different.
That was ages ago… FreeBSD inherited its Virtual Memory Management system from the original Berkeley codebase, which itself was modeled after the Mach VMM – but that was back in the 80s.
Afaik the two codebases haven’t seen each other for nearly 30 years. At this point I would say they are probably still architecturally similar but completely different when it comes to the nuts and bolts of how they are implemented. Mach has stagnated for the last 20 years or so – BSD has not.
Darwin is basically OSX minus the GUI (kernel + userland). Darwin is not a fork of BSD – the parts of Darwin using BSD derived code were ported from FreeBSD.
The XNU kernel is not and never was based on the BSD kernel – it is a heavily modified Mach 3 kernel as was used in NextStep. There were some things done to the kernel to make it mesh better with a BSD userland, but it is still Mach under the hood.
In short there is quite a lot of BSD derived code in OSX, but very very little of it has anything to do with memory management – that is all done by Mach.
to put it gently.
In my experience, OSX has about the worst MM of any Unix out there. The system becomes deeply unstable when any significant amount of VM is used.
I so wish that Apple would use a decent kernel like Solaris. It really would have been great if Apple would have bought Sun and scrapped the whole bottom end of OSX and replaced it with Solaris.
But, I guess Apple has other priorities.
My 2008 MacBookPro is running Lion, but I did not have these problems so far … because I got more than enough RAM for my uses (6 GB).
But before my upgrade I used to have 2GB using Leopard and yes it was slow.
Now since I also put a SSD in this “old” laptop I turned off paging completely to avoid wearing and the OS became even more responsive (no not just the loading/saving but the overall feeling)
Paging is somewhat broken in OSX, but you can switch it off. For me paging is broken by concept anyway. For an old Amiga user it should be the other way round: don’t page blocks of your RAM to the harddisk but have a RAMdisk for temp files and avoid unnecessary IO on your drive!
Edited 2012-04-23 20:57 UTC
I would argue that swapping (saving physical RAM pages to disk when the OS is feeling that RAM is lacking for some reason) is more guilty than paging (slicing physical memory in pages that can be put anywhere in a process’ virtual address space) here.
Edited 2012-04-24 06:29 UTC
…then lose them, inevitably at worst moments, with unavoidable (and frequent – unless you just stare at Workbench) Guru Meditations.
But then, Amiga still has broken RAM management (and I wouldn’t be surprised if doesn’t even have what Neolander points out to be really paging), no memory protection, no proper multitasking (it’s not proper if it depends on well-behaving apps).
Linux has the same problems. Try unparring and unrarring a 10GB file, and look at how all of your memory gets paged out, in favor of storing that 10GB file in file buffers. Your 8GB box will crawl.
It’s rediculous, but I believe it *still* happens. The kernel isn’t to blame though, since it offers API’s that prevent buffering/caching the file. Sadly, it’s rarely used.
I guess Time machine doesn’t or can’t similar mechanisms.
API’s:
http://linux.die.net/man/2/madvise MADV_DONTNEED
http://linux.die.net/man/2/posix_fadvise POSIX_FADV_DONTNEED
I have the same problem. The inactive memory grows as i open/close applications, or surf the web etc., and the free memory shrinks. And when it falls to something like 100-150 MB, the system starts to hang, everything slows down dramatically.
I finally managed to reproduce the problematic scenario, so i run the test and recorded the screen, into video. http://www.youtube.com/watch?v=u5wZwZh61_4
I run the tar+bzip command, which is basic unix stuff, on the large amount of picture files, in my Pictures/ folder. Just before start, i run the “purge” command, to delete inactive/cached program data. You can see on the video that free memory starts to drop very fast, and inactive is constantly rising. When the free memory dropped below 100mb, i started some apps, like Safari, iPhoto and MS Word, and you can see in the video, that it takes even minutes (!) to start an app, when normally (when there is free RAM), it would take some 3-5 secs to load. I run the same scenario and the same commands on my Linux Centos 6 box, no problem there ! Memory usage is some 10-20mb, no problems with cache/buffer.
Background: I have a late 2007 Santa Rosa Macbook (the last black plastic one) that dual boots Snow Leopard, Leopard and Windows 7 Pro. I also have one of the base model Mac Mini’s with a core i5 that dual boots Lion and Snow Leopard.
Experience: Lion, 99% of the time is fine for me. It does have weird slow downs occasionally, but I’ve never seem really big issues. I hacked a retail install on Snow Leopard to boot on the Mac Mini, and it runs pretty much the same. It boots from USB (so,yeah, the disk performance is poorer), but the general OS is fine. I’d advocate any one who has a similar Mac to give Snow Leopard a go.
My Macbook has always been less responsive with Snow Leo, not crazily, but enough to warrant keeping Leopard around. Windows 7 on the same hardware is pretty uninspiring.
But do you want to know what really makes a difference? Memory. I have 4GB in both Macs, and it really does make a difference. I’m going to upgrade the Mini to 8GB as soon as I get some spare cash.
I have the opposite problem – I have plenty of memory (12 GB) that very rarely gets used, 2/3 to 1/2 of RAM is almost always free, yet system swaps everything and caches nothing into RAM.
Change the swappiness parameter
The related implementation in FreeBSD seems to have a similar problem:
NetBSD users have also reported that UVM’s im- provements have had a positive effect on their applica- tions. This is most noticeable when physical memory becomes scarce and the VM system must page out data to free up memory. Under BSD VM this type of paging causes the system to become highly unresponsive, while under UVM the system slows while paging but does not become unresponsive.
http://static.usenix.org/event/usenix99/full_papers/cranor/cranor.p…
Should be easy to fix: just start to page out some stuff in time before there is no memory left.