Announcement

Collapse
No announcement yet.

MoltenVK Continues Improving The Vulkan Experience On macOS/iOS

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    Originally posted by Marc Driftmeyer View Post
    Metal

    Render advanced 3D graphics and perform data-parallel computations using graphics processors.
    Same can be done with Vulkan.

    Originally posted by Marc Driftmeyer View Post
    Overview

    Graphics processors (GPUs) are designed to quickly render graphics and perform data-parallel calculations. Use the Metal framework when you need to communicate directly with the GPUs available on a device. Apps that render complex scenes or that perform advanced scientific calculations can use this power to achieve maximum performance. Such apps include:
    Same can be done with Vulkan:

    Originally posted by Marc Driftmeyer View Post
    [*]Games that render sophisticated 3D environments
    Yes

    Originally posted by Marc Driftmeyer View Post
    [*]Video processing apps, like Final Cut Pro
    Yes, plus Vulkan has proposed video encode/decode extensions that will help even more.

    Originally posted by Marc Driftmeyer View Post
    [*]Data-crunching apps, such as those used to perform scientific research
    Vulkan Compute can do this.

    Originally posted by Marc Driftmeyer View Post
    Metal works hand-in-hand with other frameworks that supplement its capability. Use MetalKit to simplify the task of getting your Metal content onscreen.
    Many higher-level APIs exist to wrap Vulkan.

    Originally posted by Marc Driftmeyer View Post
    Use Metal Performance Shaders to implement custom rendering functions or to take advantage of a large library of existing functions.
    Vulkan Compute again

    Originally posted by Marc Driftmeyer View Post
    Many high level Apple frameworks are built on top of Metal to take advantage of its performance, including Core Image, SpriteKit, and SceneKit. Using one of these high-level frameworks shields you from the details of GPU programming, but writing custom Metal code enables you to achieve the highest level of performance.
    Of course, because these are Apple frameworks. They don't need Metal though; they could be re-written in Vulkan.

    Originally posted by Marc Driftmeyer View Post
    Metal Performance Shaders

    Optimize graphics and compute performance with kernels that are fine-tuned for the unique characteristics of each Metal GPU family.



    Overview

    The Metal Performance Shaders framework contains a collection of highly optimized compute and graphics shaders that are designed to integrate easily and efficiently into your Metal app. These data-parallel primitives are specially tuned to take advantage of the unique hardware characteristics of each GPU family to ensure optimal performance.
    Apps adopting the Metal Performance Shaders framework achieve great performance without needing to create and maintain hand-written shaders for each GPU family. Metal Performance Shaders can be used along with your app’s existing Metal resources (such as the MTLCommandBuffer, MTLTexture, and MTLBuffer objects) and shaders.
    The Metal Performance Shaders framework supports the following functionality:
    • Apply high-performance filters to, and extract statistical and histogram data from images.
    • Implement and run neural networks for machine learning training and inference.
    • Solve systems of equations, factorize matrices and multiply matrices and vectors.
    • Accelerate ray tracing with high-performance ray-geometry intersection testing.

    Can be done through Vulkan Compute.


    See? There's no reason for Metal's existence other than vendor lock-in.

    fuck, seriously I hate this so much. Stop liking the enemy and focus on compatibility! That freaking early bird really needs Wayland like RIGHT NOW but you know IT'S NOT ready!!! So why keep liking! By liking that post, you support the enemy, which will doom your machine in a few months on the next upgrade. You need to really focus on compatibility as I do. X runs better? Well then, accept it and use X. Average Joe does not freaking spend the day figuring out why wouldn't Wayland work. Average Joe wants to play, work, and other stuff without caring about "what's X" or "what's Wayland". End of rant. Conclusion: Keep compatibility; fire the anti-compat machine out!!!
    Last edited by tildearrow; 15 September 2019, 04:15 PM.

    Comment


    • #12
      Originally posted by Marc Driftmeyer View Post

      Mac User base is over 100 million active users. The iOS user base is over 1 billion.
      What about the Windows+Linux+Android userbase? Over 5-6 billion.

      Comment


      • #13
        Originally posted by tildearrow View Post
        See? There's no reason for Metal's existence other than vendor lock-in.
        I think even Apple would struggle to argue otherwise.

        Ultimately it exists because Apple has full control over it, and they like that power. Vulkan by its nature is a collaboration between different hardware vendors, and Apple wants to be the full stack.

        To be fair, Metal came out before Vulkan was released and its always hard to just abandon a new product you just worked hard on getting out in favor of someone else's product.

        Also, it's clear from the start this is all about iOS. They don't care about Macs, and they have the necessary mindshare in mobile apps to force this on everyone, like Microsoft does on the desktop with dx12.

        Comment


        • #14
          Originally posted by smitty3268 View Post

          I think even Apple would struggle to argue otherwise.

          Ultimately it exists because Apple has full control over it, and they like that power. Vulkan by its nature is a collaboration between different hardware vendors, and Apple wants to be the full stack.
          Let's hope Apple will go almost-bankrupt at some point and begin adopting open standards to get out of their future problem.

          Originally posted by smitty3268 View Post
          To be fair, Metal came out before Vulkan was released and its always hard to just abandon a new product you just worked hard on getting out in favor of someone else's product.
          And that's the problem here. Vulkan was too late (early 2016) to the party.

          Originally posted by smitty3268 View Post
          Also, it's clear from the start this is all about iOS. They don't care about Macs, and they have the necessary mindshare in mobile apps to force this on everyone, like Microsoft does on the desktop with dx12.
          I wonder what will happen to their Mac userbase...

          Comment


          • #15
            Originally posted by Marc Driftmeyer View Post
            Mac User base is over 100 million active users. The iOS user base is over 1 billion.
            The iOS user base is shrinking, and a large chunk of the Mac user base isn't compatible with Metal.

            Comment


            • #16
              Originally posted by tildearrow View Post
              Let's hope Apple will go almost-bankrupt at some point and begin adopting open standards to get out of their future problem.
              Let's hope Apple continues to not give a shit what random people think who do not use their products and never will. It's working pretty well so far.

              Comment


              • #17
                Phoronix Forums: A daily reminder that opinions are like assholes... everyone has one and they all stink.

                Comment


                • #18
                  Originally posted by kgonzales View Post

                  Let's hope Apple continues to not give a shit what random people think who do not use their products and never will. It's working pretty well so far.
                  I actually have used Apple products in the past, and already had bad experiences with it.

                  Comment


                  • #19
                    Metal works pretty well.

                    When trying to play WoW Classic recently (last night) on my MBP 2014 with Iris 5100 graphics, Wine and DXVK straight up don't work out-the-box on Fedora 30 (WoW starts, but renders a black screen/nothing but a mouse pointer). If I use a Copr with git Mesa, WoW with DXVK launches and renders fine, but the FPS is incredibly low (at or below 20) even at lowest settings at 33% rendering (from 2560x1600). It runs a little faster without DXVK, but in either case, it's basically unplayable with the integrated Intel GPU.

                    Meanwhile on macOS with Metal, I get a decent 50-60 FPS with a mix of low/high settings at 50% rendering on the Intel GPU; decently playable.

                    Comment

                    Working...
                    X