Slashdot Mirror


Khronos Group Announces Vulkan To Compete Against DirectX 12

Phopojijo writes The Khronos Group has announced the Vulkan API for compute and graphics. Its goal is to compete against DirectX 12. It has some interesting features, such as queuing to multiple GPUs and an LLVM-based bytecode for its shading language to remove the need for a compiler from the graphics drivers. Also, the API allows graphics card vendors to support Vulkan with drivers back to Windows XP "and beyond."

14 of 91 comments (clear)

  1. let me guess, ideal hardware found indicator by ihtoit · · Score: 3, Funny

    a Tribble purr?

    --
    Political debates have me rolling my eyes so much I think I got optical whiplash. I should sue. - Foamy The Squirrel
  2. Boy you know you're old by 50000BTU_barbecue · · Score: 2, Funny

    when the only words in that headline you know are "group announces" and "compete against"...

    --
    Mostly random stuff.
    1. Re:Boy you know you're old by MrL0G1C · · Score: 3, Informative

      DirectX 12 isn't out yet and appears to be a Windows 10 only thing. Quick check shows windows 7 has DX11. I'm assuming you know what DirectX is ;-)

      Source:
      http://www.anandtech.com/show/...

      --
      Waterfox - a Firefox fork with legacy extension support, security updates and better privacy by default.
    2. Re:Boy you know you're old by Cederic · · Score: 2

      That and your clear disdain for self-education using the bountiful resources of the internets.

    3. Re:Boy you know you're old by khellendros1984 · · Score: 2

      Khronos Group is a consortium that creates open graphics and media standards. As an example, it's the current developer of OpenGL, which is one of the two main 3D graphics APIs. Vulkan is being designed as a next-generation replacement for OpenGL and OpenGL ES (the mobile device version of OpenGL). Part of its purpose is to unify the two APIs.

      DirectX is a collection of APIs by Microsoft, which provide functions that are useful for graphics and audio applications (especially games) on Windows and in other Microsoft products.

      OpenGL has been around since about 1992, and DirectX since about 1995. Your age probably isn't a factor here. More likely, you haven't had a remote interest in graphics programming in the last two decades and also haven't had close exposure to computer games, CAD, or other graphics-heavy applications within that time period.

      --
      It is pitch black. You are likely to be eaten by a grue.
  3. Uh, what? by TheRaven64 · · Score: 2

    an LLVM-based bytecode for its shading language to remove the need for a compiler from the graphics drivers

    This removes the need for a shader language parser in the graphics driver. It still needs a compiler, unless you think the GPU is going to natively execute the bytecode. If you remove the compiler from a modern GPU driver, then there's very little left...

    --
    I am TheRaven on Soylent News
    1. Re:Uh, what? by Megol · · Score: 2

      Exactly... While removing the parsing and some types of optimizations (common subexpression elimination etc.) helps somewhat there still needs to be optimizers and code generators in the driver. One just have to remember that GPU architectures vary greatly from explicitly scheduled VLIW to partially out of order execution throughput designs to realize that the code generator alone can be pretty complex. :)

      I hope Vulkan will support pre-compiled and cached shaders. That could make a huge difference for some tasks.

    2. Re:Uh, what? by TheRaven64 · · Score: 2, Insightful

      This post needs a '-1 not even wrong' moderation. I started to write a reply to your points, but I honestly can't tell if you're trolling or completely fail to understand any of the parts of the hardware and software stacks involved.

      --
      I am TheRaven on Soylent News
    3. Re:Uh, what? by Kjella · · Score: 2

      So the new spec removes the compiler front end from the graphics driver, greatly improving performance. Only the compiler back end is present in the graphics driver.

      Not if you're talking game performance rather than compiler performance I think. From what I understand games generally compile their shaders to native instructions long before they're used, it's not just-in-time compilation like when you download javascript on a page and do it on the fly as you execute, more like delayed traditional compilation until you can optimize for this particular hardware like Gentoo ebuilds.

      However, the IR instructions is probably much simpler than the source language, for example Java has tons of classes but only ~200 opcodes. It would make graphics drivers not quite, but a lot more like CPUs running "assembler-ish" code instead of being huge graphics libraries. Basically you're moving most of what's OpenGL/DirectX today over into the application. Stallman might not approve but it might mean more AAA games being able to run on a thin OpenGL Vulkan shim than Mesa.

      --
      Live today, because you never know what tomorrow brings
  4. OpenGL? by MrL0G1C · · Score: 5, Informative

    OK so I decided to break with protocol and RTFA. Vulkan is what the makers see as being the next generation of OpenGL and it is backed by Valve for obvious reasons. It is aimed at a wider range of device types.

    --
    Waterfox - a Firefox fork with legacy extension support, security updates and better privacy by default.
    1. Re:OpenGL? by Megol · · Score: 3, Informative

      And AMD, Nvidia, Intel, Samsung, EA, Apple, ...

    2. Re:OpenGL? by Dishwasha · · Score: 2

      It is aimed at a wider range of device types.

      Thank god. It's about time my ThinkGeek USB hotplate be accelerated with voxel heating.

    3. Re:OpenGL? by Kjella · · Score: 3, Interesting

      They've come full circle:
      1. AMD announces Mantle, a low level graphics API which may give consoles an edge over the PC.
      2. Microsoft panics and announces DirectX 12, aiming for pretty much the same thing.
      3. Khronos Group panics and announces OpenGL Vulcan, aiming for pretty much the same thing.
      4. AMD announces there'll be no public SDK of Mantle, use OpenGL/DirectX.

      So in the end we'll probably have feature parity again. How important it is remains to be seen, outside of drawcall benchmarks it's unclear how much real world difference it makes, what is certain is that it exposes a lot more of the complexity to the developer. That of course gives you more room to optimize, but it remains to be seen how many will be able to take advantage of it.

      On the bright side, it might actually mean there's less code that needs to be written and that open source might catch up a bit, it says it'll run on top of all platforms that support OpenGL ES 3.1 which might become a much bigger goal than OpenGL 4.x.

      --
      Live today, because you never know what tomorrow brings
  5. Re:PowerVR?!??!? by 91degrees · · Score: 2

    Does this do tile-based rendering?

    I presume you intended this as a joke, but from the OpenGL/Vulkan comparison table in the overview: "Matches architecture of modern platforms including mobile platforms with unified memory, tiled rendering"

    On that point - I'm not all that sure exactly what it does to support tiling. The PowerVR blog says "A render pass consists of framebuffer state (other than actual render target addresses), and how render targets should be loaded in and out of the GPU at the start and end of each render. This structure is the key object that allows tiled architectures like PowerVR to run at extremely high efficiency." but that it's not really all that clear to me how this makes a difference.