Slashdot Mirror


Khronos Group Announces Release of Vulkan 1.0 (phoronix.com)

An anonymous reader writes: Vulkan 1.0 was released this morning as a surprise for those looking towards a high-performance, cross-platform (everyone but Apple) API. In a lengthy overview of Vulkan 1.0, the stage is set for making Vulkan what it's been talked up to be, but it's not there yet for end-users to fully enjoy: NVIDIA has conformant drivers out for major platforms, AMD doesn't have any conformant driver yet, and Intel only has a conformant Linux driver. The lone launch title for Vulkan 1.0 is Talos Principle, but don't expect it to perform better than the OpenGL port at this time. While it's easy for many game developers to port to Vulkan, it will require significant investment to make the engines really much faster than their OpenGL/DirectX11-geared code-bases while new games should be much better from the start when designed around this lower-level API. The spec will be available at Khronos.org and the Vulkan SDK is available from LunarG.com.

39 of 77 comments (clear)

  1. OpenGL is dead. Long live OpenGL! by jfbilodeau · · Score: 3, Insightful

    As a developer working with OpenGL, I think that Vulcan is what OpenGL 3/4 should have been.

    --
    Goodbye Slashdot. You've changed.
    1. Re:OpenGL is dead. Long live OpenGL! by sbaker · · Score: 3, Interesting

      Well, kinda. For those who have to write extremely high performance graphics code and need to work close to the bare metal - Vulkan is the answer. For those who need not much more than a spinning cube - OpenGL/GLES/WebGL are still the answer. Actually, even for a lot of people who need high performance graphics code - they may well be working with middleware that uses Vulkan rather than with Vulkan itself.

      --
      www.sjbaker.org
    2. Re:OpenGL is dead. Long live OpenGL! by jfbilodeau · · Score: 1

      If you just care about a spinning cube, then OpenGL or Direct 3D is not the answer. Use a 3D framework that manages your mesh for you. There are plenty out there.

      --
      Goodbye Slashdot. You've changed.
    3. Re:OpenGL is dead. Long live OpenGL! by GuB-42 · · Score: 1

      I suggest GLUT. Not only you can draw a spinning cube but you also can just as easily draw a spinning teapot.

    4. Re:OpenGL is dead. Long live OpenGL! by jfbilodeau · · Score: 1

      But does GLUT support Vulcan? And if so, should it be call GLUTan? ;)

      --
      Goodbye Slashdot. You've changed.
    5. Re:OpenGL is dead. Long live OpenGL! by sbaker · · Score: 1

      OK - not *literally* a spinning cube...but anything that's not super-performance critical - or anything that runs easily at a decent frame rate without heavy software effort...should stick with OpenGL.

      --
      www.sjbaker.org
  2. Re:Who? What? Huh? by Lord+Crc · · Score: 5, Informative

    Khronos Group is responsible for the OpenGL and OpenCL standards.

    They've had a lot of internal fighting over the future of OpenGL for many years. Real-time 3d engine developers (ie games) wanted to remove a lot of cruft and expose the hardware more, while CAD and other groups were happy with how things were. For years nothing much happened. This is the same fight which made OpenGL 2 so delayed.

    Then AMD released their proprietary Mantle API a few years ago, which amongst other things was much lower level than OpenGL or DirectX at the time, allowing 3d engine developers to extract much more from the hardware.

    AMD offered Mantle to Khronos which picked it up, polished it and named it Vulkan.

    Now CAD folks can keep their OpenGL, while real-time 3d folks can enjoy extracting the maximum from the hardware with Vulkan.

    At least that's how I remember it.

  3. Intel already has Open Source Support by CajunArson · · Score: 4, Interesting

    Intel has already published open source Vulkan support in a new Mesa branch: https://cgit.freedesktop.org/m...

    Nvidia also has Linux Vulkan support in its newest beta driver.

    AMD... uh... has a beta driver for Windows. Not even an announcement of Linux support. Yeah, so much for AMD having an insurmountable lead or anything.

    --
    AntiFA: An abbreviation for Anti First Amendment.
    1. Re:Intel already has Open Source Support by serviscope_minor · · Score: 1

      AMD... uh... has a beta driver for Windows. Not even an announcement of Linux support. Yeah, so much for AMD having an insurmountable lead or anything.

      Isn't Vulkan just a standardised version of Mantle, which AMD does have drivers for?

      --
      SJW n. One who posts facts.
    2. Re:Intel already has Open Source Support by CajunArson · · Score: 4, Interesting

      It's true that Vulkan inherits some things from Mantle (mostly using separate command buffers without global state and dropping the old-school OpenGL graphics context). However, there are also major differences from Mantle including the use of GLSL instead of HLSL (Microsoft's shader langauge) and the SPIR-V intermediate layer is a major part of Vulkan that literally has no equivalent in Mantle.

      On top of all that: Mantle only ever existed as a beta-quality driver for Windows. Despite some talk about cross-platform, it never ran under anything other than Windows, and even AMD's new graphics cards like the R9-Fury run *worse* on the old Mantle driver than they do under DX11.

      --
      AntiFA: An abbreviation for Anti First Amendment.
    3. Re:Intel already has Open Source Support by serviscope_minor · · Score: 1

      Oh dear, that's really rather AMD isn't it? :(

      --
      SJW n. One who posts facts.
    4. Re:Intel already has Open Source Support by Bengie · · Score: 2

      Vulkan is mostly a super-set of Mantle. The early versions of Vulkan had nearly all of its APIs named stuff like "MethodA_Mantle", and if you went to the Mantle documentation, there was a method called "MethodA" with the exact same signature.

    5. Re:Intel already has Open Source Support by Carewolf · · Score: 1

      AMD... uh... has a beta driver for Windows. Not even an announcement of Linux support. Yeah, so much for AMD having an insurmountable lead or anything.

      Isn't Vulkan just a standardised version of Mantle, which AMD does have drivers for?

      Yes, but not on Linux. They have been pushing a lot of big updates to the Linux driver recently, and they probably need those for the driver.

    6. Re:Intel already has Open Source Support by Fragnet · · Score: 1

      I don't see why AMD drivers won't be up to snuff when it comes to Vulkan. It's a superset of Mantle for starters and it's a lot simpler to implement at a driver level than complex APIs like OpenGL.

      Btw I never had any problem with my AMD drivers on Windows!

  4. Re:It's not always necessary to invent new words by kbonin · · Score: 4, Insightful

    I feel that performant embiggens our language...

  5. Hard to develop, though by jones_supa · · Score: 1

    Vulkan gives the programmer more control over the graphics pipeline, but the downside is that there is even more work to do than in OpenGL or DirectX, which already are extremely difficult APIs. Well, I guess smaller studios can always use a game engine or graphics engine as a higher level basis, and then big engineering teams can make engines ground up around Vulkan.

    1. Re:Hard to develop, though by Xest · · Score: 3, Insightful

      Isn't that the case anyway? 99% of games that come out nowadays seem to be based on things like Unreal, Unity, or the big publishers own in house engines like Frostbite.

      The amount of people actually doing low level stuff seems to have diminished rapidly over the last decade as engines have become more flexible and it's really just turned into a battle over who has the best toolset and content pipeline now.

      So even the big engineering teams don't seem to be expending much effort into engine development - publishers like Ubisoft and EA seem to have many tens of development teams and yet only seem to be using a few different engines across all those teams - certainly the days of every team building their game up from scratch engine and all are long long gone.

    2. Re:Hard to develop, though by Anonymous Coward · · Score: 1

      It's called the "smartest cow syndrome". You only need one cow to open a gate to let the others out of a field. In industry, this means you only need one experienced developer to write a new rendering subsystem or API (character animation, terrain rendering, particle systems, urban environments), then the rest of the industry uses that API. Everyone else who prefers to work on design gets driven out and then move into other frontiers (mobile, data visualization).

      It's a bit like urban development. Being a crofter growing your food and animals and running a farm shop is one way of making a living, but then the urban sprawl starts to surround you. Eventually, the tract home, condo and shopping mall developers move in, and you find yourself in a small corner of a subdivision.

    3. Re:Hard to develop, though by tlhIngan · · Score: 2

      Isn't that the case anyway? 99% of games that come out nowadays seem to be based on things like Unreal, Unity, or the big publishers own in house engines like Frostbite.

      The amount of people actually doing low level stuff seems to have diminished rapidly over the last decade as engines have become more flexible and it's really just turned into a battle over who has the best toolset and content pipeline now.

      So even the big engineering teams don't seem to be expending much effort into engine development - publishers like Ubisoft and EA seem to have many tens of development teams and yet only seem to be using a few different engines across all those teams - certainly the days of every team building their game up from scratch engine and all are long long gone.

      Well, using an engine means you get a lot of stuff out of it - firstly, not having to worry about the low-level underlying technologies. Your artists shouldn't need to worry about whether it's OpenGL or DirectX or Metal or Vulkan - that stuff should be abstracted away from them and the toolset should take care of it. Likewise, your modellers don't really care either.

      Most of the game is really in asset generation - the textures, models, sounds, music, videos, artwork, scripts, etc.

      And using a prebuilt engine has other benefits - porting gets to be much simpler - use Unity and you get iOS, Android, PC, Mac, PS3/PS4, Xbox360/Xbone and other platforms with it. Sure you have to do some work, but most of the hard part has been done for you.

      Heck, modern engines can even enable/disable features as necessary - if you have DirectX 12 supported video, it will use those enhanced features, else it will downgrade to DirectX 11 or other API with lowered quality.

  6. Re:It's not always necessary to invent new words by Anonymous Coward · · Score: 1

    Neither "conformant" or "performant" are made up words, nor are they new words.

    I think you might actually be stupid. Go get yourself checked out, buddy.

  7. Re:No drivers from AMD, really? by Anonymous Coward · · Score: 2, Informative

    > It's nVidia that has no drivers actually

    What? https://developer.nvidia.com/vulkan-driver

  8. "Everyone but Apple" by Anonymous Coward · · Score: 1

    That is kind of evil. Apple was all about standards like OpenGL back when they were at risk of being destroyed by whitebox PCs, but now that they are a big dog, they want to use their weight for vendor lock-in and trying to drive a wedge into the ecosystem. They will force developers to use Metal on their platforms.

    So we had a chance to finally have a single, NON-vendor-controlled graphics API, that all game engines could concentrate on and applications could write to, and the tool ecosystem could get on board with. Instead, it will be fractured, there will be less portability, and things will be harder for smaller software shops with more testing required if they want cross platform.

    Way to go, Apple. Standards were good enough for you when you needed them.

    1. Re:"Everyone but Apple" by Anonymous Coward · · Score: 2, Insightful

      MP4 vs. MP3 is really a dumb complaint. MP4 is MPEG 4, audio, video, all of it. MP3 is MPEG 1 Layer 3 Audio only. Apple just started using the new stuff first.

      Firewire vs. USB is also a dumb complaint. Firewire was meant as a hot-swappable, modernized version of SCSI. USB was made as a hot-swappable, modernized version of Apple Desktop Bus. They simply don't even compete with one another. Sure, they're both serial data busses, but they weren't made to handle the same types of scenarios. They weren't even on the same plane of existence until some dipshit decided to put a disk drive on an input peripheral bus. The morons flocked to it and the rest is history. (And so, for the most part, is Firewire.)

      Fairplay was the RIAA's baby. Apple killed it ASAP.

      NuBus was an alternate to PCI, and they were both introduced at about the same time. PCI won.

      But your point stands for the rest of them.

  9. Re:Who? What? Huh? by Anubis+IV · · Score: 3, Informative

    More or less, the group responsible for OpenGL (Khronos) has announced the release of their graphics API (Vulkan) that competes more directly with modern graphics APIs such as Microsoft's DirectX 12 and Apple's Metal.

    Previously, OpenGL and DirectX (11 and earlier) provided very high-level APIs with decades of legacy cruft attached that bogged things down. Developers of graphics-intensive applications (e.g. games, VR, etc.) have been clamoring for lower-level APIs that allow them to circumvent the cruft by giving them more direct access to the hardware, since the hardware is capable of much more than what those high-level APIs were allowing. AMD's Mantle, Apple's Metal, and Microsoft's DirectX 12 were APIs in that vein, all of which were released last year. For various reasons, AMD donated Mantle to Khronos last year. After a bit of refinement and retuning so that it could operate in a cross-platform capacity (rather than being restricted to AMD hardware) Khronos has released Mantle today under its new name of Vulkan.

    The reason this is big news is because it's the last of the major graphics APIs we're expecting to see released this generation. Vulkan is effectively serving as the successor to OpenGL, and it'll likely soon become the go-to graphics API for Linux app development, displacing OpenGL. The release of Vulkan allows Linux graphics to stay competitive in terms of performance with Windows and OS X. Without Vulkan, Linux apps would be stuck with OpenGL, which is quickly falling behind the modern APIs.

  10. Re:Who? What? Huh? by pjt33 · · Score: 3, Insightful

    The point of summaries is to summarise. If you have to read the article in order to understand the summary, then why not eliminate the summary entirely?

  11. vet your sources /. by Thud457 · · Score: 2

    PHAH.
    Like I'm going to blindly click some bogus link from some place calling themselves "phoronix".
    Give us a link to the story from some source of reputable technical reporting, like Forbes.

    --

    the preceding comment is my own and in no way reflects the opinion of the Joint Chiefs of Staff

  12. Re:It's not always necessary to invent new words by JustAnotherOldGuy · · Score: 1

    Neither "conformant" or "performant" are made up words, nor are they new words.

    Actually, "conformant" is a word. It's not a word I like or would normally ever use, but yeah, it's a word.

    The etymology of "performant" seems a little less clear, but I'll allow it.

    --
    Just cruising through this digital world at 33 1/3 rpm...
  13. Re:Who? What? Huh? by JustAnotherOldGuy · · Score: 1

    If you had clicked the link, the very first major heading is, "What Is Vulkan 1.0".

    Lol, where's the sport in that??

    --
    Just cruising through this digital world at 33 1/3 rpm...
  14. Re:Obigatory XKCD by Anonymous Coward · · Score: 1

    Absolutely irrelevant xkcd. Vulkan isn't a competing standard. Vulkan is a mirror to Direct X, which, as you may have fucking noticed, is not available outside of goddamned Windows. Pretend there was no USB, but there was Lightning, and Androids all had a giant power cable hookup and a massive serial port on the back and you had to configure your RS232 port on your computer to transfer data- would you need USB in that world? Well we sure as fuck need Vulkan.

  15. Re:Who? What? Huh? by Anonymous Coward · · Score: 1

    AMD developed Mantle. Saw it was good. The Khronos Group though it could be better. They start working on Vulkan and looking hard at how it can satisfy and unify all the major platforms. A couple years later Microsoft catches wind that Vulkan is capable of huge performance improvements. The DX12 initiative is launched. Since Microsoft wants to be first to market and need only support a single platform, they are able to beat Vulkan to market. Now DX12 has received some notoriety and even helping to needlessly push people to Win 10.

    Most are expecting Vulkan to perform better or equal to DX12. In this line, the phrasing of OP is a bit off. Performance of GAMES is unlikely to be much improved however the Vulkan API is considerably faster than OpenGL and DX11. Plus, Vulkan dramatically improves concurrency throughput, making it near linear up to GPU and memory bandwidth capabilities.

    For those who don't know, Vulkan also allows for multiple GPUs, and the CPU as a virtual GPU, which means programmers can maximize concurrent dispatch and rendering jobs based on which is best for a given task. That said, this capability considerably complicates detection and allocation up front, but it opens the door wide for extremely powerful and interesting compute distribution.

    Interesting footnote to your comment is that Apple more or less saved OpenGL. It likely would not exist today if not for their continued support after Microsoft started bribing companies to drop OpenGL. Which makes it even more sad that Apple is dragging their feet at adoption of Vulkan.

  16. Re:Mobile by sanosuke001 · · Score: 1

    AMD has a beta driver; it just hasn't been certified yet (which is stated in the slides)

    --
    -SaNo
  17. Re:Who? What? Huh? by Kjella · · Score: 1

    In retrospect it was more of a "if all your friends jump off a bridge, would you jump too" thing. AMD started it by saying low level access like on consoles would be superior, Microsoft and Apple jumped after and despite Mantle not really being much of a success they gave it to Khronos so now OpenGL has a low level API too. So now they all have one but if the market was really crying out for it, well not really. It did make AMD look somewhat better on anemic CPUs which helped their APU offerings but on a gaming rig you're usually GPU limited and then it won't make much of a difference.

    For open source the main problem has been manpower, not so much the specification with Mesa trailing the OpenGL spec by about five years. And that doesn't include the tons of load/card/game-specific optimizations involved in the proprietary drivers. The work is still the same and it's not so much that game engines do it better, it's that they have the resources. With this low level API hopefully the OSS drivers can stay current and perform equally well on Vulkan as the proprietary competitors.

    --
    Live today, because you never know what tomorrow brings
  18. Re:Obigatory XKCD by GuB-42 · · Score: 1

    I know that everytime a new standard is developed there must be someone linking to this xkcd, however, in this case, it is not really relevant.
    Vulkan is the offspring of Mantle, a proprietary API by AMD that was given away to the Khronos Group. As such, a competition between Mantle and Vulkan is highly unlikely. If Mantle stays alive, it is likely to be something built on top of Vulkan.
    There are real competitors, like Direct3D 12 and Metal but Direct3D is Windows-only and Metal is Apple-only. Vulkan is the only one that is cross-platform. On Linux and ultimately Android, it is likely to be the only choice for those wanting a low-level API.
    OpenGL is likely to stay with us for quite some time but not as a competitor to Vulkan as both have different use cases. In fact, Vulkan is a good thing as it will allow OpenGL to go back to its roots of providing a higher level API for things like CAD and experimenting with 3D rendering. The conflict of interest between game developers wanting a low-level, state of the art API and others wanting something more stable and higher level was disastrous to OpenGL in the early 2000s.

  19. API documenation by Gravis+Zero · · Score: 3, Informative

    check out the API cheatsheet

    the rest of the API documentation is here: https://www.khronos.org/regist...

    --
    Anons need not reply. Questions end with a question mark.
    1. Re:API documenation by Fragnet · · Score: 2, Interesting

      And check out the Lunar-G SDK (you can sign up for it today). Got my first spinning cube up and running in about 2 minutes (OK, Lunar-G wrote it but whatever!).

    2. Re:API documenation by Fragnet · · Score: 1

      How is my comment above off-topic. The Lunar-G SDK is the only Vulkan SDK available at the moment.

      Ignorant twats.

  20. Re:So what does it do? by Fragnet · · Score: 2

    It's a thinner layer on top of your graphics hardware than DX 9, 10, 11, OpenGL 4.5 and below are. It's the cross-platform equivalent of DirectX 12. It'll be used a lot on mobile, mostly because it's a lot more efficient than OpenGL and therefore will be able to do the same work with less battery power, in theory at least. It's a lot more friendly to multicore CPUs than OpenGL. It's got an interesting "layered" architecture, very useful for developers. It's far, far easier to develop a driver for than previous APIs, so hopefully it'll improve competition, at least in the mobile space. All in all it's about time.
    If you want the low-down on what was wrong with graphics drivers, read this eye-opening account from someone who worked a while at NVIDIA.

  21. Re:It's not always necessary to invent new words by caseih · · Score: 1

    Haha you're right about conformant, although it appears to be an obsolete word. Performant, however, is definitely made up. I do know that much. And it's made its appearance on the internet mainly in the last 10 years or so, though I suspect it's been used in the past, much like the "irregardless" non-word.

  22. Re:Who? What? Huh? by Bengie · · Score: 1

    The Khronos Group though it could be better.

    When Khronos was asked why they didn't make a new API until Mantle came along, they replied saying they don't make new APIs, they only standardize existing ones. Never look to Khronos to innovate, they only follow what others have already done.