There are best practices for GPU performance events that are universally used by profiling tools such as NVIDIA Nsight Graphics and NVIDIA Nsight Systems, for navigating through complex frame rendering. While all modern graphics APIs (Direct3D 11, Direct3D 12, Vulkan, and OpenGL 4.3) offer a simple solution to set these begin/end performance markers, they do not enforce the conventions that profiling tools follow. Read on to learn some Do’s and Don’ts to make your game work better with profiling tools and easier for NVIDIA engineers to help you optimize your game.
Think Silicon GLOVE v0.4, library which implements OpenGL over Vulkan, been released. GLOVE currently focuses on OpenGL ES 2.0 + EGL 1.4 and is a standalone project. GLOVE 0.4 is the project’s first new release in more than one year and comes with expanded hardware and software support. GLOVE now supports Microsoft Windows and Apple macOS for running OpenGL over Vulkan. (Source: Phoronix)
Diligent Engine is a modern cross-platform abstraction layer for Vulkan, OpenGL, OpenGL ES, Direct3D11 and Direct3D12. In release v2.4.b, Diligent Engine enabled MSAA and bindless resources, implemented GPU queries, added new tutorials as well as made major improvements to code quality assurance by enabling automated unit tests, format validation and static code analysis.
Founder and CTO of Third Dimension Technologies (TDT) recently gave a SMPTE webinar for members titled “Streaming Model for Field of Light Displays” (SMFoLD). The webinar focused not on the displays themselves, but the technology needed to stream real-time field of light video with synchronized sound over more-or-less ordinary network connections. TDT is working on this problem along with the Oak Ridge National Laboratory (ORNL) in a project managed by the Air Force Research Laboratory (AFRL). The title of the project is “Open Standard for Display Agnostic 3D Streaming” (DA3DS). The DA3DS project has taken the approach of transmitting not the images but the OpenGL primitive graphics calls over the network along with the data needed by the OpenGL calls. Learn how the DA3DS project is using OpenGL and how OpenXR plays a part.
NVIDIA has updated their sample framework and have added lots of new Vulkan content. There was a big focus on Raytracing for Vulkan and how to add that to OpenGL. Most samples now support loading glTF 2.0 models.
Google acquired and open-sourced GraphicsFuzz a little over a year ago. GraphicsFuzz is no longer about only OpenGL, OpenGL ES and GLSL shaders but also operates on SPIR-V shaders for consumption by Vulkan drivers. There are also GLSL/SPIR-V shader reducers in addition to the fuzzer that relies upon randomized metamorphic testing.
We are just one week away from Halo: Reach coming to PC after a lengthy stint as an Xbox exclusive title. In preparation for the big release, NVIDIA has begun rolling out the Game Ready driver with optimisations. In addition, Quake II RTX has had an upgrade to further improve the ray-traced remaster. This latest driver also brings Image Sharpening support for OpenGL and Vulkan games. (Source: Kitguru.net)
NVIDIA Nsight Systems 2019.6 is now available for download. This release expands graphics trace on Windows by adding support for Direct3D 11, WDDM CPU+GPU queues, and OpenGL. On Linux, new features include support for CUDA 10.2, simultaneous CLI sessions, DWARF unwind and capture by hotkey. OpenGL trace on Windows tracks functions and the batches of GPU workloads produced.
Collabora developer Erik Faye-Lund recently went to XDC 2019, where he gave a talk about Zink (OpenGL on Vulkan) (slides). Erik has written an update on the latest developments around Zink, including upstreaming for OpenGL ES, merging in Vulkan and testing on CI.
The Khronos Group has published a maintenance release to OpenGL 4.6 and OpenGL ES 3.2 with bug fixes from GitHub, the old Khronos Bugzilla issue tracker and from internal issues. OpenGL 4.6 changes are in the OpenGL Specification Core with Changes PDF starting on page 736. OpenGL ES 3.2 changes are in the OpenGL ES 3.2 Specification PDF on page 539.
RenderDoc 1.5 has been released. Changes include: SPIR-V reflection and disassembly has been refactored to be more reliable and is based on the publicly available grammar json; Vulkan has a new replay-time optimisation which takes advantage of the above replay options dialog; OpenGL has a low-memory optimisation to defer copying initial contents of textures and buffers that are rarely modified; Support for twenty-one (21) Vulkan extensions have been added; Support for fifteen (15) OpenGL extensions have been added along with whitelisting of some OpenGL ES extensions that were already supported. A complete list of changes and improvements is available in the Latest release notes.
Basemark GPU 1.2 adds iOS and macOS to our list of already supported operating systems: Android, Windows, and Linux. We include OpenGL ES 3.1, OpenGL 4.5, Vulkan 1.0, DirectX 12 and Metal. With the new features in Basemark GPU 1.2, you will be able to analyze and compare the 3D graphics performance of smartphones, tablets, notebooks, Windows and Linux desktop PCs, etc.
Neil Trevett, the president of the Khronos Group, presented at the X.Org Developers’ Conference for the first time. During his presentation on October 2nd 2019 he covered the usual Khronos initiatives, how Khronos engages in open-source and open standards, and related information. Phoronix has done a short write-up on Neil’s talk.
NVIDIA is still investing in their OpenGL driver stack and have added new multi-GPU/SLI functionality to their driver. Complementing the WGL_NV_multigpu_context extension from July is now the GLX_NV_multigpu_context extension catering to Linux GLX windowing system users. See more extensions in the Khronos OpenGL Registry.