Recommendations for new Mac for HQPlayer 5

I don’t have M3 or M4. I have M1 and M1Max. But HQPlayer on arm64 is generally built for ARMv8A.

But the issue is that if I use SVE2 explicitly, then HQPlayer won’t work on M1, M2 or M3 models. And I’m not going to make three or four different builds for Macs. Current Intel Mac build requires AVX2, which is not an issue, since Apple has not produced Macs without AVX2 support in past ten years.

Not sure what Apple’s Xcode compiler is doing inside, they don’t really tell in detail. But I expect they do what is necessary for optimal performance on their hardware, since they don’t bother to tell more.

Likewise, I have rather limited support for AVX-512, especially now that it got dropped since 12th Gen Core. I had more in the past. And it never delivered any notable performance improvements.

For higher output rates, modulators are critical points, and those don’t really benefit much from such instruction sets, but instead more from bare clock speed / IPC (instructions per cycle).

I just checked Apple’s store and I cannot find any Mac models with M4. Only M2 or M3…

You made it sound like the AVX stuff was a big deal.

You would have to write your code in such as away as to test for SVE2 support. Then you would not need any extra builds. But, if that stuff doesn’t matter, then there are no issues as you don’t need to use SVE2.

Clearly the M4 processor is a huge step up from the M1. When Apple releases Macs with the M4 it should be interesting to see what is possible. I am hopeful that there will soon be a Mac mini with an M4 Pro with at least 6 performance cores.

Versus the M1, the M4 has:

4.4GHz vs 3.2GHz (32% faster)
51.75 GB/s (76%) higher theoretical memory bandwidth
60% faster in a single-core Geekbench v6 test - 3810 vs 2383 points

M1 Mac Mini was introduced in November 2020. By the time the M4 gets introduced on Mac (mini) it will be 4 years. The improvements aren’t so amazing in that context and the geek bench score is, again, somewhat apples to oranges. I would love an efficient and compact M4 Mac to run HQPlayer with say ASDM7EC-super @ DSD1024 but the real world gains will likely be not what you hope.

The Geekbench score is not apples to oranges. It is a direct comparison of two processors in the same processor family using the same instruction set. You may not like what the Geekbench v6 tests but it is direct apple to apples comparison in this case. It’s not like Apple engineered the M4 to do well on the Geekbench v6 benchmark while the M1 was not.

A 60% improvement over a 3.5 year span is not insignificant.

I am not looking for ASDM7EC-super @ DSD1024…I am hoping for ASDM7EC-super @ DSD512.

1 Like

Dynamic selection has it’s own performance penalty, that’s why the AVX2 support is nowadays required and is not dynamic.

I just wonder how you can state that it is huge step, since there are no Macs with M4 available? We’ll see how much it improves in practice when it becomes available. Overall Moore’s law expectation is that performance is doubled (100% increase) every two years. So it should be four times faster than M1 to keep up with Moore’s law.

This seems rather low. Since M1Pro has 200 GB/s and M1Max has 400 GB/s… M1Ultra doubles this again to 800 GB/s. Basic M1 has 66.67 GB/s. M2 then improved this to 100 GB/s.

Remember that every time you double output sampling rate, you need about 100% more processing power. So if you can do DSD256 on M1, you need 100% more to do DSD512 and 400% more to do DSD1024.

In accordance with the suggestions of the HQP manufacturer Mac Pro rack, Apple M2 Ultra with 24-core CPU, 76-core GPU, 32‑core Neural Engine, 192GB unified memory, 2TB SSD storage should be enough…

A test has a performance penalty when initially run…how many times do you need to run the test once the code is running?

“Moore’s law” is the observation that the number of transistors in an integrated circuit doubles about every two years. Not the performance. Intel certainly has not been doubling performance every 2 years…not even in four years. Moore’s law is not in effect any more…

The base M1 is at 68.25 GB/s memory bandwidth while the base M4 is at 120 GB/s+. That is a 51.75 GB/s (76%) improvement.

How much headroom does the M1 have doing ASDM7EC-super @ DSD256? I don’t have that number. Do you? If it has a lot of headroom, we don’t need double the performance to do DSD512. I never said anything about DSD1024 which I don’t even care about…

Agreed that ADSM7EC-super @ DSD512 is a realistic goal/hope for the M4. From my experience there was some headroom at DSD256 so you don’t need a 100% improvement.

It’s not about testing for capability, but the selection of code path taken is every time you need to select the code path to be run. And that is frequent. And it is less efficient than having all the code built only for one instruction set and not having any selection at all.

I don’t remember for ASDM7EC-super, but for ECv2 it was 20% or so, but of course depends on filters you use. This refers to default filters.

I don’t have trouble running ASDM7EC-light at DSD512 on M1Max 32GB. Default filters.

My i9-14900K can do DSD1024 with ASDM7EC-super without any trouble.

Just to be sure - that’s with a GPU for filters though right? I don’t have a GPU and find this combination, i9-14900K + DSD1024 + ASDM7EC-super, barely viable.

No, I had filters on E-cores when I tested this. Also works on i9-13900T, but only with ASDM7EC-light.

1 Like

As do I. I am also doing convolution and ext3 and up to 192k source. With gauss it’s better - is that what you were using? I am guessing that’s the difference. Blocks=16 also seems to help.

I’m using the default filters:
1x = poly-sinc-gauss-long
Nx = poly-sinc-gauss-hires-lp

Certainly ext3 is much heavier case for Nx sources!

1 Like

20-30% in my experience, without DAC corrections. With corrections, I have to back off to -light to avoid occasional stutters.

1 Like

I debated on starting a new thread or continuing off of this one because of the similar arm based architecture.

@jussi_laako: Any compatibility issues with the new snapdragon elite X processors in the new surface laptop/pro. Does it have the same limitation as the apple arm based silicon with some filters being unable to decode due to instructions set not included?

I love how quiet my mac mini m1 is, but I would love to look for an alternative.

I don’t have any Windows arm64 builds yet. Although I’m planning to have in future. I will need to get some suitable hardware to test with first. So at the moment, arm64 is only supported on Linux.

Everything “works” on arm64 the same as on x64, but some things are just particularly slow and thus may be unusable due to instruction set differences.

So if you’d like arm64 based alternative for Mac Mini M1, I would look for some similar hardware with proper Linux support.

1 Like

Are people using HQPlayer from Mac Mini into their DAC? Does it support Spotify and Tidal apart from my own Flacs? Can I control it via mobile too?

You can do Spotify or Tidal through BlackHole loopback. Qobuz and HRA are natively supported streaming services. HQPlayer Client control software is available for iPad to do playback from your local library, Qobuz or HRA.

Since we are on Roon forum, Roon can be used as HQPlayer front-end. Anything you can play with Roon can be played using HQPlayer as the player/DSP engine.

Yes…

Roon Nucleus (via Ethernet) → Mac Mini (w/HQP) via ethernet→ UP gateway running NAA OS on a USB stick (via Ethernet) → Intona (via USB) → DAC → Amp → Speakers

Using Tidal via Roon (on my Ipad) as a HQ Player Front-End. Can control HQP via app on my phone or have just figured out how to use Chrome remote desktop to access my Mac Mini and tinker that way.

My Mac Mini config is M2Pro /10-Core CPU / 16-Core GPU / 16GB RAM - $1299 in the US.

Currently with the DAC correction, I’m achieving DSD 256 with ASDM7ECv3. Without Correction, I was achieving DSD 512 with ASDM7EC-light 512+fs. Prefer the sound with the DAC correction tbh,

I had no clue how to set this up and @jussi_laako and @dabassgoesboomboom were incredible in their help.

3 Likes