for 20 years, reporting on the business of the computer-aided design industry

Monday, February 29, 2016

Vulkan 1.0 Launches

Issue #891

by Ralph Grabowski with Neil Trevett

February 16 was the day a brand-new API launched for GPUs.Khronosis best known forOpenGL, the graphics system used by most software today. Now they have the next-gen API, calledVulkan. I interviewed Khronos presidentNeil Trevettto learn what it is, and what it means for CAD users. Mr Trevett is also NVIDIA's vice president of developer ecosystems.

- - -

Ralph Grabowski: This is the first time I've seen an angry looking teapot!Neil Trevett:Ha! The figures in the Vulkan T-shirt art are all the iconic 3D research models, with a little more aggression, appropriately, as Vulkan is named after the ancient deity of fire and forge. But it's what's underneath the logo that is most important, "Industry Forged."

This means the industry is coming together in 18 months of effort to release an open standard. Also, the launch of Vulkan 1.0 today it is a hard launch, with an open source SDK[software development kit], validator layer and tools, conformant drivers from multiple hardware vendors, and even shipping applications.

In the past, we did soft launches, where we would just release the specification. With our Vulkan launch, Khronos is upping its game. For example, this is the first time there is an open source conformance test suite for a Silicon API[application programming interface].This lets developers submit tests to fix bugs that are causing them porting issues.

Grabowski: Who is Vulkan meant for?Trevett:Vulkan is for developers who need much deeper levels of control over GPUs to craft faster, smoother, more efficient applications. Vulkan breaks open the thick driver model of OpenGL by giving more responsibility for memory and resource management to the application.

This means a Vulkan driver is much thinner, has less latency, less overhead, and fewer driver surprises. This is how we get higher performance with fewer hitches. Importantly Vulkan also enables multi-threaded CPU acceleration by separating the creation of multiple command buffers in memory, before they are submitted to the GPU. This is great for efficiently handling large CAD models, for example.

On the other hand, Vulkan can be harder to use as the application is taking on work that the driver used to do. On the other other hand, many games will simply use games engines that take immediate advantage of Vulkan, such as those from Lucasfilm, EA, Valve, and Unity. Many other application domains will probably see strong middleware ecosystems built over our new low-level API.

Grabowski: OpenGL, OpenCL, OpenSL ES... there seem be a lot of these standards floating about.Trevett:Yes, Khronos has different API standards for different types of acceleration. For example, OpenCL is for parallel computation and OpenSL ES is for audio.

The traditional 3D APIs are OpenGL for desktops and OpenGL ES for embedded and mobile systems. One of the key messages we want to communicate to developers is that OpenGL and OpenGL ES are not going away; they will be actively developed for many years alongside Vulkan.

For applications that are already GPU-bound, OpenGL is as fast as Vulkan. If you don’t need the low level access of Vulkan, OpenGL is more straightforward to develop for. This is especially true for application already using OpenGL.

Grabowski: This involved 18 months of development by many in the industry. Why would they want to cooperate together on a new API?Trevett:Software and hardware developers benefit from a cross-platform API standard as it enables applications and accelerators to reach more platforms with lower porting costs. The only other new-generation APIs are these two:

DirectX 12 from Microsoft, which works only with Windows 10

Metal from Apple, which works only with iOS and OS X systems

So Vulkan’s big differentiator is that it is the only modern API that is a multi-vendor, open standard available to run on any platform that wants it.

For example, Google has announced that it will ship Vulkan as a native API in a future version of Android, and Vulkan is already shipping for Windows 7-10 and Linux. A new generation of low-level APls is critical for smoother real-time user experiences and tools.

Grabowski: Apple is not on your list of sponsors.Trevett:Apple is a Khronos member and is on the board of promoters, but you should speak to Apple about any plans to use Vulkan. When it comes to graphics APIs, it seems at the moment that they are trying to fence themselves off from open standards. They have Metal, which is a proprietary new-generation API that uses a lot of OpenGL ES and OpenCL technology. It is, however, is missing tessellation and geometry shaders. This makes it harder for developers. There is no barrier to Apple adopting Vulkan, should they choose to.

Grabowski: What is it that makes Vulkan so portable?Trevett:The fact the Vulkan is a thinner, simpler driver makes it easier to create conformant drivers across multiple vendors. Vulkan uses our SPIR-V[Standard Portable Intermediate Representation] to enable hardware-independent language compiler front-ends, and avoids the need for a full compiler in the driver, as with OpenGL.

Vulkan defines a number of switches and dials (“features”) that enable and disable parts of the API to suit the needs of different markets and platforms. A platform vendor can define a Feature Set to define a reliable functional baseline for developers. The flexibility means we will never need a ‘Vulkan ES’ as we did with OpenGL.

Grabowski: Vulkan seems to be directed at games. In which way would CAD programs specifically benefit?Trevett:Vulkan is intended to add value to any demanding graphics application, not just games. Vulkan’s multi-threading in particular enables applications that are currently host-bound to use multi-core CPUs to generate multiple command buffers in parallel, before submitting them to the GPU. This is particularly valuable with applications dealing with large CAD models, where Vulkan should enable significantly smoother design interactivity. The low latency and stutter-free performance of Vulkan is also suited to VR[virtual reality]applications.

Grabowski: Will CAD applications be forced to use Vulkan?Trevett:No, not all. Games will probably be the first commercial applications to ship using Vulkan. Each new generation of games tends to re-engineer their code base in a way that large CAD applications can’t.

The good news is that OpenGL is not going away. As it is still actively developed by Khronos, CAD application vendors can transition when they see the benefit from doing so. Some graphics vendors, like NVIDIA, can run OpenGL and Vulkan side by side to enable professional design applications to move incrementally to Vulkan. For example, they can leave their UI in OpenGL and move their performance-critical model-view pipeline to Vulkan.

Grabowski: I noticed that Dassault Systemes is the only CAD member of the working group. What kind of a role are they playing?Trevett:It was great to have Dassault join the working group early on, as they helped to make sure that the needs of the CAD industry were kept in mind as Vulkan was being designed. They were our CAD conscience.

Grabowski: From where does the Vulkan name come?Trevett:We could have given the new API a variation on the OpenGL name, but in the end decided not to. This new specification is not an evolution of OpenGL; it’s a complementary API that lives alongside OpenGL.

We use ancient deity names and then misspell them deliberately, such as Khronos[Chronos was the ancient Greek deification of time].Vulcan was the god of fire and forge. We liked the image of industrial strength and power that it conveyed. The name did not come from Star Trek or the Vulcan bomber!

Grabowski: Vulkan is free, so why would a developer become a member of your group?Trevett:Vulkan is entirely free for developers, who don't need to be a Khronos member to use and ship engines and application using the API.

If, however, a hardware developer wants to implement a Vulkan driver or processor and use the Vulkan name on their implementation, then they can become a Vulkan Adopter, the cost is few tens of thousands of dollars. Becoming an Adopter gives you access to the Khronos conformance process to run and upload test logs to the Vulkan working group for review. Implementations that pass conformance can use the Khronos name and logo and the Khronos Intellectual Property framework ensures that Khronos Members won't assert their patents against you for implementing the technology.

Any companies be they software or hardware developers are welcome to join Khronos; our membership is open. Membership gives them a voice and a vote in specification designs and development. As well, they get an insight into what’s in the design pipeline well before the rest of the industry. https://www.khronos.org/vulkan

And One More Thing...

If you live near Warwick or happen to flying to England end of March, then you may well want to take inDevelop3D Live. It is March 21 at Warwick University Arts Center, and best of all the full day of 30 speakers and 70 exhibitors is free to attend.

Even More News

There is more at ourWorldCAD Accessblog about the CAD industry, tips on using hardware and software, and our popular travelogues. You can keep up with the blog through its RSS feed and email alert service.

We're onTwitterat@upfrontezine with late-breaking CAD news and wry commentarythroughout the day, such as....

upFront.eZine (@upFronteZine) Feb 21: HTC unveils the $800 ski boot it wants hanging off the end of your face:

Letters to the Editor

Re: The Tao of BIM Being Data

Mr. Partridge isclearly an architect. He states, "We need BIM to output directly to fabrication, with no drawings at all -- except for the foreseeable future when drawings are still required for regulatory purpose" as well as "I think anything that can communicate design and assembly (construction) intent is very useful. The primary source of legal claims against architects and engineers is a lack of communication, not the deliverables. So I find the constant issue of liability around the BIM laughable."

There is often a large disconnect between designers and builders. One is accountable for concept ("intent"), and the other for actual construction. Designers can communicate all they want, but in most situations they do not have sufficient relevant knowledge to create a model that directs fabrication or installation. Nor can they as materials have complexity, and no architect or architect team can acquire that knowledge for 1,000 materials in addition to all the other things they are required to know. The liability arises when a subcontractor relies on the model (of intent), and then late in the game someone realizes there is a problem.

Given that your background is not in architecture, you would be surprised by how often architects do not understand tolerances and expect that everything fits perfectly, precisely as drawn, or as shown in the model. - Leo Schlosberg Cary Concrete Products, USA

- - -

In Europe, wesee BIM as a process rather than software. This view has prevailed over the years. In Germany, about 40 CAD products are sold that have an IFC interface. The German government is committed to OpenBIM.

The EU BIM Task Group is to summarize the national guidelines in a single European directive in Europe. For most digitization in the construction industry topics, I have a personal opinion, which I share on my[German-language]blog ulfkrause.wordpress.com. - Ulf-Günter Krause (via WorldCAD Access) AvaCAD, Germany

- - -

Good to readyou're working on CAD standards, much interested to see the result. -Pandelis Latroudakis Iatroudakis Consulting, Greece

Re: Notable Quotable

[Mark]Zuck[erberg]buildingelectricity grids for the poor would be wonderful, I agree, but when he feathers his own nest by building them social networks, he hastens the demise of oppressive structures. He reduces the cost of information, makes it harder for tyrants, thereby delivering perhaps a bigger win for the poor. - Arnold Rowntree Otway Drafting, Australia

Re: My New Tablet Became Obsolete 4 Years Ago

I had thePlaybook from early on, and like you, I really do like the OS. However, with Blackberry's new Android smartphone, the Priv, it looks like BB OS 10 is on life support, with no major functionality to be added. Hopefully, Android's developers will steal the good ideas from these alternate OSs. -Tony T (via WorldCAD Access) USA

Thank You, Readers!

Thank you to readers who donate towards the operation of upFront.eZine. In return, you receive our 56-page whitepaper "MobileCAD is Reaching Maturity," free and unavailable from anywhere else. Should you wish to support upFront.eZine through PayPal, then the suggested amounts are like these: