Apple losing their server division, and their huge focus on iOS has led to many of their core OS technologies lagging behind. Examples are networking, filesystems (still HFS+), kernel level benchmarks, concurrency, NUMA etc, and especially so compared to what Linux, Solaris, *BSD, and NT have progressed in the last few years.
A few years ago, I remember some of their kernel engineers saying Apple's performance goals are holistic with their hardware ie prioritise things that the majority of their consumers (mainly low end laptops) would need. This seems reasonable, why invest in best of class IO when most users are on 54g wifi with a single 5400rpm HDD. The problem is now consumer hardware has caught up, gigabit wifi, PCI-e SSDs, 8+cores, retina screens, multi-level cache hierarchies.
One thing OSX does extremely well at is power management, and that's in a large part due to iOS. I wonder what Apple run at their data centers?
I've wondered the same. Here's some educated guesswork & rumour mongering:
They're known to use "Teradata" (i.e. Dell), "Oracle" (i.e. FKA Sun) & HP DL-series servers alongside NetApp storage. iTunes is reportedly one of the world's largest SAP installations and that'll almost certainly be on AIX or Solaris with Oracle databases on the aforementioned NetApp spindles. OS for other applications? Nothing stops Apple running OSX if they do the driver work, but honestly I'd walk in expecting a mix of Solaris, RHEL and Windows, like every other Enterprise(TM).
[ it'd be nice to think they run a lot of FreeBSD given their UNIX group's credentials but - correct me if I'm out of date here - the bge(4) issues of FreeBSD on HP Gen8 servers seem to undermine that ]
Separately, iCloud is reportedly running on Azure & AWS.
I think it's a pity that Apple abandoned the server market so completely, but I understand how a consumer-first strategy with a strong theme of "same experience everywhere" is antithetical to enterprise needs (specifically the demands of experience control & functional lockdown expected by corporate IT departments). I've done some hard yards inside large enterprises and seen first-hand just how wedded many CIOs are to the whole colossal Microsoft ecosystem; competing with that head-on would be a very long game.
This makes sense, especially considering most people use WiFi to access their DSL or cable modems which are delivering substantially less than 54g anyway.
Few people have a use for the ability to quickly move large files around the house. Media professionals, pirates with HTPCs... what else?
Why would you test wifi speed using afp or cifs? Don't both those protocols dictate a fsync on each block, meaning they are very dependent on rtt which is much longer via radio? If you're testing radio bandwidth you really want to use a protocol without restraints like that, such as rtsp or http. While window size will undoubtedly help here, I wouldn't be surprised to find that windows 8 isn't flushing as often or performs async fsyncs.
Probably because afp or cifs are going to be the situation that ordinary people experience a WLAN bottleneck?
The speed of RTSP over 802.11ac would be relevant if you are giving a keynote address in your living room that needs to be streamed to the hundreds of interested participants in the kitchen.
Anandtech has some great reviews --- I recommend them to anyone that has ever fallen into the trap of reading a CNET review, product a product, and then realizing it falls short of expectations. That, and I also recommend them to anyone interested in diving into some of the more technical details of processor architecture and benchmarking, screen diagnostics, and more detailed write-ups on device performance.
Anand wrote "I spent a good amount of time trying to work around this issue, even manually setting TCP window size in OS X, but came up empty handed. I’m not overly familiar with the networking stack in OS X so it’s very possible that I missed something, but I’m confident in saying that there’s an issue here."
A better test is to use something like iperf to see what the underlying TCP limits are like: in the case of something like SMB or AFP, it can be particularly confusing if you haven't adequately accounted for buffering and async writes – I've seen copies which “completed” considerably before the network traffic stopped.
If it is window scaling, adding the following to /etc/sysctl.conf should make a considerable difference by bumping the limits up to values appropriate for >100Mb connections:
It was incredibly alarming that the author blamed OSX on slow SMB performance and neglected to say which version of SMB they used. OSX 10.8 (Mountain Lion) only defaults SMB v1, where as Windows 8 defaults SMB v3. SMB v1 is incredibly chatty and has typically has bad performance over high latency networks (in other words the very 802ac network they were testing). And SMBv3 solves that problem altogether. So it's no wonder Windows 8 was faster. If the author bothered to do additional testing with iperf (like in http://anandtech.com/show/7085/the-2013-macbook-air-review-1...) then they would get completely different results.
I think the point is that when you do these tests with all defaults enabled, you're testing what 99% of users will use. Even a simple command line tweak means that the results don't necessarily have any bearing in everyday usage by the majority.
I see it the way you do. I mean, it's not like we have 136Mbps pipes connected to our houses (with the exception of google fiber), but even if someone did.. most public facing servers will be limited to 100Mbps anyways.
Based on our and Shimpi's tests, it seems entirely likely that Apple will be able to fix the issue in software, and I would be surprised to see OS X 10.8.5 or OS X 10.9 ship with the same issues.
I'd even suggest: Microsoft's SMB v1 in OS X holds back Wi-Fi transfer speeds.
Since the reason for slow performance is mainly due to SMB v1 (as opposed to Window 8's SMB v3) in their tests and not actually a kernel level problem with OSX.
[+] [-] dmmalam|12 years ago|reply
A few years ago, I remember some of their kernel engineers saying Apple's performance goals are holistic with their hardware ie prioritise things that the majority of their consumers (mainly low end laptops) would need. This seems reasonable, why invest in best of class IO when most users are on 54g wifi with a single 5400rpm HDD. The problem is now consumer hardware has caught up, gigabit wifi, PCI-e SSDs, 8+cores, retina screens, multi-level cache hierarchies.
One thing OSX does extremely well at is power management, and that's in a large part due to iOS. I wonder what Apple run at their data centers?
[+] [-] objclxt|12 years ago|reply
They've posted job ads for their data centers in the past that mention Solaris and IBM/AIX. I don't know if there's anything official beyond that.
[+] [-] inopinatus|12 years ago|reply
They're known to use "Teradata" (i.e. Dell), "Oracle" (i.e. FKA Sun) & HP DL-series servers alongside NetApp storage. iTunes is reportedly one of the world's largest SAP installations and that'll almost certainly be on AIX or Solaris with Oracle databases on the aforementioned NetApp spindles. OS for other applications? Nothing stops Apple running OSX if they do the driver work, but honestly I'd walk in expecting a mix of Solaris, RHEL and Windows, like every other Enterprise(TM).
[ it'd be nice to think they run a lot of FreeBSD given their UNIX group's credentials but - correct me if I'm out of date here - the bge(4) issues of FreeBSD on HP Gen8 servers seem to undermine that ]
Separately, iCloud is reportedly running on Azure & AWS.
I think it's a pity that Apple abandoned the server market so completely, but I understand how a consumer-first strategy with a strong theme of "same experience everywhere" is antithetical to enterprise needs (specifically the demands of experience control & functional lockdown expected by corporate IT departments). I've done some hard yards inside large enterprises and seen first-hand just how wedded many CIOs are to the whole colossal Microsoft ecosystem; competing with that head-on would be a very long game.
[+] [-] superuser2|12 years ago|reply
Few people have a use for the ability to quickly move large files around the house. Media professionals, pirates with HTPCs... what else?
[+] [-] trotsky|12 years ago|reply
[+] [-] drewcrawford|12 years ago|reply
The speed of RTSP over 802.11ac would be relevant if you are giving a keynote address in your living room that needs to be streamed to the hundreds of interested participants in the kitchen.
[+] [-] asafira|12 years ago|reply
http://www.anandtech.com/show/7085/the-2013-macbook-air-revi...
Anandtech has some great reviews --- I recommend them to anyone that has ever fallen into the trap of reading a CNET review, product a product, and then realizing it falls short of expectations. That, and I also recommend them to anyone interested in diving into some of the more technical details of processor architecture and benchmarking, screen diagnostics, and more detailed write-ups on device performance.
[+] [-] mblakele|12 years ago|reply
I wonder if he tried net.inet.tcp.win_scale_factor=8 and kern.ipc.maxsockbuf=16777216 as recommended by http://fasterdata.es.net/host-tuning/osx/ and other sites?
[+] [-] asafira|12 years ago|reply
[+] [-] acdha|12 years ago|reply
If it is window scaling, adding the following to /etc/sysctl.conf should make a considerable difference by bumping the limits up to values appropriate for >100Mb connections:
[+] [-] mbell|12 years ago|reply
[+] [-] Hengjie|12 years ago|reply
[+] [-] untog|12 years ago|reply
[+] [-] mbell|12 years ago|reply
[+] [-] unknown|12 years ago|reply
[deleted]
[+] [-] bdirgo|12 years ago|reply
[+] [-] film42|12 years ago|reply
[+] [-] cjreyes|12 years ago|reply
[+] [-] jared314|12 years ago|reply
Based on our and Shimpi's tests, it seems entirely likely that Apple will be able to fix the issue in software, and I would be surprised to see OS X 10.8.5 or OS X 10.9 ship with the same issues.
[+] [-] angersock|12 years ago|reply
[+] [-] phamilton|12 years ago|reply
[+] [-] lhnz|12 years ago|reply
Instead of: OS X is holding back the 2013 MacBook Air.
They have very different meanings.
[+] [-] Hengjie|12 years ago|reply
Since the reason for slow performance is mainly due to SMB v1 (as opposed to Window 8's SMB v3) in their tests and not actually a kernel level problem with OSX.
[+] [-] AndreasFrom|12 years ago|reply