7 ms·
This is the advantage of building your hardware and your software under the same roof. You can make optimizations (such as not including hardware that makes Ope
by zlsa 5y ago
This is the advantage of building your hardware and your software under the same roof. You can make optimizations (such as not including hardware that makes OpenGL faster, but doesn't impact Metal nearly as much.) The "standard" here is the Metal API, not the GPU hardware.
- shmerl 5y agoI don't think it's an advantage to sabotage the adoption of common API like Vulkan. It holds the progress back and I totally blame Apple for pointless NIH and lack of collaboration here. Apple are doing it out of rather sickening lock-in culture in the company and Metal is far from the only example like that.
- spacedcowboy 5y agoApple are doing it because there’s no benefit to them in doing it the way that you want them to. Apple Pay the piper, and Apple call the tune. Whether you like it or not is immaterial.
- Apocryphon 5y agoApple has every right to do that as they control their stack. And people who favor FOSS projects have every right to criticize Apple for exercising their control in a way that adversely impacts FOSS.
- macintux 5y agoSure, but comments like this attribute hostility instead of simple practicality. > ...pointless NIH and lack of collaboration here. > Apple are doing it out of rather sickening lock-in culture in the company and Metal is far from the only example like that.
- shmerl 5y agoI find such lock-in to be hostile and not something to be excused with practicality. It's like saying ActiveX is practical, don't blame you know who for not supporting HTML, or something the like.
- Apocryphon 5y agoOn the flip side, comments like > no benefit to them in doing it the way that you want them to. portray Apple almost as a helpless besieged small business that should be shielded from critique of its decisions. Whereas they are an industry titan, and people should criticize them as they see fit, even if others don't find merit in the criticisms. > Whether you like it or not is immaterial is a completely true, and utterly banal statement, as it can be applied to any opinion made in conversation. No one here has any power over Apple, but we do have the power to free discussion, do we not?
- shmerl 5y agoThey sure think lock-in is a big benefit for them, that's part of their corporate culture that I was talking about. I'm just saying that it's nasty, bad for progress and it's the wrong way to do things.
- pjmlp 5y agoI3DRender render = Engine::GetRender("render-name"); render->DrawMesh(scene); So hard, I can't believe how I can manage.
- cromwellian 5y agoThere is a benefit to them, but they're myopic about it. The fact that we had OpenGL and DirectX as a standard meant that a vibrant 3d accelerator market opened up, they made immense advancements since the late 90s. Apple benefitted tremendously from being able to just pick up 2 decades of R&D into GPUs that existed because consumers had a competitive choice. If software had been locked into a single GPU, say a 3dfx Voodoo1, and all software was targeted at a proprietary API and design, how much advancement would have been lost? Apple didn't even design their own GPU, the IP behind it is largely PowerVR, again, arising from a company trying to compete against ATI, NVidia, 3dfx, Matrox, etc who were running in a bandwidth wall, by taking a big risk with a tile based deferred renderer. Now look at what is being competed on now? Ray intersection hardware. This is happening because of Raytracing extensions to DirectX and OpenGL. Otherwise you end up with a game console, and while game consoles can leverage their HW maximally, they don't produce necessarily top end HW innovation and performance.
- marcan_42 5y agoThey aren't "sabotaging" anything, they are making a perfectly normal design trade-off to implement some features in shaders instead of as fixed-function hardware. By your definition, every modern GPU built in the last decade is "sabotaging" OpenGL 1.x support, because fixed-function vertex and pixel processing hasn't been a thing in that long and it's all done in shaders now, even if you use the legacy APIs. Alyssa clearly explained how avoiding fixed-function hardware means they can cram more shaders in which means they can increase performance; we have no idea, at this stage, whether this ends up being a net gain or a net loss for, say a Vulkan app. And we probably never will, because we don't have an "AGX-but-it-has-this-stuff-and-fewer-shader-cores-in-the-same-silicon-area" to compare with. And it doesn't matter. In the end OpenGL and Vulkan apps will run fine. If we ever end up with empirical evidence that these design choices significantly hurt real-world OpenGL and Vulkan workloads in ways which cannot be worked around, you can start complaining about Apple. Until then, there is absolutely no indication that this will be a problem, never mind zero evidence for your conspiracy theory that it was a deliberate attempt by Apple to sabotage other APIs.
- shmerl 5y agoI'll agree with you when they'll support Vulkan properly. Until then I see them as a hostile entity to common GPU APIs adoption.
- marcan_42 5y agoYou're talking about macOS. We're talking about AGX2. If you want to complain about Apple's API support in macOS, a discussion about AGX2 support for Linux is not the right venue. I am, quite honestly, getting very tired of all the off-topic gratuitous Apple bashing in articles about our Linux porting project.
- BolandJ 5y agoShmerl pops up on every thread mentioning Vulkan/Apple spouting conspiracy theory nonsense that every design decision is some kind of evil plan to screw over open standards. Ignore him. Keep up the great work, plenty of people really appreciate it.
- Jasper_ 5y agoThe fixed-function hardware that Alyssa assumed existed (vertex attribute fetch, special uniform buffer hardware) doesn't exist on many GPUs outside of mobile. In fact, Vulkan was designed to be a closer match for these GPUs, by making many of the same tradeoffs that Metal did. If they wanted to sabotage Vulkan, choosing the same tradeoffs as it and following the same path as most other GPU vendors doesn't seem like a very effective way to do it.
- Const-me 5y ago> Apple are doing it out of rather sickening lock-in culture in the company and Metal is far from the only example like that. I don’t disagree, but what else they could possibly do? Metal shipped in 2014 for iOS, in 2015 for OSX. Vulkan 1.0 was released in 2016. I don’t think it was reasonable to postpone long overdue next gen GPU API for a few years, waiting for some consortium (outside of their control) to come up with API specs. By the time Vulkan 1.0 has released, people were using Metal for couple years already.