Apple has a bug in its disk I/O throttling code that affects raw disk copies
mjacobson.net
mjacobson.net
Regular userspace processes, even those with niced/lowered priority, could generate overwhelming amounts of CPU load just by creating a bunch of IO burden on a dmcrypt-backed mountpoint. Far more than their fair share in terms of their own process scheduling.
The effects of this were especially visible when listening to mp3 files on something like a core2duo (or older) machine. Audio buffer underruns galore, just because you had a big git checkout or rsync running.
It took me years to convince upstream to revert the responsible dmcrypt workqueue commit and fix this.
AFAIK, this was also due to the disk IO scheduler used in Linux.
Back in the late 00's, audio or video playback would skip on Ubuntu if you had a torrent download on the same HDD, an issue not present under Windows or MacOS.
AFAIK, desktop Linux distros now have different schedulers to mitigate this issue, but back then, that made it impossible for me to use it.
Then someone at Google landed a change prioritizing dmcrypt throughput for their use case, and many on desktop linux using dmcrypt suffered for years because of it.
[1]: https://blog.cloudflare.com/speeding-up-linux-disk-encryptio...
You can tell when it was introduced if you google for things like "time machine got super slow for no reason" and see when they start occurring en masse.
It has a strong habit, even on 100% completely idle machines, of slowing down throughput by 10x.
The number of iops and throughput shot up overnight and most people are still playing catchup...
I don't know about MacOS, but in the distant past I found that using larger "bs" values tended to cause my Linux machines to behave sluggishly, particularly when interacting with very slow media like USB sticks or SD cards. I tend to use "bs=32k" at the largest because it offers good performance while also limiting sluggishness. Using too small a value limits throughput because you spend so much time issuing read() calls and looping.
I'm sure the author isn't going to set up that environment again just to run a test, but it would be interesting to know if a smaller bs value would have had any change in this environment.
> a character device (e.g., /dev/rdisk0) ..., however, bypass the buffer cache and spec_strategy entirely. ... This is pretty much exactly what we want
Needless to say, I used a friends windows machine to make an install stick using Microsoft’s media creation tool and that worked out of the box. Strange. The only other explanation I have is that their direct download iso was corrupt or that this dd bug prevented it from writing correctly.
UDF file format. Bootable image. UEFI. SecureBoot enabled. Standard Intel chipset.
I definitely got this impression, after a 2 or 4 gig boundary was crossed. I think I tried a Raspberry Pi to rule out a Mac issue. I had success with https://github.com/WoeUSB/WoeUSB-ng .
The iso checksum verified without issue. Looking into it a bit, this might have something to do with UEFI firmware that only had FAT32 drivers. It started the install fine, but it broke when it hit a 4+ gig file, which would probably look truncated.
Which bug in dd?
I'm guessing that if you do use spinning disks, then the disks are single purpose. They are not main OS drives, but external storage or backup disks.
taskpolicy -d throttle nice <rest of the command>
Can't remember if I previously ran into general slowness from disk operations, but at least with the wrapper I surely don't.`taskpolicy` might require root permissions, however.
$ taskpolicy -d throttle ls -a
[expected output]Or they're just faster at learning stuff than you, or smarter :) Sounds like a pretty interesting life.
Hinting that the jailbreaking/security community has no life, on a site called "Hacker News", where most of us have some sort of hacker spirit, is misguided at best.
I'm a kernel dev (FreeBSD), and this all made perfect sense to me. But a lot of web dev stuff I read about here seems like wizardry to me!
It's mentioned at the end as the solution, which of course has been recommended and known to most technical macOS users since forever.
Could this be another example of "the road to hell is paved with good intentions"? While the intent might be good, adding complexity with non-obvious side-effects is not.
I have my Mac set to never pre-download software updates though.
If writing RAM to disk is the issue, what’s the solution?
Although there is not much info…
Literally yesterday.
e.g. (2016) https://www.mackungfu.org/massively-speed-up-time-capsule-ti...
Apple's target market is creatives. Lots of audio and video folks. Folks who really, really do not want their computer screwing around making a backup when they're in the middle of trying to get things done.
Yeah, this can get real annoying when trying to diagnose hangs…
Aka, this has been known by the power users for some time
I also find as a dev that iPhones and MacBooks “just work” and let me get my stuff done, much much more so than a Linux desktop environment or windows laptop.
I guess we may be talking about different things though if you’re saying the apple ecosystem isn’t living up to its full potential, but IMO the rest of the phone/computer ecosystem is full of cheap shitty plastic crap with windows installs that OEMs have had free reign to install whatever they want on (and even without that, why tf when I install windows 10 do I get ads for “candy crush” on my start menu?!)
Apple is perceived to be high quality because they only serve the high end. When you compare ecosystems, you should at least compare the same market segment. There are also market segments that Apple has no products in (convertibles, for examples, or sub 600 dollar laptops).
Candy crush hasn't been installed by default for years now. There's plenty wrong with Windows 11, but the spam has severely reduced and the user experience has improved in many points (and made worse in others, i.e. not being able to dock the task bar to the side, though you can't do that on macOS either).
In System Preferences > General you can set the dock to the left, right or bottom of the screen.
I want to underline that this is true for what I need out of a laptop.
The opposite has been true in desktops. I have a Ryzen 3900X box and there still isn’t anything from Apple that I would replace it with. Not even to run macOS on it (which I do on the AMD box, using GPU passthrough).
My MacBook Pro 14" is pretty much on-par with my Ryzen 5900X CPU-wise (the M1 Ultra would surpass it by a wide margin). The GPU of the M1 Max is nothing to sneeze at, but I'd love it if they'd bring eGPU support to the M1 line. (And if one can dream, if NVIDIA would also make CUDA available.)
Well, in which tasks?
Comparing e.g. geekbench results for the M1 Ultra https://browser.geekbench.com/v5/cpu/14664498 and a decent 5950X (PBO) result https://browser.geekbench.com/v5/cpu/14665931 it looks like a lot of Apple's multicore score is attributable to AES (which uses special fixed-function HW). And with other tests, different CPUs win different benchmarks. 5950X notably wins in clang :)
> bring eGPU support to the M1 line
Probably not M1.
marcan tweeted recently that Apple's PCIe integration has been is broken in the same way as on Broadcom's RPi4 SoC — mapping PCIe BARs as normal memory (which allows unaligned access) doesn't work. I can't find the tweet (deleted??) but here's the RPi thread: https://github.com/geerlingguy/raspberry-pi-pcie-devices/iss... Basically there's no quick kernel level workaround for this, if you really want a GPU to work on such a broken platform you need to patch every single thing in userspace to avoid unaligned access.
We'll see soon if that's fixed in M2, but I suspect they don't care…
They aren't high end, but if we're comparing to other laptops, $1000 is far from entry level. Entry level is $200-250, and mid-level, probably good machines tend to start around $500; for $1000, you usually get either good specs or nice aesthetics and sometimes both.
Of course, for some users, the $250 laptop has more than enough computing power for their needs (as long as it has a half-decent SSD, cause windows 10, and I assume 11 can't stop thrashing a spinning drive and there goes your perceived performance; I've never dug into it like in this article though, swapping in an SSD is good enough)
There is somewhat of a correlation between price and quality of product. After a certain price, any lower, and you start getting into the “it’s more expensive to be poor” scenarios, where the amortized cost the product over its lifetime ends up higher than the ones that cost more upfront.
I still remember the standard advice of buying a Windows consumer laptop was to reinstall the OS after buying it. In what world should that be acceptable? In my accounting, that time and effort spent installing an OS gets added to the price.
Dell https://www.newegg.com/aluminum-silver-dell-latitude-e6530-m...
Lenovo https://www.newegg.com/p/2WC-000J-01931
Hp https://www.newegg.com/black-hp-stream-pro-11-g5-everyday-va...
Under 200 https://www.newegg.com/black-evoo-ultra-thin/p/1TS-00AY-000D...
Sure, there's some correlation between price and quality, but if you're worried about longevity, 3-4 laptops of questionable quality are likely to last longer than a $1000 laptop anyway. And, screen aside, the 3rd and 4th cheap laptop might end up with better specs than the single quality laptop. If screens are important to you, then that's not going to work, and that's valid; but a lot of people get a fancy hires screen only to run it in 2x mode and push 4x the pixels for a small difference in experience; it's certainly worthwhile for some people, but it doesn't make a big difference to me and many others. In an ideal world, you could pick between screens on a laptop; there's a huge spectrum of screens that meet different needs and wants, but most manufacturers aren't giving options beyond glossy (eww) or matte in a normalish resolution, and on higher priced machines maybe one higher res option with no choice in finish. Sometimes, business oriented laptops will have a couple adjacent sizes available with the same bottom half of the chassis, but that doesn't happen for consumer laptops.
> I still remember the standard advice of buying a Windows consumer laptop was to reinstall the OS after buying it. In what world should that be acceptable? In my accounting, that time and effort spent installing an OS gets added to the price.
A lot of people say a lot of things. Windows works fine out of the box, most of the time. If you want something that values your time, Chrome OS devices are better: works out of the box; cold boots in a couple seconds; no junk (other than google login, but you can run in guest mode if you don't need persistence); updates are done in the background, reboot whenever, none of those long waits at startup to finish stuff like MacOS and Windows. Plus, they start at even lower prices: usually something for $100, something with a mainstream x86 processor around $200.
If I’m wrong and you have specific examples, let me know. But the last time I checked, PC quality price per price was still pretty bad compared to Apple.
The 2020 MBA (to avoid having arguments comparing ARM and x64 cpus) launched at $1000 started at a 256GB disk, 1.1GHz two-core i3, and 8GB of RAM.
A quick search will find the 2020 Acer Swift 3, $700, with a 512GB disk, 1.8GHz eight-core Ryzen 7, and 8GB of RAM. It looks pretty sleek, metal, and thin too.
I do mean this sincerely, am I missing something? Because I don't know of any perspective where the price-spec gap disappears with Apple laptops. When people talk about buying Apple "for the hardware", I really don't think the argument is about the specs.
Once I learned about “binning” years and years ago, I stopped paying attention to specs and instead just pay attention to commercial/business line branding. Or Apple in this case, which does not have a business line, but has earned a reputation for not using bottom dollar components.
I looked at the 2020 Acer Swift 3 you mentioned and it’s the same sorry: 1080 250-nit display, and IT Pro’s review says it’s “mediocre in several areas – the screen, build quality and design are all underwhelming, and the keyboard and battery are middling.”
Over the past 10 years, I think the assumption is that Apple laptops cost more for equivalent computational specs, but are prettier* and built better (controversies aside), and have MacOS (which is a plus for many.) (I did pick this laptop for comparison because its RAM and SSD sounded good above its base numbers.)
I guess my main argument is that there's not enough here to "debunk" this trend, even with deeper insights into hardware. This might be different with the M1, which I have no experience with.
(*This is a quality that I don't mean to dismiss. A better screen is important for a device that might see >10h of use in a day.)
But if you've ever actually owned an Apple laptop and then use ANY of these other ones, it's completely obvious right away what you're paying a little more for. Apple has issues too (I had a previous model with the shitty keyboard, my current Touch Bar is dying, and it was a horrible idea in the first place), but even if I didn't care about macOS I'd still never even consider getting a different brand because those shortcomings are so stark.
The screens are great, they don't flex or creak, the touchpad is amazing, it's not covered in plastic, and it doesn't feel like you're paying for maybe a great processor and SSD but everything else is crap.
Those differences don't show up on a spec sheet though, so for many people it makes no sense why people pay a little more for Apple, and that "little more" really isn't a whole lot when you are actually trying to compare equivalents. When you get a similar-specced PC laptop and the MacBook is maybe $100 more, that $100 is actually going to better components in general. E.g. both have a trackpad but Apple's is significantly better.
Another example is monitors: why pay $1700 for Apple's Studio Display? Well, because literally no one else sells a 27" 5k display except for that one from LG which was widely known to have tons of reliability problems. Why do you need a 5k instead of 4k? Retina text. If you haven't lived with it this doesn't matter, but if you have then moving back to 4k kinda sucks.
I guess what I meant to express is that, I think most people are roughly aware of these things as explaining the spec-cost gap. I thought there might have been something more? (My own experience is lacking-- I haven't used Apple laptops for more than a few weeks at a time, and I haven't used any of the recent M1 laptops.)
Ahhh I see what you mean.
Thankfully DisplayPort 2.0 compliant GPUs starting to surface (both the upcoming AMD and NVIDIA GPUs will do it) may finally see the start of their ubiquity in the coming years.
Been doing multi 1440p (or 2560x1600) since 2005, because I refuse to give up logical area by going to 4K. 3x5K will be happy days for me.
At least on the Mac Mini though, I can disable SIP and go crazy, or install Asahi Linux. iPhone is gimped really hard and even a $100/yr developer license doesn't really help you that much; you're still not getting basic WebM in Safari or alternate browser engines.
I know it's popular to not like Android for being janky, not as privacy-respecting, fragmented, or simply because of the fact that it's Google, but I don't really mind Android that much, even given all of its faults. It's mildly annoying but at the end of the day it feels like there's very little that I simply can't do. I mostly use Google devices, so I can always root and flash other ROMs.
iPhones and Macs is more for people that don't want to tinker with their hardware/software.
The author of this article notwithstanding
https://www.webmproject.org/detect/
If you get a positive result, please let me know. I would be willing to jump to a beta for that…
It used to not be that way at all. They had OK-ish hardware that was basically a dongle for the awesome software.
I think this is more accurate:
Apple: great hardware, software better than the low low bar set by everyone else
Linux ships with 2394230 desktops, and Windows apparently isn't even designed by people who use actually use Windows: https://news.ycombinator.com/item?id=30019307
as a former Mac user, I think Mac software is kinda great on ways other systems cannot keep up: constant upgrades, function over form without sacrificing form, when an old/surpassed API is deprecated, community reacts very fast.
But Apple software and especially MacOS?
Not really.
You mean, "set by you". It doesn't pass the higher bar set by me, which is easily passed by Plasma.
The most recent example was navigating control panel menus while trying to figure out why a microphone wasn't picking up my voice. Somehow every tiny management task like that is an absolute disaster on Windows.
IIRC this is also the only run-mode for sandboxed App Store apps, where all file opens must be user-initiated (and some utility apps work around this by asking you to open the disk root manually)
I like Windows on Bootcamp. I like hackintoshes and my 2015 MacBook Pro. It's trying to bend macOS to my will on recent systems that causes wailing and gnashing of teeth.
I wish there were some kind of mechanism to maintain current levels of system security while allowing previous levels of freedom. Maybe a way to sign a Yubikey and the Recovery partition with an Apple Developer account, after which booting with the Yubikey on that system would allow you to, e.g., install an older version of macOS, or make changes to /System.
And I have PORTS again. I used the HDMI port the first day I got the machine.
Expensive af but it'll hopefully last me 5+ years.