Live data from Hacker News

The first conformant M1 GPU driver

rosenzweig.io

661–670 of 699 posts

Re: The first conformant M1 GPU driver

#661
post #468

Earlier quoted context omitted.

> I mean, on one hand, the Metal/Vulkan/OpenGL situation is unfortunate and I don't understand Apple's motivation there. OpenGL is a dead end - while vendors (including Apple) still support their respective GL stacks, there is not really active investment anymore either in those stacks or in the standards. Metal came out years before Vulkan, and Apple has tight integration between the graphics API and their underlyin…

"Years" is overstating it a bit; Vulkan's SDK came out a little more than a year and a half after Metal was available on iOS and 8 months after it was available on Macs.

Ahh you're right, I thought it was 2017 for the Vulkan 1.0 release.

My understanding is still that Metal was released on iOS months before AMD's Mantle API was accepted as the start of Vulkan work.

Re: The first conformant M1 GPU driver

#662
post #656
post #635

Earlier quoted context omitted.

Nonsense. Feature-wise, they are mostly equivalent (Metal has better support for GPU driven pipelines and shader authoring). Metal is much simpler and more flexible. The only way Vulkan is "better" if you measure lines of codes.

Vulkan is surely more flexible. One example off the top of my head is mailbox presentation mode in Vulkan for minimal input delay without tearing.

Metal allows you to present surfaces at exact times. You have access to the display refresh timing information and it's your job to synchronise your drawing rate to (potentially variable) display presentation interval. Vulkan presentation modes are workarounds over the fact that Vulkan provides no fine-grained control over presentation intervals.

There is the VK_GOOGLE_display_timing extension that provides functionality similar to Metal, but it doesn't seem like it's well supported on desktop. The equivalent official extension seems to be stuck in limbo somewhere.

Re: The first conformant M1 GPU driver

#663
post #42

For clarity, this isn't the first conformant linux drivers. Apple themselves are not conformant to OpenGL® ES 3.1. So this is literally the first conformant OpenGL ES 3.1 drivers for M-Series, for any operating system (Apple or Non-Apple). Hence why the call to action to donate to the team. https://asahilinux.org/support/

The Github link there goes to marcan, who leads Asahi, but I want to primarily support this driver development. Is that an option? If so, where do I do that? If not, I'll just use this later today.

Asahi Lina is marcan’s alter ego that works solely on the graphics driver development.

Re: The first conformant M1 GPU driver

#664
post #621

Earlier quoted context omitted.

I’m sure they appreciate the work but Apple has internal documentation on their chips. It’s not like they make a black box and forget how they designed them when it comes to writing software for them.

The article claims that Apple's compiler doesn't use the instruction, so it seems like the compiler author did indeed forget or never learn about it.

Or maybe it has some limitations they realized and blacklisted the instruction?

Re: The first conformant M1 GPU driver

#665

Earlier quoted context omitted.

From what I've seen people post here, I can totally get that they don't like HN people. It's sad, because HN is how I found out about these people and their amazing skills, but I would've done the same thing in their place. Many people, especially in the LGBTQ+ community, hate being featured on here. Some have asked the admin not to be linked but the HN doesn't blacklist websites. There's a flood of negativity from t…

Granted, I'm just massively struggling with the idea of excluding a whole radically diverse community (with some of the most civilized and self-moderating discourse on the internet) in the name of inclusiveness. To me, it's as ironic as it gets. On that end, I can't find any fault on HN's end enabling their 99.99% of their interested readers who didn't do any wrong to be included in the discourse around these ideas,…

And they are also free to (try to) restrict who has access to their site, so everyone is happy?

Re: The first conformant M1 GPU driver

#666
post #662
post #656

Earlier quoted context omitted.

Vulkan is surely more flexible. One example off the top of my head is mailbox presentation mode in Vulkan for minimal input delay without tearing.

Metal allows you to present surfaces at exact times. You have access to the display refresh timing information and it's your job to synchronise your drawing rate to (potentially variable) display presentation interval. Vulkan presentation modes are workarounds over the fact that Vulkan provides no fine-grained control over presentation intervals. There is the VK_GOOGLE_display_timing extension that provides functiona…

Sounds really fine-grained, but does this mean I have to invent my own "mailbox" every time I want "unlimited refresh rate with minimal input lag, but without tearing"?

Re: The first conformant M1 GPU driver

#667

Earlier quoted context omitted.

From what I've seen people post here, I can totally get that they don't like HN people. It's sad, because HN is how I found out about these people and their amazing skills, but I would've done the same thing in their place. Many people, especially in the LGBTQ+ community, hate being featured on here. Some have asked the admin not to be linked but the HN doesn't blacklist websites. There's a flood of negativity from t…

Granted, I'm just massively struggling with the idea of excluding a whole radically diverse community (with some of the most civilized and self-moderating discourse on the internet) in the name of inclusiveness. To me, it's as ironic as it gets. On that end, I can't find any fault on HN's end enabling their 99.99% of their interested readers who didn't do any wrong to be included in the discourse around these ideas,…

> the idea of excluding a whole radically diverse community (with some of the most civilized and self-moderating discourse on the internet) in the name of inclusiveness. To me, it's as ironic as it gets.

Not really more ironic than almost every non-trivial societal discussion, à la "if you want peace prepare for war". Anything non-trivial is multifaceted, and anybody who has an absolute opinion is probably missing most of the argument.

Very quickly for this specific case: one can easily argue that excluding people is hardly inclusive, but one can also easily argue that a niche community with its own subculture _needs_ some sheltering from the rest of the world, or the subculture gets lost very quickly (so the sheltering is good for diversity in that it preserves the existence of the subculture).

(I'm not pretending to present a fully-fledged argument here, just a taster to challenge absolute opinions, entire books could be written on this and probably have)

Re: The first conformant M1 GPU driver

#668
post #569

Earlier quoted context omitted.

> Right now Nvidia is just crushing it and there's zero chance anyone is going to catch up by introducing new Infiniband ASICs. I mean, Cornelis Networks is trying with the resurrected OmniPath. I hope they pull it off, but I'm not holding my breath. See: https://www.cornelisnetworks.com/products/

It's not going to work because they are too late. HPC cluster builds are complex enough due to the presence of multiple networks (2x moderate-scale infiniband chassis and 2x ethernet chassis as a minimum) without introducing unknown vendors. At that point, if you're doing IB, why not just go Mellanox since you will almost certainly buy 200GE Connectix NICs and not the 100G NICs from these guys. UEC will - like most s…

Idk, I personally did it for a HPC cluster two years ago. 2x100GbE + OmniPath was a sensible way to reduce cost, especially as the cluster was very light on GPU power and mostly focussed on CPU-bound jobs. Last I heard everyone there is still very happy with what we built.

Re: The first conformant M1 GPU driver

#669

Earlier quoted context omitted.

I agree with you completely and yet it's practically impossible finding a worthwhile alternative. I've tried finding alternatives on my last upgrade cycle and it's like having to live with endless amounts of compromises just to get away from Apple. For the iPhone, I tried looking at the Pixel for the Vanilla Android experience and long support, yet it seems like people are fighting battery life issues all the time. N…

I still don't understand why people think in 2023 that Android can not be a viable alternative to an iPhone. I would never use an iPhone for certain software and UX related issues (biggest is the missing back gesture/button). My Pixel does better photos than ANY iPhone on the market. Macbook Air M1, just look at Dell XPS series. Samsung S9 tablets have an OLED display. OLED... you don't get that on any iPad. Apple Wa…

If you care about privacy, then the only choice within the Android-sphere is GrapheneOS, which limits you to pixels, which arguably are not on the same level in hardware than iphones.

Re: The first conformant M1 GPU driver

#670
post #555

Earlier quoted context omitted.

While not at the kernel level I think WebGPU is probably better than something like Vulkan for that "I can target this low level access to the GPU resources but expect it to work everywhere" use case. Ignoring the name hint that it was designed for the web (it works fine outside the browser), it's a lot more portable than Vulkan across its various implementations precisely because it needed to work on various devices…

Out of idle curiosity I thought I'd give it a try. Maybe run a demo on the REPL in Clojure. I try to Google "Java WebGPU" and I get no real results I could be wrong but It seems it's technically possible to use it outside the web, but the ecosystem looks halfbaked

WebGPU, unsurprisingly, is much better supported by the web ecosystem right now (just like WASM in the beginning), so you'd have better luck trying to use ClojureScript (as then you can just use the JS interop) for playing around with it. https://codelabs.developers.google.com/your-first-webgpu-app would be easy to get started with and translated to ClojureScript cleanly without issues.

Also, keep in mind that WebGPU only been around since 2021, and wasn't actually enabled in Chrome until this (2023) spring, so it's relatively new tech, not surprising that the ecosystem still feels halfbaked.

Post reply on HN