)]}' { "commit": "8f1c8ad07958a8a2cf1e8755c69dc7959138415f", "tree": "81210230302237b674acbd999e458d3c10bc034d", "parents": [ "3c9ab309994c2baeb5572aa0befd5f405166a275" ], "author": { "name": "Pat Brown", "email": "pbrown@nvidia.com", "time": "Mon Sep 09 11:13:58 2019 -0400" }, "committer": { "name": "Pat Brown", "email": "pbrown@nvidia.com", "time": "Mon Sep 09 11:13:58 2019 -0400" }, "message": "Add spec language for compute derivatives with variable group sizes.\n\nIn NV_compute_shader_derivatives, we disallow the \"quads\" derivative\nmode if the local workgroup size has an odd width or height and\ndisallow the \"linear\" derivative mode if the number of threads in the\nlocal workgroup is not a multiple of four. However, the spec didn\u0027t\nconsider interactions with ARB_compute_variable_group_size, which\nallows applications to compile shaders without a fixed group size. We\ncan\u0027t throw errors for bad group sizes in this case.\n\nIn discussion on a Khronos GitHub issue, we decided to instead\nimplement this check at run-time and throw INVALID_VALUE if a bad\ngroup size is passed to a dispatch call.\n\nThis change updates the NV_compute_shader_derivatives spec to specify\na run-time check with no compile-time check in this case.\n", "tree_diff": [ { "type": "modify", "old_id": "4bc891b11a82b3dfd9d9b1c6ddf7c1a058f30e73", "old_mode": 33188, "old_path": "extensions/NV/NV_compute_shader_derivatives.txt", "new_id": "bdd9f6ccf970af09bdb2d49fd8a954a12eeaf85d", "new_mode": 33188, "new_path": "extensions/NV/NV_compute_shader_derivatives.txt" } ] }