Live data from Hacker News

New Apple Silicon M4 and M5 HiDPI Limitation on 4K External Displays

smcleod.net

141–150 of 180 posts

Re: New Apple Silicon M4 and M5 HiDPI Limitation on 4K External Displays

#141
Unlike the article, I'd assume it's hardware related rather than software.

Assuming the article is correct and the hardware can do 7680x4320 @60, which requires 8GB/s memory bandwidth, in theory it should be able to do the same to read the same memory and interleave every other line for the down-sampling. However, it's possible that the new memory controller can't support 2 simultaneous burst streams (because the 2 lines are 30KB apart in memory), or if it's doing a single burst and buffering the first line until the second line is available, then maybe the cache is smaller than 30KB.

Another possibility is that previously the scale averaged pairs of pixel horizontally and cached them until the next line was available to average with that, and for some reason it was changed to average all 4 at the same time and so the cache isn't sufficient (although it'd be weird as 25.25KB is a fairly weird size to limit the cache to)

Alternatively, looking at clock rates needed for the sampler, 3360x1890 @60 is 381MHz, 3840x2160 @60 is 497MHz. It's quite possible that they've lowered the base clock on some hardware and not considered that it'd impact the maximum effect on the scaler.

But whatever IMHO, it's unlikely to be a software bug with an easy fix.

Re: New Apple Silicon M4 and M5 HiDPI Limitation on 4K External Displays

#142
post #125

How did none of the Apple devs notice this? 4k 32" inch is the industry standard for HiDPI monitors.

I don’t think 4K at 32 inch can be considered high dpi. Not even at 27 inch. 5K at 27 inch or 6K at 32 inch would though, specially on a Mac.

Anything where 100% scaling isn’t usable is considered HiDPI.

Re: New Apple Silicon M4 and M5 HiDPI Limitation on 4K External Displays

#143
post #3

I thought I was going crazy when my new m4 seemed "fuzzier" on my external 4ks. I tried replicating settings from my old MacBook to no avail. I wonder if Apple is doing this on purpose except for their own displays.

Given how on fire the rest of MacOS currently is I think incompetent management simply not caring about regression testing is more likely.

Re: New Apple Silicon M4 and M5 HiDPI Limitation on 4K External Displays

#144

Earlier quoted context omitted.

I went to hell and back trying to get PIP/PBP monitors on my 57" g9 ultrawide to work with my M2 pro. ended up having to use a powered hdmi dongle, displaylink cable, and displayport, with 3 virtual monitors via betterdisplay. Allowing resolutions outside of macs limitations setting in BD is what did the trick. I don't envy OP. Having 5120x1440 @ lodpi was the worst, just ever so slightly too fuzzy but perfect UI siz…

You may be able to get this working using PBP and 2 cables without virtual displays. This is my write up for using HiDPI@120hz for two 57” G9s on my M2 MacBook. https://www.reddit.com/r/ultrawidemasterrace/s/VrBLFDxYzg

Ah but you see, the challenge is to get a 3-split PBP on an M2 pro on a monitor with a native res of 7680x2160, each one scaled down 33%, working at 120hz with HDR, all hidpi like so:

  ┌─┐┌────┐┌─┐
  │ ││    ││ │
  └─┘└────┘└─┘
It creates some wonky math and requires plenty of dock and cable shenanigans and unlocking resolutions above 8k via BD. It's the third "monitor" where it gets tricky with the M2 pro especially at these resolutions.

Re: New Apple Silicon M4 and M5 HiDPI Limitation on 4K External Displays

#145

Unlike the article, I'd assume it's hardware related rather than software. Assuming the article is correct and the hardware can do 7680x4320 @60, which requires 8GB/s memory bandwidth, in theory it should be able to do the same to read the same memory and interleave every other line for the down-sampling. However, it's possible that the new memory controller can't support 2 simultaneous burst streams (because the 2 l…

The 4 values in MaxSrcRectWidthForPipe are sub-pipes within each display controller, not separate display outputs. Every external display controller on the M5 Max has the same pattern: sub-pipe 0 = 6720, sub-pipes 1-3 = 7680. A single-stream 4K display only uses sub-pipe 0. Sub-pipes 1-3 are for multi-pipe configurations (8K displays use 2 sub-pipes, which is why an 8K EDID causes the DCP to assign PipeIDs=(0,2) with MaxPipes=2).

Your scaler clock theory could be right: the single-stream scaler path may genuinely have a lower throughput limit than the multi-pipe path.

Interestingly, the M2 Max uses a completely different IOMFBMaxSrcPixels structure. Instead of per-sub-pipe arrays, it has a flat MaxSrcRectWidth=7680 and MaxSrcRectTotal=33177600 (exactly 7680x4320) per controller. Every external display controller gets the full 7680 budget. Apple seems to have restructured the display controller architecture between M2 and M4/M5 to per-sub-pipe budgets, and the single-stream sub-pipe got a reduced allocation (6720 vs 7680) in the process. Whether that's a hardware change in the scaler or a firmware allocation policy is hard to say without Apple's documentation.

Re: New Apple Silicon M4 and M5 HiDPI Limitation on 4K External Displays

#146

Earlier quoted context omitted.

In layman terms, for some UI scaling options, text is rendered blurry by M4/M5 Macs.

Right, I just went though all of the scale options on my M4 with 4k monitor and none of them rendered blurry. Might be a very situational bug. Doesn't seem as widespread as the title makes out to be.

The author is trying to run 2160p@2x and downsample to 4k, not 1080p@2x. It took me another comment here to understand this as well!

Re: New Apple Silicon M4 and M5 HiDPI Limitation on 4K External Displays

#147
post #106

You might need a higher quality usb cable. I run ok with LG 5k display and MacBook Pro m4 max.

5k might be a different story, are you actually running it at 5120p with 2.0 scale? You can get that from running `system_profiler SPDisplaysDataType`, if you are running HiDPI with 5k that'd show something like Resolution: "10240 x 5760", UI Looks like "5120 x 2880"

Re: New Apple Silicon M4 and M5 HiDPI Limitation on 4K External Displays

#148
post #89

This might be a dumb question: Is the author looking to run 4k display at HiDPI 8k framebuffer and then downscale? What's the advantage of doing so versus direct 4k low-DPI? Some sort of "free" antialiasing?

i'm also using https://betterdisplaymac.com/ for this purpose.

even on a native 2K monitor, having a virtual 5K frame buffer downscaled to 2K yields perfectly enjoyable results, compared to how macOS' native 2K image would look like; it causes eye-bleed :)

Re: New Apple Silicon M4 and M5 HiDPI Limitation on 4K External Displays

#150

Earlier quoted context omitted.

From what I understand, the main goal is to fix the problem that non-native (1:1 pixel mapping) resolutions and scaling look worse than native. This is a problem when you ship high-dpi displays that need UI scaling in order for things to be readable. Apple's solution was to render everything at a higher, non-native resolution so that images were always downscaled to fit the display. So to oversimplify, Windows can ha…

I do not know who was the moron that first used scaling in conjunction with displays having a higher resolution, but this is a non-solution that should have never been used anywhere. Already more than 35 years ago the correct solution was used. For text and for graphics, the sizes must be specified only in length units, e.g. in typographic points or millimeters or inches, e.g. by configuring a 12-point font for a doc…

> Then the rasterizer for fonts and for graphics renders correctly everything at a visual size that is independent of the display resolution, so it is completely irrelevant whether a display is HiDPI or not.

Well that sounds great in theory, but then you'll get only one button per screen on your laptop and maybe two on your desktop. More likely one and a half.

Post reply on HN