summaryrefslogtreecommitdiffstats
path: root/docs/user-guide
Commit message (Collapse)AuthorAge
...
* Implement shader subgroup rotate intrinsics (#6878)Darren Wihandi2025-04-22
| | | | | | | | | | | | | * Initial implementation for SPIRV, GLSL and Metal * test add bool test * Fix and improve subgroup rotate tests * Add proper GLSL extensions and proper Metal type checking * Clean up tests and add diagnostics test for subgroup type for Metal * Update wave-intrinsics docs
* Add a new SM profile 6.9 (#6879)Jay Kwak2025-04-22
|
* Remove support for ad hoc Slang IR compression (#6834)Theresa Foley2025-04-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Remove support for ad hoc Slang IR compression This change is part of a larger effort to clean up the approach to serialization in the Slang compiler. The overall goal is to simplify and streamline all of the serialization-related logic, so that we are left with code that is less "clever," and easier to understand for contributors to the codebase. Removing support for compression of serialized Slang IR has benefits that include: * Reduction in code complexity: consider things like the subtle way that the `FOURCC`s for compressed chunks were being computed from the uncompressed versions, and the mental overhead that goes into understanding that, for anybody who would dare to touch this code. * Reduction in testing burden: there have been, de facto, two very different code paths for serialization of the Slang IR, and it is not clear that the existing test corpus for Slang has sufficient coverage for both options. By having only a single code path, every test that performs any amount of IR serialization helps with test coverage of that one path. * Opportunity to explore alternatives. This is perhaps a reiteration of the first point, but once the code is stripped down to the simplest thing that could possibly work (I am not claiming it has reached that point yet), it becomes easier for contributors to understand, and it becomes more tractable for somebody to come along with an improved approach that performs better (in either compression ratio or performance) while still being maintainable. In my own local setup, I found that removing support for Slang IR compression led to the `slang-core-module-generated.h` file increasing in size from 46.1MB to 47.4MB. This increase in the `.h` file size for the core library binary only resulted in a release build of `slang.dll` increasing from 20.0MB to 20.2MB. Removing the ad hoc compression support has almost no impact on the size of actual binary Slang modules *so long* as the additional LZ4 compression step is being applied to them. * format code --------- Co-authored-by: slangbot <186143334+slangbot@users.noreply.github.com>
* Add cooperative matrix 1 support (#6565)Darren Wihandi2025-04-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * initial wip for spirv * working tiled example * clean up store and load * minor fixes * fix loadAny name * add initial tests, including broken/unimplemented intrinsics * fix subscript * run tests at 16x16, remove not supported arithmetic tests * minor fixups on implementation * rename CoopMatMatrixUse * Update tests to pass validation layers locally * Add mat-mul-add test and minor fixes * Add more tests * Remove dead code * Add coopMatLoad function and tests, enforce constexpr for matrix layout * Use getVectorOrCoopMatrixElementType in place of getVectorElementType
* Add SV_PointCoord to match gl_PointCoord (#6795)Julius Ikkala2025-04-14
| | | | | | | | | | | * Add gl_PointCoord support in GLSL compat mode * Add SV_PointCoord * Test on metal as well * Update SPIRV system value semantics table in docs * Update metal docs for SV_PointCoord
* Fix user-guide typos (#6789)Gangzheng Tong2025-04-11
| | | | | | | | | | * Fix user-guide typos Use LLM to scan each of the markdown files to fix typos. Try not to change anything but the typos in this CL. * typo not caught by LLM * add output of ./build_toc.ps1
* Add defer statement (#6619)Julius Ikkala2025-04-06
|
* Update hyperlinks in User Guide's Reference section (#6715)Sruthik P2025-04-01
| | | | | | Fixes #6692 This change fixes the hyperlinks used in the User Guide's Reference section as the previously used paths were leading to a 404
* [docs] Admonish slangc entry points / shader attributes (#6033)Ben-Fields2025-03-31
| | | | | | | | | | | | | | | | | * [docs] Admonish slangc entry points / shader attributes Admonish the related non-functional compilation command in the reference manual until #5541 is addressed. * Refine shader attribute description. * Refine shader attribute description * Update with all supported targets Add all targets supporting shader attributes per provided verbiage. --------- Co-authored-by: Ellie Hermaszewska <ellieh@nvidia.com>
* Output SPV_KHR_compute_shader_derivatives extension string instead of the NV ↵Darren Wihandi2025-03-19
| | | | | | | extension (#6641) * Output SPV_KHR_compute_shader_derivatives instead of the NV extension * add alias for nv extension
* Implement floating-point pack/unpack intrinsics for all targets (#6503)Darren Wihandi2025-03-18
| | | | | | | * Implement floating-point pack/unpack intrinsics * remove unused functions and update caps in glsl meta file * rename pack capability
* Add module organization suggestion doc (#6509)cheneym22025-03-05
| | | | | | | * Add module organization suggestion doc Suggest one method to keep slang modules organized in the file system. Closes #4841
* Document bug with global session teardown in user guide (#6479)Anders Leino2025-02-27
| | | | | This closes #6344. Co-authored-by: Yong He <yonghe@outlook.com>
* Improve entry point lookup function documentation (#6451)Anders Leino2025-02-26
| | | | | | | | | | | | * Document that findEntryPointByName is not applicable if there is no [shader(...)] attribute * Update the user guide to mention findAndCheckEntryPoint for entry points without [shader(...)] attributes * format code --------- Co-authored-by: slangbot <186143334+slangbot@users.noreply.github.com> Co-authored-by: Yong He <yonghe@outlook.com>
* Mark slangpy as deprecated and remove from user-guide. (#6300)Yong He2025-02-06
|
* Update a3-reference.md (#6309)KoT2025-02-06
| | | Co-authored-by: Yong He <yonghe@outlook.com>
* Fix inline markdown rendering (#6294)Sai Praveen Bangaru2025-02-05
| | | | | | | | | | | * Fix inline markdown rendering * Fix it in a different way.. * Update 07-autodiff.md --------- Co-authored-by: Yong He <yonghe@outlook.com>
* Add support for WGSL subgroup operations (#6213)Darren Wihandi2025-02-02
| | | | | | | | | | | | | | | | | | | | | * initial work * more work * more work on glsl intrinsics * add subgroup broadcast for glsl * wip add wgsl extension tracking * enable tests, enable extensions and added some todos * format and warning fixes * fix wgsl extension tracker --------- Co-authored-by: Yong He <yonghe@outlook.com>
* [Docs] Auto-diff documentation overhaul (#6202)Sai Praveen Bangaru2025-01-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * AD: Docs Update * More documentation * More documentation * More docs fixes * Cleanup documentation * More docs polish. Add docs for the [Differentiable] attributes * Fixup code sections * Fixup * Address review comments * regenerate documentation Table of Contents * Update docs with more playground links --------- Co-authored-by: slangbot <186143334+slangbot@users.noreply.github.com> Co-authored-by: Yong He <yonghe@outlook.com>
* Support cooperative vector (#6223)Jay Kwak2025-01-30
| | | | | | | * Support cooperative vector without Vulkan-header update Adding a Slang support for cooperative vector. But this commit doesn't have Vulkan-header update.
* Fix combined sampler documentation and warning (#6207)cheneym22025-01-29
| | | | | | | | | | | * Fix combined sampler documentation and warning * Update comment, show detailed '-fvk-t-shift' message in warning instead of generic '-fvk-xxx-shift' * format code --------- Co-authored-by: slangbot <186143334+slangbot@users.noreply.github.com>
* Implement WaveMultiPrefix* for SPIRV and GLSL (#6182)Darren Wihandi2025-01-29
|
* Cache and reuse glsl module. (#6152)Yong He2025-01-22
| | | | | | | | | | | * Cache and reuse glsl module. * Fix. * Implement record/replay for the new api. * Fix record replay. * Fix test.
* Implement Quad Control intrinsics (#5981)Darren Wihandi2025-01-17
|
* Fix inaccurate documentation in member function mutability. (#6065)Entropy Lost2025-01-14
| | | | | | | | | * Fix inaccurate documentation in member function mutability. * Change throw to result in for specificity. --------- Co-authored-by: Yong He <yonghe@outlook.com>
* Initial implementation of SP#015 `DescriptorHandle<T>`. (#6028)Yong He2025-01-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Initial implementation of `ResourcePtr<T>`. * Update docs * Fix build error. * Add more discussion. * Update documentation. * Update TOC. * Fix. * Fix. * Add test case for custom `getResourceFromBindlessHandle`. * Add namehint to generated descriptor heap param. * Fix. * Fix. * format code * Rename to `DescriptorHandle`, and add `T.Handle` alias. * Fix compiler error. * Fix. * Fix build. * Renames. * Fix documentation. * Documentation fix. --------- Co-authored-by: slangbot <186143334+slangbot@users.noreply.github.com>
* Fix tiny typos (#5944)Yuki Nishidate2024-12-28
|
* Add base vertex and base instance system values (#5918)Darren Wihandi2024-12-19
| | | | | * Add base vertex and base instance system values * Fixed incorrect stage in tests
* Support explicit `[vk::location(n)]` binding on metal/wgsl. (#5907)Yong He2024-12-18
|
* Update 09-reflection.md (#5886)Yong He2024-12-17
|
* Update reflection API chapter in User Guide (#5868)Theresa Foley2024-12-13
| | | | | | | | | | | * Update reflection API chapter in User guide The new version of the chapter is intended to accompany the `reflection-api` example program, and reflects (pun intended) the best practices that the Slang project team wants to encourage for interacting with the reflection API. * Rebuild TOCs
* Add SV_DrawIndex. (#5787)Yong He2024-12-09
| | | Co-authored-by: Ellie Hermaszewska <ellieh@nvidia.com>
* Support specialization constant on WGSL and Metal. (#5780)Yong He2024-12-06
|
* Implement explciit binding for metal and wgsl. (#5778)Yong He2024-12-06
| | | | | | | | | | | | | | | * Respect explicit bindings in wgsl emit. * Implement explciit binding generation for metal and wgsl. * Update toc. * Fix warnings in tests. * Fix tests. --------- Co-authored-by: Ellie Hermaszewska <ellieh@nvidia.com>
* Conform non-suffixed integer literals (#5717)Darren Wihandi2024-12-03
| | | | | | | | | | | | | | | | | | | | | * Make non-suffixed integer literal type resolution conform to C * Update integer literal tests * Clean up integer literal implementation a bit * Update docs on integer literals * Clean up docs update * Clean up docs update * Add comment on INT64_MIN edge case * Fixed failing test, fixed formatting and cleaned up code --------- Co-authored-by: Yong He <yonghe@outlook.com>
* [Docs] Fix dead links when subsection title have underscore (#5662)Ica2024-12-02
| | | | | | | | | | | | | | * [Docs] Fix dead links when subsection title have underscore a minor change on build toc script: add underscore to link instead of replacing with "-" then I re-run the script also I tested on local server * Update toc.html --------- Co-authored-by: Ellie Hermaszewska <ellieh@nvidia.com> Co-authored-by: Yong He <yonghe@outlook.com>
* Add WebGPU target doc (#5708)Anders Leino2024-12-02
| | | | | | | * Add WebGPU target doc This closes #5698. * Update ToC
* [Docs] Minor fixes to auto-diff documentation (#5621)Sai Praveen Bangaru2024-12-01
| | | | | | | | | | | | * Minor fixes to AD documentation * Add a note warning about experimental behavior * Update vulkan --------- Co-authored-by: Ellie Hermaszewska <ellieh@nvidia.com> Co-authored-by: Yong He <yonghe@outlook.com>
* Fix markdown mistakes on user guide (#5672)Jay Kwak2024-11-29
| | | | | | | | | | | | | | | * Fix markdown typos * Fix indentation * Fix indentation 2 * Fix indentation 3 * Fix indentation more --------- Co-authored-by: Ellie Hermaszewska <ellieh@nvidia.com>
* docs: Reduce typo count (#5671)Bruce Mitchener2024-11-29
| | | Co-authored-by: Ellie Hermaszewska <ellieh@nvidia.com>
* Document the restrictions for vector size (#5673)Jay Kwak2024-11-26
| | | Added a note to clarify that vector types cannot have size bigger than 4.
* Fix broken link in 09-reflection.md (#5655)Elie Michel2024-11-25
| | | | | | | | | * Fix broken link in 09-reflection.md * Fix another link on 08-compiling.md --------- Co-authored-by: Ellie Hermaszewska <ellieh@nvidia.com>
* [Docs] Re-run build_toc and fix dead links (#5647)Ica2024-11-25
| | | | | | | | | * re-run build_toc.ps1 * fix dead link of readme --------- Co-authored-by: Ellie Hermaszewska <ellieh@nvidia.com>
* Fixed type (#5639)KoT2024-11-22
| | | | | vec3x4 to mat3x4 Co-authored-by: Yong He <yonghe@outlook.com>
* [Docs] fix spirv dead links on toc.html (#5638)Ica2024-11-22
| | | | | I believe this will fix the dead links that occurred because of sub section renames. Co-authored-by: Yong He <yonghe@outlook.com>
* [Docs] Optional<T> - fix small typo on example (#5637)Ica2024-11-21
| | | Co-authored-by: Yong He <yonghe@outlook.com>
* [Docs] Extensions - better wording for c# equivalent (#5636)Ica2024-11-21
| | | | | slang extensions look pretty same c# extension methods, not partial classes. Partial classes allow extending types to introduce more variables unlike slang extensions. Also c# users that use extension methods much more than partial types, probably. Co-authored-by: Yong He <yonghe@outlook.com>
* Add datalayout for constant buffers. (#5608)Yong He2024-11-21
| | | | | | | | | | | | | | | | | | | * Add datalayout for constant buffers. * Fixes. * Fix test. * Fix glsl codegen. * Update spirv-specific doc. * Fix test. * Fix binding in the presense of specialization constants. * address comments. * Add a test for constant buffer layout.
* Add description on write-only textures in wgsl doc.Yong He2024-11-20
|
* Small docs corrections (#5615)Ellie Hermaszewska2024-11-20
| | | | | | | | | * Small docs corrections * fix typo. --------- Co-authored-by: Yong He <yonghe@outlook.com>