Originally posted by bridgman
View Post
Vulkan 1.0.9 Specification Released
Collapse
X
-
-
-
Originally posted by justmy2cents View Post
well, i mostly know IR from .Net and other languages. and not one does it ever implement optimization on IR level. it just doesn't make sense since beside basic, there is not even a remote guarantee same optimization would perform well everywhere. this is always left to last stage.
whole generic IR optimizations are more or less same pipe dream.
I must admit this whole Vulkan rigmarole is quite above my head right now, I dream of the day I may have drivers available on my machine so that I can start tinkering around...
Leave a comment:
-
-
Originally posted by bridgman View Post
One of the "wouldn't it be nice if..." goals that resurfaces every few years (and with every new stack) is the idea of producing highly optimized IR that can be easily turned into optimized ISA without requiring a full-blown shader compiler. I don't think it's ever worked out particularly well but that seems to be what the first discussion link seems to want.
The problem is that the original poster seems to be telling people that "optimized SPIR-V" is the only way to improve shader performance on the current Vulkan implementations, which I think is just plain wrong but my compiler-fu is pretty weak. What I don't like is the way the overall perception seems to be going:
- Anandtech benchmarks day-one Vulkan implementations with Talos, finds what one developer interpreted as shader performance problems
- other people then started saying "we need optimized SPIR-V, are you doing X ?" (where X doesn't really make sense), LunarG says "no" to generating SPIR-V as the output from LunarGLASS because it doesn't really make sense (LunarGLASS is about producing optimized ISA via a HW-architecture-optimized lower level IR).
- game developers see this discussion and think "gee maybe I should use DX12 and only run on Windows 10"
- nobody seems to be noticing that even a week or two after NDA lift the drivers are improving significantly
What bothers me is that all the discussions seem to be incredibly fact-free, and are all based on first-day drivers and a partially ported game. I doubt the guys who ported Talos to Vulkan were expecting that their initial "get it lighting up" porting step, tested with day-one drivers, would become the foundation of the whole world's perception fo Vulkan.
whole generic IR optimizations are more or less same pipe dream.
what bothers you... bothers more or less everyone who even a little thought about the problemsand as i already said in one of my posts, the original poster lacks facts and cites all the wrong things
Leave a comment:
-
-
Originally posted by justmy2cents View Postwouldn't it be just wrong the other way? some basic things like removing dead code could maybe belong in SPIR-V. but, the rest vendors know best. then again, what is the worth of implementing just few? to throw marketing smoke grenade?
The problem is that the original poster seems to be telling people that "optimized SPIR-V" is the only way to improve shader performance on the current Vulkan implementations, which I think is just plain wrong but my compiler-fu is pretty weak. What I don't like is the way the overall perception seems to be going:
- Anandtech benchmarks day-one Vulkan implementations with Talos, finds what one developer interpreted as shader performance problems
- other people then started saying "we need optimized SPIR-V, are you doing X ?" (where X doesn't really make sense), LunarG says "no" to generating SPIR-V as the output from LunarGLASS because it doesn't really make sense (LunarGLASS is about producing optimized ISA via a HW-architecture-optimized lower level IR).
- game developers see this discussion and think "gee maybe I should use DX12 and only run on Windows 10"
- nobody seems to be noticing that even a week or two after NDA lift the drivers are improving significantly
What bothers me is that all the discussions seem to be incredibly fact-free, and are all based on first-day drivers and a partially ported game. I doubt the guys who ported Talos to Vulkan were expecting that their initial "get it lighting up" porting step, tested with day-one drivers, would become the foundation of the whole world's perception fo Vulkan.Last edited by bridgman; 09 April 2016, 12:08 AM.
Leave a comment:
-
-
Originally posted by bridgman View PostThanks all. Yeah, the discussion there seemed a bit off. My understanding was that SPIR-V was supposed to be a "communication" IR that would be fed into implementation-specific optimizing shader compilers, not something that should be optimized at SPIR-V level.
Also isn't LunarGLASS supposed to be handling the IR-to-ISA part of the compiler chain, not the GLSL/HLSL-to-SPIR-V part ?
Leave a comment:
-
-
Originally posted by theriddick View PostI hear the Shader performance with Vulkan is %30-40 slower then DX12 and not easy to program for. I do hope they address those issues at some point.
this only tackles specific performance claims in beta drivers. if you look at DX12 previews you'll see way worse things. and to make it even dumber, he cites anandtech as reference by completely ignoring original source where CroTeam says they are working with IHVs to find the problem
not easy to program with is another bs
- it is just as easy as DX12 since they share more or less all concepts. but, as any low level API you need to know what you're doing
- if is much harder than basic OpenGL. only problem is that all those easy paths are long since deprecated and called slow paths. once you start dealing with VBO,IBO... OpenGL becomes much more complex and less understandable and as far as AZDO and later additions go, this explains it really well https://youtu.be/xXyZ4YaktyU?t=9164 . In modern GL drawing triangle is not few lines of code anymore as it was with glBegin/glVertex3f/glVertex3f/glVertex3f/glEnd
- DX11 is more or less just as complex as OpenGL, but what DX has it going for is no driver clusterfuck. in OpenGL drivers perform randomly across vendors
update: also,
- original comment from where all this started
http://steamcommunity.com/app/257510...48158145024457
anyways, just look how benchmarks keep improving from that post. also, if you notice at that time developers comment on benchmarking high resolutions was "just don't" in that original post. now check what phoronix benchmark was runningLast edited by justmy2cents; 08 April 2016, 11:11 PM.
Leave a comment:
-
-
Thanks all. Yeah, the discussion there seemed a bit off. My understanding was that SPIR-V was supposed to be a "communication" IR that would be fed into implementation-specific optimizing shader compilers, not something that should be optimized at SPIR-V level.
Also isn't LunarGLASS supposed to be handling the IR-to-ISA part of the compiler chain, not the GLSL/HLSL-to-SPIR-V part ?Last edited by bridgman; 08 April 2016, 10:46 PM.
Leave a comment:
-
-
Originally posted by bridgman View PostWhere are you hearing this ?
Not disagreeing necessarily, but "Vulkan's" shader performance isn't likely to be slower (ie something about the spec that inherently makes compiled shader code run that much more slowly), just "a specific Vulkan implementation's" performance.
The dev there seems to be making some assumptions that I'm not sure are necessarily correct - namely, pointing to the Talos Principle benchmarks and claiming that the reason it's 30% slower than DX12 is clearly because of the shader compiler not being good enough. And then later points to this bug and says that they don't have a way to generate optimized spir-v shaders, which is a problem: https://github.com/LunarG/LunarGLASS/issues/5
He seems to think that Epic, Valve, etc. will be coming up with something to optimize their own shaders but that his company isn't big enough to do so and needs something standard provided to him, and that it's missing from Vulkan.
I'm not sure how to really evaluate that - is the llvm thing in that bug what he should be using? Is he just supposed to rely entirely on the drivers to optimize it all? Is the shader issue even a problem on Talos rather than other porting issues not being done yet?
Leave a comment:
-
-
Could be some of them, think I found some comments on steam also about the issues with shader performance and coding in Vulkan. They were talking about how DX12 is allot easier to work with in that regard but perhaps they were wrong somehow.
PS. Having issues loading the forum now and again..
Leave a comment:
-
-
Originally posted by theriddick View PostI believe 'Vulkans Shader system is a mess" is the exact about words from one developer. I will try and dig it up but this was quite some time ago and will likely take me a couple days of digging to find it because like I said, not many are making Vulkan support yet.
Reddit: https://www.reddit.com/r/vulkan/comm...r_ecosystem_a/
Seems like the guy is using talos performance numbers to argue against vulkan (totally ignoring talos devs comments), which makes him look rather silly.
Leave a comment:
-
Leave a comment: