Comments (5)
I was able to reproduce the issue with the latest DXC from github.
dxcompiler.dll: 1.8 - 1.8.0.14549 (main, 0781ded87)
from slang.
We should file this bug with dxc to see if they can find out what exactly caused the slow down.
The amount of slow down seems pathological.
from slang.
I filed an issue on DXC github for the same issue.
https://github.com/microsoft/DirectXShaderCompiler/issues/6518
from slang.
I got an explanation from DXC github.
https://github.com/microsoft/DirectXShaderCompiler/issues/6512#issuecomment-2047992891
This has something to do with the fact that "inout" modifier on the global functions is "copy-in and copy-out" rather than a reference.
LLVM takes extra time to optimize it as if it was a reference.
On the other hand, "this" is a true reference for the member functions and that's why the compile time is faster.
from slang.
For now we may be able to work around the issue by doing [ForceInline] on the member methods in Slang.
from slang.
Related Issues (20)
- Document the existing auto-diff type system, semantic checking and AST synthesis methods
- Return ptr of new Object out of Slang DLL HOT 5
- Stage the CTS cases known failure for now. HOT 1
- Fix CTS tests failures.
- Breakdown the runtime cost of Slang backend passes.
- constexpr doesn't work as expected when used on a function HOT 3
- Design documentation for DXIL linking of shader-modules
- Pointer example on User Guide doesn't work HOT 5
- Incorrect inlining of generic initializers HOT 1
- Throw an error when using `[[vk::binding]]` on global shader parameters
- Wrong matrix operations in Metal? HOT 6
- How to import modules :) HOT 1
- support for opengl HOT 4
- Investigate why the compiler warning level 4 is not working as expected HOT 2
- Shader reflection API issues HOT 2
- Update documentation for compilation API with profile information for new targets.
- Print warning when unsigned and signed integer types used for binary operators HOT 1
- Refactor of obfuscateModuleLocs
- typealias with interface does not work as expected HOT 4
- `Sampler2D` crashes the compiler when targeting host HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from slang.