From c2dc1a86ed2f5e160749fe9f99b70db6c3e4d7a6 Mon Sep 17 00:00:00 2001 From: skallweitNV <64953474+skallweitNV@users.noreply.github.com> Date: Mon, 12 Dec 2022 19:25:48 +0100 Subject: Refactor shader cache (#2558) * Fix a bug in Path::find * Fix code formatting * Fix LockFile and add LockFileGuard * Add PersistentCache and unit test * Replace file path dependency list with source file dependency list * Add note on ordering in Module/FileDependencyList * Remove old shader cache code * Refactor shader cache implementation * Temporarily skip unit tests reading/writing files * Fix warning * Reenable lock file test * Rename shader cache tests and disable crashing test * Testing * Stop using Path::getCanonical * Fix persistent cache lock and test * Fix threading issues * Move adding file dependency hashes to getEntryPointHash() * Fix handling of #include files * Allow specifying additional search paths for gfx testing device * Work on shader cache tests * Update project files * Revive shader cache graphics tests * Split graphics pipeline test * Fix compilation --- .../shader-cache-multiple-entry-points.slang | 31 ++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 tools/gfx-unit-test/shader-cache-multiple-entry-points.slang (limited to 'tools/gfx-unit-test/shader-cache-multiple-entry-points.slang') diff --git a/tools/gfx-unit-test/shader-cache-multiple-entry-points.slang b/tools/gfx-unit-test/shader-cache-multiple-entry-points.slang new file mode 100644 index 000000000..a0015b83c --- /dev/null +++ b/tools/gfx-unit-test/shader-cache-multiple-entry-points.slang @@ -0,0 +1,31 @@ +// shader-cache-multiple-entry-points.slang + +[shader("compute")] +[numthreads(4, 1, 1)] +void computeA( + uint3 sv_dispatchThreadID: SV_DispatchThreadID, + uniform RWStructuredBuffer buffer) +{ + var input = buffer[sv_dispatchThreadID.x]; + buffer[sv_dispatchThreadID.x] = input + 1.0f; +} + +[shader("compute")] +[numthreads(4, 1, 1)] +void computeB( + uint3 sv_dispatchThreadID: SV_DispatchThreadID, + uniform RWStructuredBuffer buffer) +{ + var input = buffer[sv_dispatchThreadID.x]; + buffer[sv_dispatchThreadID.x] = input + 2.0f; +} + +[shader("compute")] +[numthreads(4, 1, 1)] +void computeC( + uint3 sv_dispatchThreadID: SV_DispatchThreadID, + uniform RWStructuredBuffer buffer) +{ + var input = buffer[sv_dispatchThreadID.x]; + buffer[sv_dispatchThreadID.x] = input + 3.0f; +} -- cgit v1.2.3