summaryrefslogtreecommitdiff
path: root/tools/gfx/vulkan/vk-device.cpp
AgeCommit message (Collapse)Author
2024-02-28[SPIRV] Add NonSemanticDebugInfo for step-through debugging. (#3644)Yong He
* [SPIRV] Add NonSemanticDebugInfo for step-through debugging. * Fix. * Fix.
2024-02-27add support for shared resources on vulkan/linux (#3636)skallweitNV
2024-02-26switch to vkCreateMetalSurfaceEXT and create metal layer in swapchain (#3627)Simon Kallweit
* switch to vkCreateMetalSurfaceEXT and create metal layer in swapchain * fix window content size on macos --------- Co-authored-by: Yong He <yonghe@outlook.com>
2024-02-20derive approximate DX12 shader model in vulkan (#3596)skallweitNV
Co-authored-by: Yong He <yonghe@outlook.com>
2024-02-20Refactor compiler option representations. (#3598)Yong He
* Refactor compiler option representation. * Fix binary compatibility. * Add a test for specifying compiler options at link time. * Fix binary compatibility. * Fix binary compatibility. * Fix backward compatibility on matrix layout. * Fix. * Fix. * Fix. * Fix gfx. * Fix gfx. * Fix dynamic dispatch. * Polish.
2024-02-02Atomics+Wave ops intrinsics fixes. (#3542)Yong He
* Fix atomics intrinsics, increase kMaxDescriptorSets. * Add SPIRVASM to known non-differentiable insts. * Support fp16 wave ops when targeting glsl. * Fixes. * Fix vk validation errors. * Fix. * Add to allowed failures.
2024-02-02adding required extensions to gfx to enable basic vulkan printf ↵Nathan V. Morrical
functionality (#3541)
2023-12-18macos/vulkan support (#3418)skallweitNV
2023-10-19Add a tool to dump/replay compute pipeline creation from gfx. (#3275)Yong He
* Add a tool to dump/replay compute pipeline creation from gfx. * Fix x86 build. --------- Co-authored-by: Yong He <yhe@nvidia.com>
2023-10-05Check for extension support before enabling a feature (#3262)Ellie Hermaszewska
Co-authored-by: Yong He <yonghe@outlook.com>
2023-10-02More direct-SPIRV fixes. (#3257)Yong He
* More direct-SPIRV fixes. * Fix array-reg-to-mem. --------- Co-authored-by: Yong He <yhe@nvidia.com>
2023-09-13Fix build with --enable-xlib=false (#3203)Ellie Hermaszewska
* Fix build with --enable-xlib=false * Correct brace location --------- Co-authored-by: Yong He <yonghe@outlook.com>
2023-09-11Add Mesh and Task shader support to GFX (#3190)Ellie Hermaszewska
* Bump vulkan headers Also just use vulkan-headers as a submodule * Add drawMeshTasks to gfx graphics pipelines * Add DispatchMesh overload with no payload, with GLSL intrinsic * Require spirv 1.4 for mesh shaders * Add vulkan mesh shader feature discovery * Add mesh shader stage bits to vk-util * Add mesh and task shader support to render-test * Add mesh and task tests * Preserve "payload" specifier in task shaders * Add mesh shader pipeline support to gfx * Add TODO * Add numThreads attribute for amplification stage * Add payload to task shader test * Drop dependency on d3dx12 * Allow passing payloads from task to mesh shaders * regenerate vs projects * check DispatchMesh name correctly * Add mesh shader tests to failing tests * Detect wave-ops feature on vulkan * Add fuse-product to expected failures This fails because the global varaible `count` is not initialized * Add required extension to WaveMaskMatch SPIR-V impl * Remove meshShader member from pipeline desc * Identify mesh shader support on d3d12
2023-09-06Add support for getting external semaphore handles (#3181)skallweitNV
* Add support for getting external semaphore handles * Fixes * Linux fix * Address reviewer comments --------- Co-authored-by: Yong He <yonghe@outlook.com>
2023-07-18nsight Aftermath crash example (#2984)jsmall-nvidia
* Small fixes and improvements around reflection tool. * Make PrettyWriter printing a class. * Aftermath crash demo WIP. * Enable aftermath in test project. * Setting failCount. * Dumping out of source maps. * Improve comments. Simplify handling of compile products. * Other small fixes to aftermath example. * Added Emit SourceLocType. Track sourcemap association meaning. Improved documentation. * Small improvements. * Capture debug information for D3D11/D3D12/Vulkan. * Enable debug info. * Small improvements. * Improve aftermath example README.md.
2023-05-11MVP for higher order functions (#2849)Ellie Hermaszewska
* MVP for higher order functions * Add shader subgroup partitioned glsl intrinsics * Implement parsing and checking for tuple types Currently there is no way to do anything useful with them from the source language however * neaten * Correct precedence of function type parsing * neaten * higher order function tests * function types of any arity * Inference for higher order functions * Add second test for unsynchronized params * regenerate vs projects * dx11 -> dx12 for saturated cooperations tests * Disable saturated cooperation tests on vulkan They fail on release builds in CI, not essential for the higher order function work however * remove saturated-cooperation tests * Remove unnecessary assert and clarify control flow in AddDeclRefOverloadCandidates * Add Tuple type name mangling * Use functype keyword to introduce function types * Add more inference tests for hof --------- Co-authored-by: Yong He <yonghe@outlook.com>
2023-05-02gfx: fix vulkan validation errors. (#2861)Yong He
* Fix VK validation errors when using vk1.2 features. * Fix vulkan validation errors. * Fix. --------- Co-authored-by: Yong He <yhe@nvidia.com>
2023-04-25Dictionary using lowerCamel (#2835)jsmall-nvidia
* #include an absolute path didn't work - because paths were taken to always be relative. * WIP lowerCamel Dictionary. * WIP more lowerCamel fixes for Dictionary. * Add/Remove/Clear * GetValue/Contains * Fix tabs in dictionary. Count -> getCount * Fix fields with caps. * Key -> key Value -> value Use m_ for members where appropriate. Use lowerCamel in linked list. * Some small fixes/improvements to Dictionary. * Kick CI.
2023-04-21Correct vulkan extension name for inline uniforms (#2822)Ellie Hermaszewska
Fixes https://github.com/shader-slang/slang/issues/2821
2023-04-04Preliminary support for realtime clock (#2772)jsmall-nvidia
* #include an absolute path didn't work - because paths were taken to always be relative. * Initial support for realtime clock. * Add realtime-clock render feature where seems appropriate. * Fixes to make NVAPI compile properly. Change realtime-clock.slang check to use maths that can't overflow.
2023-02-11Comment call to vkCreateInstance with a potential pitfall (#2642)Ellie Hermaszewska
Although we could in principle write this explanatory message to stderr, that would entangle this call with the layer search above for what is probably a very unlikely possibility on any normal system.
2023-01-20Add vulkan extensions to support DLSS (#2603)skallweitNV
2022-11-07Initial version of DeviceLimits implemented in d3d12, d3d11, vulkan and cuda ↵skallweitNV
(#2496)
2022-11-04Add AdapterLUID to identify GPU adapters (#2492)skallweitNV
* Add AdapterLUID to identify GPU adapters * Remove adapter option in render-test
2022-10-05Various gfx fixes. (#2434)Yong He
2022-09-26Use d3d12/vk debug layer when gfx debug layer is enabled. (#2411)Yong He
* Use d3d12/vk debug layer when gfx debug layer is enabled. * Fix. Co-authored-by: Yong He <yhe@nvidia.com>
2022-08-10Artifact and ICastable (#2351)jsmall-nvidia
* #include an absolute path didn't work - because paths were taken to always be relative. * WIP with hierarchical enums. * Some small fixes and improvements around artifact desc related types. * Improvements around hierarchical enum. * Fixes to get Artifact types refactor to be able to execute tests. * Attempt to better categorize PTX. * Work around for potentially unused function warning. * Typo fix. * Simplify Artifact header. * Small improvements around Artifact kind/payload/style. * Added IDestroyable/ICastable * Add IArtifactList. * First impl of IArtifactUtil. * Use the ICastable interface for IArtifactRepresentation. * Added IArtifactRepresentation & IArtifactAssociated. * Add SLANG_OVERRIDE to avoid gcc/clang warning. * Fix calling convention issue on win32. * Fix missing SLANG_OVERRIDE. * First attempt at file abstraction around Artifact. * Added creation of lock file. * Move functionality for determining file paths to the IArtifactUtil. Add casting to ICastable. * Added some casting/finding mechanisms. * Simplify IArtifact interface, and use Items for file reps. * Fix problem with libraries on DXIL. * Split out ArtifactRepresentation. * Move ArtifactDesc functionality to ArtifactDescUtil. ArtifactInfoUtil becomes ArtifactDescUtil. * Split implementations from the interfaces for Artifact. * Use TypeTextUtil for target name outputting. * Add artifact impls. * Add ICastableList * Added UnknownCastableAdapter * Make ISlangSharedLibrary derive from ICastable, and remain backwards compatible with slang-llvm. * Refactor Representation on Artifact. * Make our ISlangBlobs also derive from ICastable. Make ISlangBlob atomic ref counted. * Fix typo.
2022-07-12Fixed incorrectly scoped variable causing crashes on certain linux ↵Sai Praveen Bangaru
toolchains (#2319)
2022-06-01Vulkan validation error fixes (#2254)lucy96chen
* Fixed Vulkan validation errors for incorrect layer counts and view types in Debug * Removed old (and empty) render-vk files; Ran premake.bat
2022-05-26Split render-vk.h/.cpp into a set of smaller files (#2244)lucy96chen
* Some preliminary work on splitting render-vk * render-vk split, tests currently crash on null reference * fixed circular include