We are pleased to present a full-day workshop on Vulkan in our latest DevU series in Vancouver, BC, Canada. This session will go in depth into Vulkan, providing you with an important overview, then quickly diving deep beyond the basics into its use and structure, including presentations from IHVs and ISVs using Vulkan. You will also have ample opportunity to speak with your instructors.
This DevU session is taught by Khronos Working Group members and ISVs who specialize in Vulkan and who participated in its creation. Beginners are welcome, but the session is intended for developers with at least some understanding of 3D graphics and compute.
In addition to a full day of Vulkan training, the session includes all course materials, a buffet lunch, and refreshments. Each attendee will also receive a Vulkan Quick Reference Guide and Vulkan t-shirt.
The session price is CAD$149 until January 16.
Registration on or after January 17 is CAD$199.
The following schedule is subject to change. This is a detailed technical session about using Vulkan. This tutorial is intended for developers with at least some understanding of 3D graphics and compute.
The sessions will be followed by a free reception. Stay to socialize and network with the session presenters and other people from Khronos.
|8:00 - 9:00||Registration||Check in at the registration to receive your attendance badge plus your Vulkan shirt and reference guide. Coffee and pastry will be available.|
|9:00 - 9:45||Welcome and Introduction||Introduction to Vulkan. This session starts with the motivation and goals of the Vulkan project, current status, ecosystem momentum, and future direction. Then we discuss who should use Vulkan and why, including a discussion of Vulkan performance benefits.||Tom Olson (ARM, Vulkan Chair), Michael Worcester (Imagination Technologies), Cort Stratton (Google)|
|Getting Started / Your Toolset|
|9:45 - 10:30||Getting Started with Vulkan: Loader, Layers, and Other Resources||What are the tools and resources for getting started with Vulkan and how do you use them? We will look at SDK installation and setup for Linux, Windows, and Android). Then we'll look at VIA, the Vulkan Loader, Validation layers, WSI utilities, and more.||Mark Young (LunarG)|
|10:45 - 11:00||vkTrace for the Desktop and Android||What is vktrace and what would you use it for? An overview of how to use vktrace with tips, current status, and future plans.||Karl Schultz (LunarG)|
|11:00 - 11:!5||Vulkan C++ Bindings with Vulkan-Hpp||Markus Tavenrath (NVIDIA)|
|11:15 - 11:45||Making SPIR-V Modules||John Kessenich (Google)|
|11:45 - 12:45||Lunch||Enjoy lunch with fellow attendees and the presenters.|
|Practical Advice / Deeper Dive|
|12:45 - 1:45||Vulkan Tutorial - Let's get into some code!||Using the Vulkan SDK Tutorial, demonstration of actual Vulkan code with an emphasis on why certain things are done certain ways with the Vulkan API||Karl Schultz, LunarG|
|1:45 - 2:!5||Synchronization: Keeping your GPU Fed without Getting Bitten||Synchronization in Vulkan looks like it's quite hard to get right - and it is. But it's not impenetrable, and the tools exist to help you get it right. This presentation aims to give you practical advice on how to get it right - keeping your GPU fed without getting bitten.||Tobias Hector, Imagination|
|2:30 - 3:15||Android Game Development Case Study: Porting Vainglory to Vulkan||Vainglory is one of the first game titles to be released with Vulkan support for Android. This presentation will give you a run down of Samsung's experience in helping port the game to Vulkan, including hazards to watch out for, tips on how get the the best performance, particularly when developing for mobile||Alon Or-bach, Samsung|
|3:15 - 4:00||Bringing Vulkan to VR||This talk will cover two topics: Adding Vulkan support to the Oculus Mobile SDK, and the Asynchronous Time Warp sample apps for Vulkan.
In the first part, we will cover the design considerations in the VrApi to support multiple graphics APIs, and how Vulkan integrates into that framework. Part of that discussion will include some implementation details for our current VrDriver and particularly its VR compositor. These details will provide some insight into why the API looks like it does today, and how it might change in the future. The second part will be a brief tour of the Khronos atw_vulkan.c sample on GitHub. It provides an attractive one-stop-shop code sample that exercises the Vulkan driver in ways that are important for VR to function robustly, but also provides a nice portable set of abstractions for understanding how generic 3D rendering is done in Vulkan. There is a similar OpenGL version of the sample with the same abstractions that provides a sort of Rosetta stone for how to achieve the same ends in both APIs.
|Cass Everitt (OculusVR)|
|4:15 - 5:15||Performance and best practice recommendations: Panel and Q&A||Our presenters will assemble as a panel for a Q&A with the audience and to share best practices. Beer will be served during this and the next session.||All our presenters|
|Summary / Khronos|
|5:15 - 5:30||Khronos Overview and Closing||Khronos overview, membership benefits, chapters, other APIs and other Khronos events.||Neil Trevett (NVIDIA, Khronos President)|
Conference Code of Conduct: The Khronos Group is dedicated to providing a harassment-free conference experience for everyone. Visit our Code of Conduct page to learn more.